From c6e86d0c2ce507e27a3218c67a2c5f388fdcc24d Mon Sep 17 00:00:00 2001 From: Jayd-Rubies <155784127+Jayd-Rubies@users.noreply.github.com> Date: Mon, 27 May 2024 18:37:04 -0400 Subject: [PATCH] TRIPLE MOD UPDATE!?!?!?!? --- mods/aircrafts.js | 35 ++++++++++++++++ mods/jaydstuff.js | 27 ++++++++++++ mods/weapons.js | 105 +++++++++++++++++++++++++++++++++++++++++++++- 3 files changed, 165 insertions(+), 2 deletions(-) diff --git a/mods/aircrafts.js b/mods/aircrafts.js index df5bb794..5668141c 100644 --- a/mods/aircrafts.js +++ b/mods/aircrafts.js @@ -1,4 +1,5 @@ //aircrafts +elements.bomb.ignore = ["super_bomber_left","super_bomber_right"], elements.fast_bullet_left = { color: "#4c4e42", behavior: [ @@ -222,4 +223,38 @@ elements.bomber_right = { burnInto: "metal_scrap", breakInto: "metal_scrap", conduct: 1 +}, +elements.super_bomber_left = { + color: "#000000", + category: "aircrafts", + behavior: [ + "XX|XX|XX", + "M1%3 AND EX:7>fire,fire,fire,metal_scrap|XX|XX", + "M1 AND EX:7>fire,fire,fire,metal_scrap|XX|XX", + "M1%3 AND CR:bomb|CR:bomb|CR:smoke%10 AND CR:bomb", + "CR:bomb|CR:bomb|CR:bomb", + ], + ignore: "bomb", + burnTime: 1000, + burn: 40, + burnInto: "metal_scrap", + breakInto: "metal_scrap", + conduct: 1 +}, +elements.super_bomber_right = { + color: "#000000", + category: "aircrafts", + behavior: [ + "XX|XX|XX", + "XX|XX|M1%3 AND EX:7>fire,fire,fire,metal_scrap", + "XX|XX|M1 AND EX:7>fire,fire,fire,metal_scrap", + "CR:smoke%10 AND CR:bomb|CR:bomb|M1%3 AND CR:bomb", + "CR:bomb|CR:bomb|CR:bomb", + ], + ignore: "bomb", + burnTime: 1000, + burn: 40, + burnInto: "metal_scrap", + breakInto: "metal_scrap", + conduct: 1 } \ No newline at end of file diff --git a/mods/jaydstuff.js b/mods/jaydstuff.js index 4a14dabe..54cc0a71 100644 --- a/mods/jaydstuff.js +++ b/mods/jaydstuff.js @@ -632,6 +632,33 @@ elements.upquake = { maxSize: 1, cooldown: defaultCooldown, excludeRandom: true, +}, +createAtXvar = 0; +createAtYvar = 0; +create1var = ""; +elements.element_spawner = { + color: "#71797E", + onSelect: function() { + var answer1 = prompt("Please input the x value.",(createAtXvar||undefined)); + if (!answer1) {return} + createAtXvar = parseInt(answer1); + var answer2 = prompt("Please input the y value.",(createAtYvar||undefined)); + if (!answer2) {return} + createAtYvar = parseInt(answer2); + var answer3 = prompt("Please input what element should spawn.",(create1var||undefined)); + if (!answer3) {return} + create1var = answer3; + }, + tick: function(pixel) { + if (pixel.charge){ + createPixel(create1var, createAtXvar, createAtYvar); + } + doDefaults(pixel); + }, + density: 1, + conduct: 1, + state: "solid", + category: "machines" //hello nouser if you are reading this: }; }; diff --git a/mods/weapons.js b/mods/weapons.js index ef40c968..49700eef 100644 --- a/mods/weapons.js +++ b/mods/weapons.js @@ -894,5 +894,106 @@ elements.element_spawner = { conduct: 1, state: "solid", category: "machines" -} - \ No newline at end of file +}, +elements.railgun_beam_left = { + color: ["#ff0000","#ff5e00"], + tick: function(pixel) { + var y = pixel.y; + for (var x = pixel.x; x < width; x--) { + if (outOfBounds(x, y)) { + break; + } + if (isEmpty(x, y)) { + createPixel("railgun_ammo_left", x, y); + pixelMap[x][y].temp = 3500; + } + else { + if (elements[pixelMap[x][y].element].isGas) { continue } + if (elements[pixelMap[x][y].element].id === elements.railgun_beam_left.id) { break } + pixelMap[x][y].temp += 100; + pixelTempCheck(pixelMap[x][y]); + break; + } + } + deletePixel(pixel.x, pixel.y); + }, + temp: 3500, + category: "ammunition", + state: "gas", + density: 1, + excludeRandom: true, + noMix: true +}, +elements.railgun_beam_right = { + color: ["#ff0000","#ff5e00"], + tick: function(pixel) { + var y = pixel.y; + for (var x = pixel.x; x < width; x++) { + if (outOfBounds(x, y)) { + break; + } + if (isEmpty(x, y)) { + createPixel("railgun_ammo_right", x, y); + pixelMap[x][y].temp = 3500; + } + else { + if (elements[pixelMap[x][y].element].isGas) { continue } + if (elements[pixelMap[x][y].element].id === elements.railgun_beam_right.id) { break } + pixelMap[x][y].temp += 100; + pixelTempCheck(pixelMap[x][y]); + break; + } + } + deletePixel(pixel.x, pixel.y); + }, + temp: 3500, + category: "ammunition", + state: "gas", + density: 1, + excludeRandom: true, + noMix: true +}, +elements.railgun_ammo_left = { + color: ["#ff0000","#ff5e00"], + category: "ammunition", + state: "solid", + density: 1300, + tick: function(pixel) { + explodeAt(pixel.x, pixel.y, 10) + doHeat(pixel); + }, +}, +elements.railgun_ammo_right = { + color: ["#ff0000","#ff5e00"], + category: "ammunition", + state: "solid", + density: 1300, + tick: function(pixel) { + explodeAt(pixel.x, pixel.y, 10) + doHeat(pixel); + }, +}, +elements.railgun_left = { + category: "weapons", + behavior: behaviors.WALL, + behaviorOn: [ + "XX|XX|XX", + "CR:railgun_beam_left|XX|XX", + "XX|XX|XX", + ], + color: "#71797E", + conduct: 1, + hardness: 1, +}, +elements.railgun_right = { + category: "weapons", + behavior: behaviors.WALL, + behaviorOn: [ + "XX|XX|XX", + "XX|XX|CR:railgun_beam_right", + "XX|XX|XX", + ], + color: "#71797E", + conduct: 1, + hardness: 1, +} \ No newline at end of file