Update true_flashbang.js

This commit is contained in:
Nekonico 2025-03-06 21:23:20 -08:00 committed by GitHub
parent 73b98823d9
commit 2ceb926304
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 464 additions and 5 deletions

View File

@ -1,6 +1,19 @@
// by nekonico
elements.true_flashbang = {
isEven = function(num) {
if (num % 2) {
return (true)
}
else {return (false)}
}
isOdd = function(num) {
if (num % 1) {
return (true)
}
else {return (false)}
}
elements.flashy_flashbang = {
color: "#65665c",
onSelect: function() {
logMessage("Caution: If you have epilepsy or any similar vision issues, do not place this element for your own safety.");
@ -16,7 +29,8 @@ elements.true_flashbang = {
tempHigh: 1455.5,
stateHigh: "molten_steel",
excludeRandom: true,
cooldown: defaultCooldown
cooldown: defaultCooldown,
maxSize: 1,
}
elements.flashbang_flash = {
@ -36,7 +50,7 @@ elements.flashbang_flash = {
done = false;
}
}
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.05) {
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.060784314) {
deletePixel(pixel.x, pixel.y)
settings.bg = "#000000";
}
@ -57,5 +71,450 @@ elements.flashbang_flash = {
insulate: true,
hidden: true,
noMix: true,
excludeRandom: true
}
excludeRandom: true,
cooldown: defaultCooldown,
maxSize: 1,
}
elements.flashy_nuke = {
onSelect: function() {
logMessage("Caution: If you have epilepsy or any similar vision issues, do not place this element for your own safety.");
},
color: "#534636",
behavior: [
"XX|XX|XX",
"XX|XX|XX",
"M2|M1 AND EX:65>plasma,plasma,plasma,plasma,radiation,rad_steam,plasma,plasma,plasma,plasma,radiation,rad_steam,plasma,plasma,plasma,plasma,radiation,rad_steam,nuke_flash|M2",
],
category: "weapons",
state: "solid",
density: 1500,
excludeRandom: true,
cooldown: defaultCooldown,
maxSize: 1,
}
elements.nuke_flash = {
color: "#ffffff",
properties: {
delay: 60
},
tick: function(pixel) {
settings.bg = pixel.color;
let hex = Math.round(255 * pixel.alpha).toString(16);
pixel.color = `#${hex}ff${hex}` // credits to therazzler in the R74n discord for this code :3
var done = true;
if (pixel.delay) {
var delayR = pixel.delay % 1;
var delay = pixel.delay - delayR;
if (!(pixelTicks - pixel.start > (pixel.delay||1) && Math.random() < 1-delayR)) {
done = false;
}
}
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.061) {
changePixel(pixel, "nuke_overflash")
}
if (pixel.delay) {
pixel.alpha = Math.max(0,1-(pixelTicks - pixel.start)/pixel.delay)
}
doHeat(pixel);
},
category: "energy",
temp: 40,
tempLow: -270,
stateLow: ["liquid_light",null],
state: "gas",
category: "energy",
density: 0.00001,
ignoreAir: true,
insulate: true,
hidden: true,
noMix: true,
excludeRandom: true,
cooldown: defaultCooldown,
maxSize: 1,
}
elements.nuke_overflash = {
color: "#00ff00",
properties: {
delay: 40
},
tick: function(pixel) {
settings.bg = pixel.color;
let hex = Math.round(255 * pixel.alpha).toString(16);
pixel.color = `#00${hex}00` // credits to therazzler in the R74n discord for this code :3
var done = true;
if (pixel.delay) {
var delayR = pixel.delay % 1;
var delay = pixel.delay - delayR;
if (!(pixelTicks - pixel.start > (pixel.delay||1) && Math.random() < 1-delayR)) {
done = false;
}
}
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.061) {
deletePixel(pixel.x, pixel.y)
settings.bg = "#000000";
}
if (pixel.delay) {
pixel.alpha = Math.max(0,1-(pixelTicks - pixel.start)/pixel.delay)
}
doHeat(pixel);
},
category: "energy",
temp: 40,
tempLow: -270,
stateLow: ["liquid_light",null],
state: "gas",
category: "energy",
density: 0.00001,
ignoreAir: true,
insulate: true,
hidden: true,
noMix: true,
excludeRandom: true,
cooldown: defaultCooldown,
maxSize: 1,
}
elements.flashy_h_bomb = {
onSelect: function() {
logMessage("Caution: If you have epilepsy or any similar vision issues, do not place this element for your own safety.");
},
color: "#533636",
behavior: [
"XX|XX|XX",
"XX|XX|XX",
"M2|M1 AND EX:90>plasma,plasma,plasma,plasma,fire,plasma,plasma,plasma,plasma,fire,plasma,plasma,plasma,plasma,fire,h_bomb_flash|M2",
],
category: "weapons",
state: "solid",
density: 1600,
excludeRandom: true,
alias: "hydrogen bomb",
cooldown: defaultCooldown,
maxSize: 1,
}
elements.h_bomb_flash = {
color: "#ffffff",
properties: {
delay: 30
},
tick: function(pixel) {
settings.bg = pixel.color;
let hex = Math.round(255 * pixel.alpha).toString(16);
pixel.color = `#ff${hex}${hex}` // credits to therazzler in the R74n discord for this code :3
var done = true;
if (pixel.delay) {
var delayR = pixel.delay % 1;
var delay = pixel.delay - delayR;
if (!(pixelTicks - pixel.start > (pixel.delay||1) && Math.random() < 1-delayR)) {
done = false;
}
}
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.061) {
changePixel(pixel, "h_bomb_overflash")
}
if (pixel.delay) {
pixel.alpha = Math.max(0,1-(pixelTicks - pixel.start)/pixel.delay)
}
doHeat(pixel);
},
category: "energy",
temp: 40,
tempLow: -270,
stateLow: ["liquid_light",null],
state: "gas",
category: "energy",
density: 0.00001,
ignoreAir: true,
insulate: true,
hidden: true,
noMix: true,
excludeRandom: true,
cooldown: defaultCooldown,
maxSize: 1,
}
elements.h_bomb_overflash = {
color: "#ff0000",
properties: {
delay: 70
},
tick: function(pixel) {
settings.bg = pixel.color;
let hex = Math.round(255 * pixel.alpha).toString(16);
pixel.color = `#${hex}0000` // credits to therazzler in the R74n discord for this code :3
var done = true;
if (pixel.delay) {
var delayR = pixel.delay % 1;
var delay = pixel.delay - delayR;
if (!(pixelTicks - pixel.start > (pixel.delay||1) && Math.random() < 1-delayR)) {
done = false;
}
}
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.061) {
deletePixel(pixel.x, pixel.y)
settings.bg = "#000000";
}
if (pixel.delay) {
pixel.alpha = Math.max(0,1-(pixelTicks - pixel.start)/pixel.delay)
}
doHeat(pixel);
},
category: "energy",
temp: 40,
tempLow: -270,
stateLow: ["liquid_light",null],
state: "gas",
category: "energy",
density: 0.00001,
ignoreAir: true,
insulate: true,
hidden: true,
noMix: true,
excludeRandom: true,
cooldown: defaultCooldown,
maxSize: 1,
}
elements.flashy_firework = {
color: "#c44f45",
onSelect: function() {
logMessage("Caution: If you have epilepsy or any similar vision issues, do not place this element for your own safety.");
},
tick: function(pixel) {
if ((pixel.temp > 1000 || pixel.charge) && !pixel.burning) {
pixel.burning = true;
pixel.burnStart = pixelTicks;
}
if (pixel.burning) {
if (!tryMove(pixel, pixel.x, pixel.y-1)) {
// tryMove again to the top left or top right
tryMove(pixel, pixel.x+(Math.random() < 0.5 ? -1 : 1), pixel.y-1);
}
if (pixelTicks-pixel.burnStart > 50 && Math.random() < 0.1) {
if (Math.random() > 0.5) {
explodeAt(pixel.x, pixel.y, 10, "fw_flash1");
}
else if (Math.random() > 0.5) {
explodeAt(pixel.x, pixel.y, 10, "fw_flash2");
}
else if (Math.random() > 0.5) {
explodeAt(pixel.x, pixel.y, 10, "fw_flash3");
}
else {
explodeAt(pixel.x, pixel.y, 10, "fw_flash4");
}
}
}
else {
if (!tryMove(pixel, pixel.x, pixel.y+1)) {
// tryMove again to the bottom left or bottom right
tryMove(pixel, pixel.x+(Math.random() < 0.5 ? -1 : 1), pixel.y+1);
}
}
doDefaults(pixel);
},
burn: 90,
burnTime: 100,
properties: { burning:false },
burning: true,
density: 2000,
conduct: 1,
state: "solid",
category: "weapons"
}
elements.fw_flash1 = {
properties: {
delay: 5
},
color: ["#ff00ff","#00ffff"],
behavior: [
"XX|XX|XX",
"XX|DL%25|M2",
"XX|M2|M1",
],
tick: function(pixel) {
let hex = Math.round(255 * pixel.alpha).toString(16);
pixel.color = `#00${hex}${hex}`
settings.bg = pixel.color;
var done = true;
if (pixel.delay) {
var delayR = pixel.delay % 1;
var delay = pixel.delay - delayR;
if (!(pixelTicks - pixel.start > (pixel.delay||1) && Math.random() < 1-delayR)) {
done = false;
}
}
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.062) {
changePixel(pixel, "smoke")
settings.bg = "#000000";
}
if (pixel.delay) {
pixel.alpha = Math.max(0,1-(pixelTicks - pixel.start)/pixel.delay)
}
doHeat(pixel);
},
burning: true,
burnInto: "ash",
burnTime: 100,
fireElement: ["smoke","smoke","smoke","smoke","carbon_dioxide"],
rotatable: true,
temp: 649,
tempLow: 0,
stateLow: "carbon_dioxide",
category: "energy",
hidden: true,
state: "gas",
density: 700,
alias: "flashy firework ember"
}
elements.fw_flash2 = {
properties: {
delay: 5
},
color: ["#ff00ff","#00ffff"],
behavior: [
"XX|XX|XX",
"XX|DL%25|M2",
"XX|M2|M1",
],
tick: function(pixel) {
let hex = Math.round(255 * pixel.alpha).toString(16);
pixel.color = `#${hex}00${hex}`
settings.bg = pixel.color;
var done = true;
if (pixel.delay) {
var delayR = pixel.delay % 1;
var delay = pixel.delay - delayR;
if (!(pixelTicks - pixel.start > (pixel.delay||1) && Math.random() < 1-delayR)) {
done = false;
}
}
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.062) {
changePixel(pixel, "smoke")
settings.bg = "#000000";
}
if (pixel.delay) {
pixel.alpha = Math.max(0,1-(pixelTicks - pixel.start)/pixel.delay)
}
doHeat(pixel);
},
burning: true,
burnInto: "ash",
burnTime: 100,
fireElement: ["smoke","smoke","smoke","smoke","carbon_dioxide"],
rotatable: true,
temp: 649,
tempLow: 0,
stateLow: "carbon_dioxide",
category: "energy",
hidden: true,
state: "gas",
density: 700,
alias: "flashy firework ember"
}
elements.fw_flash3 = {
properties: {
delay: 5
},
color: ["#ff00ff","#00ffff"],
behavior: [
"XX|XX|XX",
"XX|DL%25|M2",
"XX|M2|M1",
],
tick: function(pixel) {
let hex = Math.round(255 * pixel.alpha).toString(16);
pixel.color = `#00${hex}00`
settings.bg = pixel.color;
var done = true;
if (pixel.delay) {
var delayR = pixel.delay % 1;
var delay = pixel.delay - delayR;
if (!(pixelTicks - pixel.start > (pixel.delay||1) && Math.random() < 1-delayR)) {
done = false;
}
}
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.062) {
changePixel(pixel, "smoke")
settings.bg = "#000000";
}
if (pixel.delay) {
pixel.alpha = Math.max(0,1-(pixelTicks - pixel.start)/pixel.delay)
}
doHeat(pixel);
},
burning: true,
burnInto: "ash",
burnTime: 100,
fireElement: ["smoke","smoke","smoke","smoke","carbon_dioxide"],
rotatable: true,
temp: 649,
tempLow: 0,
stateLow: "carbon_dioxide",
category: "energy",
hidden: true,
state: "gas",
density: 700,
alias: "flashy firework ember"
}
elements.fw_flash4 = {
properties: {
delay: 5
},
color: "#ff00ff",
behavior: [
"XX|XX|XX",
"XX|DL%25|M2",
"XX|M2|M1",
],
tick: function(pixel) {
let hex = Math.round(255 * pixel.alpha).toString(16);
pixel.color = `#0000${hex}`
settings.bg = pixel.color;
var done = true;
if (pixel.delay) {
var delayR = pixel.delay % 1;
var delay = pixel.delay - delayR;
if (!(pixelTicks - pixel.start > (pixel.delay||1) && Math.random() < 1-delayR)) {
done = false;
}
}
if ((Math.random() < 0.75 && done) || pixel.alpha < 0.062) {
changePixel(pixel, "smoke")
settings.bg = "#000000";
}
if (pixel.delay) {
pixel.alpha = Math.max(0,1-(pixelTicks - pixel.start)/pixel.delay)
}
doHeat(pixel);
},
burning: true,
burnInto: "ash",
burnTime: 100,
fireElement: ["smoke","smoke","smoke","smoke","carbon_dioxide"],
rotatable: true,
temp: 649,
tempLow: 0,
stateLow: "carbon_dioxide",
category: "energy",
hidden: true,
state: "gas",
density: 700,
alias: "flashy firework ember"
}