diff --git a/mods/rainbow_earth.js b/mods/rainbow_earth.js deleted file mode 100644 index af95827e..00000000 --- a/mods/rainbow_earth.js +++ /dev/null @@ -1,241 +0,0 @@ -var modName = "mods/nellfire.js"; -var groundMod = "mods/the_ground.js"; - -if(enabledMods.includes(groundMod)) { - - function makeRegularRainbow(steps,s,l,outputFormat="rgb") { - var hslArray = []; - var divisionSize = 360 / steps; - for(i = 0; i < 360; i += divisionSize) { - hslArray.push({h: i, s: s, l: l}); - }; - return hslArray.map(x => convertHslObjects(x,outputFormat)); - }; - - function rainbowSunColor(pixel) { - var age = pixelTicks - pixel.start; - var ss, ll; - if (pixel.temp < 0) { ss = 20; ll = 10; var c=0 } - else if (pixel.temp < 300) { ss = 20; ll = 15; var c=0 } - else if (pixel.temp < 500) { ss = 30; ll = 20; var c=0.00003 } - else if (pixel.temp < 850) { ss = 30; ll = 25; var c=0.0001 } - else if (pixel.temp < 1300) { ss = 35; ll = 30; var c=0.0004 } - else if (pixel.temp < 1800) { ss = 40; ll = 35; var c=0.001 } - else if (pixel.temp < 2100) { ss = 45; ll = 40; var c=0.0025 } - else if (pixel.temp < 2400) { ss = 50; ll = 45; var c=0.004 } - else if (pixel.temp < 3200) { ss = 55; ll = 50; var c=0.007 } - else if (pixel.temp < 3900) { ss = 65; ll = 55; var c=0.01 } - else if (pixel.temp < 4600) { ss = 70; ll = 60; var c=0.015 } - else if (pixel.temp < 6100) { ss = 75; ll = 65; var c=0.025 } - else if (pixel.temp < 7200) { ss = 85; ll = 65; var c=0.035 } - else if (pixel.temp < 8300) { ss = 95; ll = 70; var c=0.05 } - else if (pixel.temp < 10400) { ss = 100; ll = 72.5; var c=0.07 } - else if (pixel.temp < 12500) { ss = 100; ll = 75; var c=0.1 } - else if (pixel.temp < 15600) { ss = 100; ll = 77.5; var c=0.125 } - else if (pixel.temp < 18700) { ss = 100; ll = 80; var c=0.15 } - else if (pixel.temp < 21800) { ss = 100; ll = 85; var c=0.175 } - else if (pixel.temp < 28900) { ss = 100; ll = 90; var c=0.2 } - else if (pixel.temp < 36000) { ss = 100; ll = 92.5; var c=0.25 } - else if (pixel.temp < 45600) { ss = 100; ll = 94; var c=0.3 } - else if (pixel.temp < 52200) { ss = 100; ll = 96.5; var c=0.4 } - else if (pixel.temp < 58300) { ss = 100; ll = 98; var c=0.5 } - else if (pixel.temp < 63400) { ss = 100; ll = 98.5; var c=0.6 } - else if (pixel.temp < 68500) { ss = 100; ll = 98.5; var c=0.7 } - else if (pixel.temp < 73600) { ss = 100; ll = 98.5; var c=0.8 } - else { ss = 100; ll = 98.5; var c=0.9 } - - var hslJson = {h: (age) % 360, s: ss, l: ll}; - pixel.color = pixelColorPick(pixel,convertHslObjects(hslJson,"hex")); - - return c; - }; - - - elements.rainbow_sun = { - color: ["#ffbdbd", "#f2ffbd", "#bdffd7", "#bdd7ff", "#f2bdff"], - tick: function(pixel) { - starLightAndConduction(pixel,rainbowSunColor(pixel),["sun","nellsun","rainbow_sun"]) - }, - reactions: { - "hydrogen": { "elem2":"helium", "temp1":5 }, - "helium": { "elem2":"carbon_dioxide", "temp1":5, "tempMax":3600 }, - "carbon_dioxide": { "elem2":"neon", "temp1":5, "tempMax":1800 }, - }, - temp: 5700, - tempLow: -100, - stateLow: "supernova", - category: "special", - state: "gas", - //density: 1408, - insulate: true, - nellfireImmune: true, - }; - - elements.rainbow_fire = { - color: [ - {h: 330, s: 100, l: 56}, - {h: 0, s: 100, l: 59}, - {h: 22, s: 100, l: 58}, - {h: 42, s: 100, l: 57}, - {h: 60, s: 100, l: 55}, - {h: 73, s: 100, l: 49}, - {h: 120, s: 100, l: 49.5}, - {h: 159, s: 100, l: 52}, - {h: 159, s: 100, l: 52}, - {h: 180, s: 100, l: 49.5}, - {h: 197, s: 100, l: 59}, - {h: 240, s: 100, l: 58.5}, - {h: 280, s: 94, l: 53}, - {h: 307, s: 100, l: 55} - ].map(x => convertHslObjects(x,"hex")), - behavior: behaviors.UL_UR, - reactions: { - "fire": { "elem1": "rainbow_fire" }, - "water": { "elem1": "color_smoke" }, - "steam": { "elem1": "color_smoke" }, - "carbon_dioxide": { "elem1": "color_smoke" }, - "dirty_water": { "elem1": "color_smoke" }, - "salt_water": { "elem1": "color_smoke" }, - "sugar_water": { "elem1": "color_smoke" }, - }, - nellfireImmune: true, - fireSpawnChance: 0, - temp:610, - tempLow:102, - stateLow: "color_smoke", - tempHigh: 7000, - stateHigh: "plasma", - category: "energy", - burning: true, - burnTime: 44, - burnInto: "color_smoke", - state: "gas", - density: 0.21, - ignoreAir: true, - noMix: true, - }; - - elements.color_smoke.tempHigh = 610; - elements.color_smoke.stateHigh = "rainbow_fire"; - - elements.rainbow_glass = { - color: makeRegularRainbow(12,100,70,"hex"), - behavior: behaviors.WALL, - tempHigh: 1765, - category: "solids", - state: "solid", - density: 2711, - breakInto: "rainbow_glass_shard", - noMix: true, - nellfireImmune: true, - }; - - elements.rainbow_glass_shard = { - color: makeRegularRainbow(18,70,65,"hex"), - behavior: behaviors.POWDER, - tempHigh: 1784, - stateHigh: "molten_rainbow_glass", - category: "powders", - state: "solid", - density: 2213, - nellfireImmune: true, - }; - - elements.rainbow_sand = { - color: makeRegularRainbow(7,100,94,"hex").concat("#fbfbfb"), - behavior: behaviors.POWDER, - tempHigh: 1731, - stateHigh: "molten_rainbow_glass", - category: "land", - state: "solid", - density: 1733, - _data: ["rainbow_sand_material","rainbow_sand_material","particulate"], - nellfireImmune: true, - }; - - runAfterLoad(function() { - elements.water.reactions.rainbow_sand = { elem1: null, elem2: "wet_rainbow_sand" }; - elements.water.reactions.wet_rainbow_sand = { "elem1": "rainbow_sand_water", "elem2": [ "rainbow_sand", "rainbow_sand", "rainbow_sand", "rainbow_sand_water" ], "chance": 0.01 }; - }); - - elements.wet_rainbow_sand = { - color: makeRegularRainbow(7,100,84,"hex").concat("#e0e0e0"), - behavior: behaviors.STURDYPOWDER, - category: "land", - reactions: { - "dirt": { "elem1":"sand", "elem2":"mud", "chance":0.0005, "oneway":true }, - }, - state: "solid", - tempHigh: 100, - stateHigh: "packed_rainbow_sand", - tempLow: -50, - stateLow:"packed_rainbow_sand", - density: 1733 * 0.595 + 150, - _data: ["rainbow_sand_material","rainbow_sand_material","wet_particulate"], - nellfireImmune: true, - }; - - elements.packed_rainbow_sand = { - color: makeRegularRainbow(7,70,86,"hex").concat("#dbdbdb"), - behavior: behaviors.SUPPORT, - category: "land", - state: "solid", - tempHigh: 1731, - stateHigh: "rainbow_glass", - density: 1733 * 0.59, - breakInto: "rainbow_sand", - _data: ["rainbow_sand_material","rainbow_sand_material","packed_particulate"], - nellfireImmune: true, - }; - - makeNonSandSedimentationElements("rainbow_sand","rainbow_sand_water","rainbow_sandstone"); - - elements.rainbow_sandstone.color = makeRegularRainbow(14,90,71,"hex").concat("#b5b5b5"); - - var immunes = ["rainbow_sand_water", "rainbow_sand_sediment", "rainbow_sandstone", "phirite", "solid_phirite", "phirite_gravel", "aphirite", "solid_aphirite", "phirite_sand", "wet_phirite_sand", "packed_phirite_sand", "aphirite_gravel", "aphirite_sand", "wet_aphirite_sand", "packed_aphirite_sand", "vesirite", "solid_vesirite", "vesirite_gravel", "vesirite_sand", "wet_vesirite_sand", "packed_vesirite_sand", "vitirite", "solid_vitirite", "vitirite_shard", "vitirite_sand", "wet_vitirite_sand", "packed_vitirite_sand", "rainbow_magma", "vaporized_rainbow_magma", "rainbow_magma_cloud", "phirite_sandy_water", "phirite_sand_sediment", "phirite_sandstone", "aphirite_sandy_water", "aphirite_sand_sediment", "aphirite_sandstone", "vesirite_sandy_water", "vesirite_sand_sediment", "vesirite_sandstone", "vitirite_sandy_water", "vitirite_sand_sediment", "vitirite_sandstone", "phirite_dust", "aphirite_dust", "vesirite_dust", "vitirite_dust" ]; - - runAfterLoad(function() { - for(i = 0; i < immunes.length; i++) { - if(!elements[immunes[i]]) { - console.error(immunes[i]); - continue; - } - elements[immunes[i]].nellfireImmune = true; - }; - }); - -newIgneousCompositionFamily( - "rainbow", - 133487, - 5512, - -71, - -17, - 4555, - - "phirite", - makeRegularRainbow(6,70,45,"hex"), - 1671, - 4004, - - "aphirite", - makeRegularRainbow(24,63,75,"hex").concat("#bfbfbf"), - 1685, - 3951, - - "vesirite", - makeRegularRainbow(13,55,80,"hex").concat(makeRegularRainbow(13,45,50,"hex")), - 1712, - 2918, - - "vitirite", - makeRegularRainbow(30,70,35,"hex").concat("#595959"), - 2054, - 3741, - - 3,7 - ); -} else { - enabledMods.splice(enabledMods.indexOf(modName),0,groundMod); - localStorage.setItem("enabledMods", JSON.stringify(enabledMods)); - alert(`The ${groundMod} mod is required and has been automatically inserted (reload for this to take effect).`); -};