Merge pull request #996 from SquareScreamYT/main
This commit is contained in:
commit
aaa8ffaffc
|
|
@ -378,6 +378,7 @@
|
|||
<tr><td>Shroomboxels.js</td><td>A variant of acid_and_shapes.js that uses a different trigonometric function</td><td>Alice</td></tr>
|
||||
<tr><td>singleColor.js</td><td>Makes all elements pick one color each time they're drawn</td><td>stefanblox</td></tr>
|
||||
<tr><td>sky.js</td><td>Adds a day-night cycle</td><td>RedBirdly</td></tr>
|
||||
<tr><td>solidcolor.js</td><td>Makes all placed pixels have a solid color (clone of onecolor.js)</td><td>SquareScreamYT</td></tr>
|
||||
<tr><td>texture_pack_by_jayd.js</td><td>Adds a cool background</td><td>Jayd</td></tr>
|
||||
<tr><td>UwUify.js</td><td>Adds an "UwU" background</td><td>Jayd</td></tr>
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,146 @@
|
|||
// all credits to nousernamefound for onecolor.js
|
||||
|
||||
window.addEventListener('load', function() {
|
||||
console.log("attempted override");
|
||||
|
||||
pixelColorPick = function(pixel, customColor = null) {
|
||||
var element = pixel.element;
|
||||
var elementInfo = elements[element];
|
||||
|
||||
if (pixel.charge && elementInfo.colorOn) {
|
||||
customColor = elementInfo.colorOn;
|
||||
}
|
||||
|
||||
if (customColor != null) {
|
||||
if (Array.isArray(customColor)) {
|
||||
customColor = customColor[Math.floor(Math.random() * customColor.length)];
|
||||
}
|
||||
if (customColor.startsWith("#")) {
|
||||
customColor = hexToRGB(customColor);
|
||||
}
|
||||
var rgb = customColor;
|
||||
} else {
|
||||
var rgb = elements[element].colorObject;
|
||||
if (Array.isArray(rgb)) {
|
||||
rgb = rgb[Math.floor(Math.random() * rgb.length)];
|
||||
}
|
||||
}
|
||||
|
||||
var coloroffset = Math.floor(Math.random() * (Math.random() > 0.5 ? -1 : 1) * Math.random() * 15);
|
||||
var r = rgb.r + 0;
|
||||
var g = rgb.g + 0;
|
||||
var b = rgb.b + 0;
|
||||
|
||||
r = Math.max(0, Math.min(255, r));
|
||||
g = Math.max(0, Math.min(255, g));
|
||||
b = Math.max(0, Math.min(255, b));
|
||||
|
||||
var color = "rgb(" + r + "," + g + "," + b + ")";
|
||||
return color;
|
||||
}
|
||||
|
||||
pixelTempCheck = function(pixel) {
|
||||
if (pixel.del) { return }
|
||||
var elementInfo = elements[pixel.element];
|
||||
if (pixel.temp < absoluteZero) {
|
||||
pixel.temp = absoluteZero;
|
||||
}
|
||||
|
||||
if (pixel.temp >= elementInfo.tempHigh) {
|
||||
var result = elementInfo.stateHigh;
|
||||
if (elementInfo.extraTempHigh) {
|
||||
for (var extraTemp in elementInfo.extraTempHigh) {
|
||||
if (pixel.temp >= extraTemp) {
|
||||
result = elementInfo.extraTempHigh[extraTemp];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (Array.isArray(result)) {
|
||||
result = result[Math.floor(Math.random() * result.length)];
|
||||
}
|
||||
if (result === null) {
|
||||
deletePixel(pixel.x, pixel.y);
|
||||
return false;
|
||||
} else {
|
||||
if (elements[result].customColor) {
|
||||
changePixel(pixel, result, false);
|
||||
pixel.color = color;
|
||||
} else if (elementInfo.stateHighColor) {
|
||||
changePixel(pixel, result, false);
|
||||
pixel.color = pixelColorPick(pixel, elementInfo.stateHighColor);
|
||||
} else if (elementInfo.stateHighColorMultiplier) {
|
||||
var color = pixel.color;
|
||||
changePixel(pixel, result, false);
|
||||
var rgb = color.match(/\d+/g);
|
||||
var m = elementInfo.stateHighColorMultiplier;
|
||||
if (Array.isArray(m)) {
|
||||
m = m[0];
|
||||
}
|
||||
var r = Math.floor(rgb[0] * m);
|
||||
var g = Math.floor(rgb[1] * m);
|
||||
var b = Math.floor(rgb[2] * m);
|
||||
|
||||
r = Math.max(0, Math.min(255, r));
|
||||
g = Math.max(0, Math.min(255, g));
|
||||
b = Math.max(0, Math.min(255, b));
|
||||
|
||||
pixel.color = "rgb(" + r + "," + g + "," + b + ")";
|
||||
} else {
|
||||
changePixel(pixel, result, false);
|
||||
}
|
||||
|
||||
if (elementInfo.fireColor && result === "fire") {
|
||||
pixel.color = pixelColorPick(pixel, elementInfo.fireColor);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
else if (pixel.temp <= elementInfo.tempLow) {
|
||||
var result = elementInfo.stateLow;
|
||||
if (elementInfo.extraTempLow) {
|
||||
for (var extraTemp in elementInfo.extraTempLow) {
|
||||
if (pixel.temp <= extraTemp) {
|
||||
result = elementInfo.extraTempLow[extraTemp];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (Array.isArray(result)) {
|
||||
result = result[Math.floor(Math.random() * result.length)];
|
||||
}
|
||||
if (result === null) {
|
||||
deletePixel(pixel.x, pixel.y);
|
||||
return false;
|
||||
} else {
|
||||
if (elements[result].customColor) {
|
||||
changePixel(pixel, result, false);
|
||||
pixel.color = color;
|
||||
} else if (elementInfo.stateLowColor) {
|
||||
changePixel(pixel, result, false);
|
||||
pixel.color = pixelColorPick(pixel, elementInfo.stateLowColor);
|
||||
} else if (elementInfo.stateLowColorMultiplier) {
|
||||
var color = pixel.color;
|
||||
changePixel(pixel, result, false);
|
||||
var rgb = color.match(/\d+/g);
|
||||
var m = elementInfo.stateLowColorMultiplier;
|
||||
if (Array.isArray(m)) {
|
||||
m = m[0];
|
||||
}
|
||||
var r = Math.floor(rgb[0] * m);
|
||||
var g = Math.floor(rgb[1] * m);
|
||||
var b = Math.floor(rgb[2] * m);
|
||||
|
||||
r = Math.max(0, Math.min(255, r));
|
||||
g = Math.max(0, Math.min(255, g));
|
||||
b = Math.max(0, Math.min(255, b));
|
||||
|
||||
pixel.color = "rgb(" + r + "," + g + "," + b + ")";
|
||||
} else {
|
||||
changePixel(pixel, result, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
});
|
||||
Loading…
Reference in New Issue