From 871f80403a3040f8da8b2ab1d0b5c7749b353510 Mon Sep 17 00:00:00 2001 From: feeshmaster <125420779+feeshmaster@users.noreply.github.com> Date: Tue, 21 Nov 2023 14:36:04 -0600 Subject: [PATCH 01/10] Create debugRework.js --- mods/debugRework.js | 169 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 169 insertions(+) create mode 100644 mods/debugRework.js diff --git a/mods/debugRework.js b/mods/debugRework.js new file mode 100644 index 00000000..5350917f --- /dev/null +++ b/mods/debugRework.js @@ -0,0 +1,169 @@ +let cssForDebug = ` +#debugParent { + display: none; +} + +#debugXButton { + position: absolute; + right: 0px; + top: 0px; + font-size: 2em; + background-color: rgb(100, 33, 33); + padding:5px; + text-align:center; + border: 1px solid #ffffff; + z-index: 12; +} +#debugXButton:hover { + background-color: rgb(200, 33, 33); +} + +#debugMenuTitle { + position: absolute; + left: 175px; + font-size: 1.5em; + text-decoration: underline; + color: white; +} +#debugStats { + margin-top: 5px; + line-height: 1.5em; + color: white; +} + +#debugLiveButton { + position: absolute; + left: 0px; + top: 0px; + font-size: 2em; + background-color: rgb(100, 33, 33); + padding:5px; + text-align:center; + border: 1px solid #ffffff; + z-index: 12; +} + + + +#debugLiveButton.live { + background-color: #24fc03; +} + +#debugLiveButton.live:hover { + background-color: #50ff36; +} + +#debugStatList { + position: absolute; + border: 1px solid #ffffff; + left: 50%; + top: 5%; + transform: translate(-50%, 0%); + width: 95%; + height: 50%; + max-width: 700px; + padding: 10px; + background-color: rgb(31, 31, 31); + overflow-x: hidden; + z-index: 10; +} +`, + head = document.head || document.getElementsByTagName('head')[0], + style = document.createElement('style'); + +head.appendChild(style); + +style.type = 'text/css'; +if (style.styleSheet) { + style.styleSheet.cssText = cssForDebug; +} else { + style.appendChild(document.createTextNode(cssForDebug)); +}; +let debugMenu = document.createElement("div"); +debugMenu.innerHTML = ` +
` +document.getElementById("gameDiv").appendChild(debugMenu); +var statChangeInterval; +let live = false; +let openedByClick = true; +let debugToggle = false; +var output; +var targetedPixel; +elements.debug = { + color: ["#b150d4", "#d1b74f"], + tool: function(pixel) { + startDebugUi(pixel); + }, + maxSize: 1, + category: "tools" +} + +function startDebugUi(pixel) { + if (debugToggle) return; + targetedPixel = pixel; + mouseIsDown = false; + shiftDown = false; + output = targetedPixel.element.toUpperCase() + " at x" + targetedPixel.x + ", y" + targetedPixel.y + ", tick: " + pixelTicks + `There are " + elementCount + " elements, including " + hiddenCount + " hidden ones.
©2021-" + new Date().getFullYear() + ". All Rights Reserved. R74n
"; //update extra info counts (and the copyright year, due to the method used) + } + else if(!elements[name].mixture) + { + elements[name].mixture = elementList; + let tick = elements[name].tick; + if(!elements[name].reactions) + { + elements[name].reactions = {}; + } + elements[name].tick = function(pixel) { + checkReactions(pixel, elements[pixel.element].mixture); + if(typeof tick === "function") + { + tick(pixel); + } + } + } + return name; +} + +function checkReactions(pixel, elementList) +{ + for (let i = -1; i <= 1; i++) + { + for (let j = -1; j <= 1; j++) + { + if (!(i === 0 && j === 0) && !isEmpty(pixel.x+i,pixel.y+j,true) + && !elements[pixel.element].reactions[pixelMap[pixel.x+i][pixel.y+j].element]) + { + let otherElement = pixelMap[pixel.x+i][pixel.y+j].element; + let otherList = [otherElement]; + if(elements[otherElement].mixture) + { + otherList = elements[otherElement].mixture; + } + let list = elements[pixel.element]; + if(compatableMix(elements[pixel.element].mixture,otherList)) + { + elements[pixel.element].reactions[otherElement] = {elem1: mixture(elements[pixel.element].mixture.concat(otherList)),elem2:null};; + } + else + { + elements[pixel.element].reactions[otherElement] = {}; + } + } + } + } +} + +function mixtureBehavior(pixel, elementList) +{ + let gasesOk = gasOk(elementList); + let gases = elementList.filter((c) => elements[c].state === "gas"); + if(!gasesOk) + { + let neighbors = [ [-1,0], [1,0], [0,-1], [0,1] ] + let randomNeighbor = neighbors[Math.floor(Math.random() * neighbors.length)] + let randomGas = gases[Math.floor(Math.random() * gases.length)] + let rnx = randomNeighbor[0]; + let rny = randomNeighbor[1]; + if(isEmpty(pixel.x+rnx, pixel.y+rny, false)) { + let index = elementList.indexOf(randomGas); + if (index > -1) { + createPixel(randomGas, pixel.x+rnx, pixel.y+rny); + currentPixels[currentPixels.length-1].temp = pixel.temp; + changePixel(pixel, mixture(elementList.slice(0, index).concat(elementList.slice(index+1)))); + return; + } + } + behaviors.GAS(pixel); + return; + } + let states = elementList.map((c) => elements[c].state); + if(elementList.some((c) => c.includes("molten")) || elementList.some((c) => c.includes("magma"))) + { + pixelTick(pixel,behaviors.MOLTEN); + } + else if(!elements[pixel.element].movable) + { + return; + } + else if(states.includes("liquid")) + { + if(elementList.includes("carbon_dioxide")) + { + pixelTick(pixel,elements.soda.behavior); + } + else + { + behaviors.LIQUID(pixel); + } + } + else + { + behaviors.POWDER(pixel); + } +} + +function toObject(color) +{ + color = color.match(/\d+/g); + return { + r: parseInt(color[0]), + g: parseInt(color[1]), + b: parseInt(color[2]) + }; +} + +function averageRGB2(colors) +{ + return toObject(averageRGB(colors.map((d) => (toObject(d))))); +} + +function averageRGB(rgblist) { + var r = 0; + var g = 0; + var b = 0; + for (var i = 0; i < rgblist.length; i++) { + var rgb = rgblist[i]; + r += parseInt(rgb.r); + g += parseInt(rgb.g); + b += parseInt(rgb.b); + } + r = Math.floor(r/rgblist.length); + g = Math.floor(g/rgblist.length); + b = Math.floor(b/rgblist.length); + return "rgb("+r+","+g+","+b+")"; +} + + +function blendColors(colorA, colorB, amount = 0.5) { + const [rA, gA, bA] = colorA.match(/\w\w/g).map((c) => parseInt(c, 16)); + const [rB, gB, bB] = colorB.match(/\w\w/g).map((c) => parseInt(c, 16)); + const r = Math.round(rA + (rB - rA) * amount).toString(16).padStart(2, '0'); + const g = Math.round(gA + (gB - gA) * amount).toString(16).padStart(2, '0'); + const b = Math.round(bA + (bB - bA) * amount).toString(16).padStart(2, '0'); + return '#' + r + g + b; +} + +let mixtureGroups = []; + +function compatableMix(list1,list2) +{ + if(!gasOk(list1.concat(list2))) + { + return false; + } + for(let i = 0; i < mixtureGroups.length; i++) + { + if(list1.concat(list2).every(val => mixtureGroups[i].includes(val) + && list1.concat(list2).filter(el => el === val).length + <= + mixtureGroups[i].filter(el => el === val).length + )) + { + return true; + } + } + return false; +} + +function mixture2(elementList) +{ + mixtureGroups.push(elementList); + for(let i = 0; i < elementList.length; i++) + { + for(let j = i+1; j < elementList.length; j++) + { + if(compatableMix([elementList[i]],[elementList[j]])) + { + if(!elements[elementList[i]].reactions) + { + elements[elementList[i]].reactions = {}; + } + elements[elementList[i]].reactions[elementList[j]] = {elem1: mixture([elementList[i],elementList[j]]),elem2:null}; + } + } + } + mixture3(elementList,[],0); +} + +function mixture3(elementList, list, n) +{ + if(list.length > 0) + { + mixture(list); + } + if(n < elementList.length) + { + mixture3(elementList,list,n+1); + if(compatableMix(list,[elementList[n]])) + { + mixture3(elementList,list.concat([elementList[n]]),n+1); + } + } +} + + +//exceptions to releasing gas +function gasOk(elementList) +{ + let gases = elementList.filter((c) => elements[c].state === "gas"); + if(elementList.includes("water") || elementList.includes("ice")) + { + gases = gases.filter((c) => c !== "carbon_dioxide"); + } + return gases.length <= 0; +} + +//exceptions to mixtures +function isValidMixture(elementList) +{ + if(elementList.includes("dry_ice")) + { + return false; + } + return true; +} + +if(enabledMods.includes(runAfterAutogenMod)){ +whenAvailable(["runAfterAutogen"], function() { + runAfterAutogen(function() { + mixture2(["water","blood"]); + mixture2(["water","cough_drugs","cellulose_gum","carbon_dioxide","sugar","milk"]); + + }); +}); +} + + +predefinedColors = [ + ["#8f19c2",["sugar","carbon_dioxide","cough_drugs","water","cellulose_gum"]], + ["#ab1efc",["sugar","carbon_dioxide","cough_drugs","ice","cellulose_gum"]], + ["#a527db",["sugar","carbon_dioxide","cough_drugs","water"]], + ["#c62eff",["sugar","carbon_dioxide","cough_drugs","ice"]], + ["#422016",["sugar","carbon_dioxide","water"]], + ["#4f261c",["sugar","carbon_dioxide","ice"]], + ["#e9cba3",["sugar","carbon_dioxide","water","milk"]], + ["#fff3d3",["sugar","carbon_dioxide","ice","milk"]], +] + +/* +var c = elements.lean.colorObject; +for (var j = 0; j < autoElements.frozen.rgb.length; j++) { + var newc = autoElements.frozen.rgb[j]; + r = Math.floor(c.r * newc[0]); + g = Math.floor(c.g * newc[1]); + b = Math.floor(c.b * newc[2]); + if (r > 255) {r = 255;} if (g > 255) {g = 255;} if (b > 255) {b = 255;} + alert(RGBToHex({r:r,g:g,b:b})); + }*/ + +nameList = {}; + +nameList[["blood","water"].sort().join()] = "bloody_water"; +nameList[["blood","ice"].sort().join()] = "bloody_slush"; +nameList[["blood_ice","water"].sort().join()] = "slushy_blood"; +nameList[["blood_ice","ice"].sort().join()] = "bloody_ice"; + +nameList[["cough_drugs","water"].sort().join()] = "cough_water"; +nameList[["cough_drugs","ice"].sort().join()] = "cough_ice"; +nameList[["cellulose_gum","water"].sort().join()] = "thick_water"; +nameList[["cellulose_gum","ice"].sort().join()] = "thick_ice"; +nameList[["cough_drugs","cellulose_gum"].sort().join()] = "dried_unsweetened_cough_syrup"; +nameList[["molten_cough_drugs","cellulose_gum"].sort().join()] = "molten_dried_unsweetened_cough_syrup"; +nameList[["cough_drugs","cellulose_gum","water"].sort().join()] = "unsweetened_cough_syrup"; +nameList[["cough_drugs","cellulose_gum","ice"].sort().join()] = "unsweetened_cough_syrup_ice"; + +nameList[["carbon_dioxide","water"].sort().join()] = "seltzer"; +nameList[["carbon_dioxide","ice"].sort().join()] = "seltzer_ice"; + +nameList[["carbon_dioxide","cough_drugs","water"].sort().join()] = "cough_seltzer"; +nameList[["carbon_dioxide","cough_drugs","ice"].sort().join()] = "cough_seltzer_ice"; +nameList[["carbon_dioxide","cellulose_gum","water"].sort().join()] = "thick_seltzer"; +nameList[["carbon_dioxide","cellulose_gum","ice"].sort().join()] = "thick_seltzer_ice"; +nameList[["carbon_dioxide","cough_drugs","cellulose_gum","water"].sort().join()] = "thick_cough_seltzer"; +nameList[["carbon_dioxide","cough_drugs","cellulose_gum","ice"].sort().join()] = "thick_cough_seltzer_ice"; + + + +nameList[["sugar","water"].sort().join()] = "sugar_water"; +nameList[["sugar","ice"].sort().join()] = "sugar_ice"; + +nameList[["sugar","cough_drugs","water"].sort().join()] = "sweetened_cough_water"; +nameList[["sugar","cough_drugs","ice"].sort().join()] = "sweetened_cough_ice"; +nameList[["sugar","cellulose_gum","water"].sort().join()] = "thick_sugar_water"; +nameList[["sugar","cellulose_gum","ice"].sort().join()] = "thick_sugar_ice"; +nameList[["sugar","cough_drugs","cellulose_gum"].sort().join()] = "dried_cough_syrup"; +nameList[["sugar","molten_cough_drugs","cellulose_gum"].sort().join()] = "molten_dried_cough_syrup"; +nameList[["sugar","cough_drugs","cellulose_gum","water"].sort().join()] = "cough_syrup"; +nameList[["sugar","cough_drugs","cellulose_gum","ice"].sort().join()] = "cough_syrup_ice"; + +nameList[["sugar","carbon_dioxide","water"].sort().join()] = "soda"; +nameList[["sugar","carbon_dioxide","ice"].sort().join()] = "soda_ice"; + +nameList[["sugar","carbon_dioxide","cough_drugs","water"].sort().join()] = "runny_lean"; +nameList[["sugar","carbon_dioxide","cough_drugs","ice"].sort().join()] = "runny_lean_ice"; +nameList[["sugar","carbon_dioxide","cellulose_gum","water"].sort().join()] = "thick_soda"; +nameList[["sugar","carbon_dioxide","cellulose_gum","ice"].sort().join()] = "thick_soda_ice"; +nameList[["sugar","carbon_dioxide","cough_drugs","cellulose_gum","water"].sort().join()] = "lean"; +nameList[["sugar","carbon_dioxide","cough_drugs","cellulose_gum","ice"].sort().join()] = "lean_ice"; + +nameList[["sugar","cough_drugs"].sort().join()] = "cough_sugar"; +nameList[["sugar","molten_cough_drugs"].sort().join()] = "molten_cough_sugar"; +nameList[["caramel","molten_cough_drugs"].sort().join()] = "molten_cough_caramel"; +nameList[["caramel","cough_drugs"].sort().join()] = "cough_caramel"; +nameList[["candy","cough_drugs"].sort().join()] = "cough_candy"; +nameList[["candy","molten_cough_drugs"].sort().join()] = "molten_cough_candy"; + +nameList[["sugar","cellulose_gum"].sort().join()] = "sweet_cellulose_gum"; +nameList[["caramel","cellulose_gum"].sort().join()] = "caramel_cellulose_gum"; +nameList[["candy","cellulose_gum"].sort().join()] = "cellulose_gum_candy"; + + +nameList[["cellulose_gum","caramel","molten_cough_drugs"].sort().join()] = "molten_caramelized_cough_syrup"; +nameList[["cellulose_gum","caramel","cough_drugs"].sort().join()] = "caramelized_cough_syrup"; +nameList[["cellulose_gum","candy","cough_drugs"].sort().join()] = "cough_drop"; +nameList[["cellulose_gum","candy","molten_cough_drugs"].sort().join()] = "molten_cough_drop"; + +function milkNames(elements,name) +{ + nameList[elements.concat("milk").sort().join()] = name + "_milk"; + nameList[elements.concat("yogurt").sort().join()] = name + "_yogurt"; + nameList[elements.concat("frozen_yogurt").sort().join()] = name + "_frozen_yogurt"; + nameList[elements.concat("cream").sort().join()] = name + "_cream"; + nameList[elements.concat("ice_cream").sort().join()] = name + "_ice_cream"; +} + +nameList[["calcium","cough_drugs"].sort().join()] = "calcified_cough_syrup"; +nameList[["calcium","molten_cough_drugs"].sort().join()] = "calcified_molten_cough_syrup"; +nameList[["molten_calcium","molten_cough_drugs"].sort().join()] = "molten_calcified_cough_syrup"; + + +milkNames2([ +["water","ice","cellulose_gum","sugar","carbon_dioxide","caramel","candy","cough_drugs","molten_cough_drugs"], +["watery","icy","thick","sweetened","carbonated","caramelized","candied","cough","cough"]],[[],""],0); + +function milkNames2(elementList, list, n) +{ + if(list[0].length > 0) + { + if(list[0].includes("molten_cough_drugs")) + { + milkNames(list[0], "molten" + list[1]); + } + else + { + milkNames(list[0], list[1].substring(1)); + } + } + if(n < elementList[0].length && n < elementList[1].length) + { + milkNames2(elementList,list,n+1); + list2 = [list[0].concat([elementList[0][n]]),list[1] + "_" + elementList[1][n]]; + if(list2[0]) + { + milkNames2(elementList,list2,n+1); + } + } +} + +for(let i in nameList) +{ + if(nameList[i].includes("sweetened_carbonated_")) + { + nameList[i] = nameList[i].replace("sweetened_carbonated_",""); + nameList[i] += "_soda"; + } +} + +nameList[["sugar","carbon_dioxide","water","milk"].sort().join()] = "pilk"; +nameList[["sugar","carbon_dioxide","ice","milk"].sort().join()] = "icy_pilk"; +nameList[["sugar","carbon_dioxide","water","yogurt"].sort().join()] = "pogurt"; +nameList[["sugar","carbon_dioxide","ice","yogurt"].sort().join()] = "icy_pogurt"; +nameList[["sugar","carbon_dioxide","water","frozen_yogurt"].sort().join()] = "frozen_pogurt"; +nameList[["sugar","carbon_dioxide","ice","frozen_yogurt"].sort().join()] = "icy_frozen_pogurt"; +nameList[["sugar","carbon_dioxide","water","cream"].sort().join()] = "pilk_cream"; +nameList[["sugar","carbon_dioxide","ice","cream"].sort().join()] = "icy_pilk_cream"; +nameList[["sugar","carbon_dioxide","water","ice_cream"].sort().join()] = "pice_cream"; +nameList[["sugar","carbon_dioxide","ice","ice_cream"].sort().join()] = "icy_pice_cream"; + + +nameList[["cellulose_gum","sugar","carbon_dioxide","water","milk"].sort().join()] = "thick_pilk"; +nameList[["cellulose_gum","sugar","carbon_dioxide","ice","milk"].sort().join()] = "icy_thick_pilk"; +nameList[["cellulose_gum","sugar","carbon_dioxide","water","yogurt"].sort().join()] = "thick_pogurt"; +nameList[["cellulose_gum","sugar","carbon_dioxide","ice","yogurt"].sort().join()] = "icy_thick_pogurt"; +nameList[["cellulose_gum","sugar","carbon_dioxide","water","frozen_yogurt"].sort().join()] = "frozen_thick_pogurt"; +nameList[["cellulose_gum","sugar","carbon_dioxide","ice","frozen_yogurt"].sort().join()] = "icy_frozen_thick_pogurt"; +nameList[["cellulose_gum","sugar","carbon_dioxide","water","cream"].sort().join()] = "thick_pilk_cream"; +nameList[["cellulose_gum","sugar","carbon_dioxide","ice","cream"].sort().join()] = "icy_thick_pilk_cream"; +nameList[["cellulose_gum","sugar","carbon_dioxide","water","ice_cream"].sort().join()] = "thick_pice_cream"; +nameList[["cellulose_gum","sugar","carbon_dioxide","ice","ice_cream"].sort().join()] = "icy_thick_pice_cream"; + + +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","water","milk"].sort().join()] = "lilk"; +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","ice","milk"].sort().join()] = "icy_lilk"; +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","water","yogurt"].sort().join()] = "logurt"; +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","ice","yogurt"].sort().join()] = "icy_logurt"; +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","water","frozen_yogurt"].sort().join()] = "frozen_logurt"; +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","ice","frozen_yogurt"].sort().join()] = "icy_frozen_logurt"; +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","water","cream"].sort().join()] = "lilk_cream"; +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","ice","cream"].sort().join()] = "icy_lilk_cream"; +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","water","ice_cream"].sort().join()] = "leanice_cream"; +nameList[["cough_drugs","cellulose_gum","sugar","carbon_dioxide","ice","ice_cream"].sort().join()] = "icy_leanice_cream"; + +nameList[["cough_drugs","sugar","carbon_dioxide","water","milk"].sort().join()] = "runny_lilk"; +nameList[["cough_drugs","sugar","carbon_dioxide","ice","milk"].sort().join()] = "icy_runny_lilk"; +nameList[["cough_drugs","sugar","carbon_dioxide","water","yogurt"].sort().join()] = "runny_logurt"; +nameList[["cough_drugs","sugar","carbon_dioxide","ice","yogurt"].sort().join()] = "icy_runny_logurt"; +nameList[["cough_drugs","sugar","carbon_dioxide","water","frozen_yogurt"].sort().join()] = "frozen_runny_logurt"; +nameList[["cough_drugs","sugar","carbon_dioxide","ice","frozen_yogurt"].sort().join()] = "icy_frozen_runny_logurt"; +nameList[["cough_drugs","sugar","carbon_dioxide","water","cream"].sort().join()] = "runny_lilk_cream"; +nameList[["cough_drugs","sugar","carbon_dioxide","ice","cream"].sort().join()] = "icy_runny_lilk_cream"; +nameList[["cough_drugs","sugar","carbon_dioxide","water","ice_cream"].sort().join()] = "runny_leanice_cream"; +nameList[["cough_drugs","sugar","carbon_dioxide","ice","ice_cream"].sort().join()] = "icy_runny_leanice_cream"; + +elements.cough_drugs = { + density: 1230, //using the 6.25/10 ratio from a CP/PH cough syrup from Morton Grove Pharmaceuticals, Inc. because it was in hot on r/lean (of course there’s a subreddit for that) | this is 6.25 mg pr.hy. and 10 mg co.ph. per 5mL dose, but ratios and reactions aren’t possible and implementing them to this accuracy would also require an accurate cough syrup density + tempHigh: 157.5, + color: "#e0e4e0", + behavior: behaviors.POWDER, + category: "powders", + state: "solid" +} + + +elements.cellulose_gum = { + density: 1600, + tempHigh: 270, + stateHigh: "fire", + color: "#f7e7b7", + behavior: behaviors.POWDER, + category: "powders", + state: "solid" +} \ No newline at end of file diff --git a/mods/runAfterAutogen2.js b/mods/runAfterAutogen2.js index d7b1f692..8ea63f87 100644 --- a/mods/runAfterAutogen2.js +++ b/mods/runAfterAutogen2.js @@ -11,8 +11,10 @@ function runAfterAutogen(callback) { }, interval); } function createButtonsAndCountElements() { - document.getElementById("categoryControls").innerHTML = ""; + window.setTimeout(function() { + document.getElementById("categoryControls").innerHTML = ""; document.getElementById("elementControls").innerHTML = ""; + document.getElementById("category-tools").innerHTML = ""; document.getElementById("extraInfo").innerHTML = ""; elementCount = 0; hiddenCount = 0; @@ -46,7 +48,7 @@ function createButtonsAndCountElements() { document.getElementById("categoryControls").children[0].click() document.getElementById("extraInfo").insertAdjacentHTML("beforeend", "v" + currentversion + " • " + elementCount + " elements, including " + hiddenCount + " hidden ones.
©2021-" + new Date().getFullYear() + ". All Rights Reserved. R74n
"); selectElement(currentElement); - + }, 10); }; runAfterAutogen(createButtonsAndCountElements); \ No newline at end of file From 948821e4541572ffff50e975e191b99a6e4a7bb2 Mon Sep 17 00:00:00 2001 From: lllllllllwith10ls <38187754+lllllllllwith10ls@users.noreply.github.com> Date: Sun, 26 Nov 2023 14:56:22 -0600 Subject: [PATCH 08/10] changed chem.js mod interaction --- mods/chem.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mods/chem.js b/mods/chem.js index 520af9f2..6f6c0666 100644 --- a/mods/chem.js +++ b/mods/chem.js @@ -416,7 +416,7 @@ trueAcidGases = ["acid_gas", "hydrofluoric_acid_gas"]; if (enabledMods.includes("mods/generative_mods.js")) { -whenAvailable(["generateCloud"], function() { +runAfterLoad(function() { generateCloud("hydrofluoric_acid"); elements["hydrofluoric_acid_gas"].reactions["hydrofluoric_acid_gas"]= { "elem1": null, "elem2": "hydrofluoric_acid_cloud", "chance":0.3, "y":[0,12], "setting":"clouds" }; elements["hydrofluoric_acid_gas"].reactions["rain_cloud"]= { "elem1": null, "elem2": "hydrofluoric_acid_cloud", "chance":0.4, "y":[0,12], "setting":"clouds" }; @@ -476,7 +476,7 @@ function createAcid(name,reactions, gasReactions, color, category, categoryGas, elements.bless.reactions[name] = { elem2: "hydrogen" }; elements.bless.reactions[name+"_gas"] = { elem2: "hydrogen" }; if (enabledMods.includes("mods/generative_mods.js")) { - whenAvailable(["generateCloud"], function() { + runAfterLoad(function() { generateCloud(name); elements[name+"_gas"].reactions[name+"_gas"]= { "elem1": null, "elem2": name + "_cloud", "chance":0.3, "y":[0,12], "setting":"clouds" }; elements[name+"_gas"].reactions["rain_cloud"]= { "elem1": null, "elem2": name + "_cloud", "chance":0.4, "y":[0,12], "setting":"clouds" }; From 657244d2fd757fb2a75a826bca49714a6a51c54c Mon Sep 17 00:00:00 2001 From: JustAGenericUsername <92590792+JustAGenericUsername@users.noreply.github.com> Date: Sun, 26 Nov 2023 18:41:09 -0500 Subject: [PATCH 09/10] Update nouserscaesium.js --- mods/nouserscaesium.js | 58 +++++++++++++++++++++++++++++++++++++++--- 1 file changed, 55 insertions(+), 3 deletions(-) diff --git a/mods/nouserscaesium.js b/mods/nouserscaesium.js index 74dbcb12..c4511bd4 100644 --- a/mods/nouserscaesium.js +++ b/mods/nouserscaesium.js @@ -14,7 +14,7 @@ reactions: { "salt_water": { "elem1":"pop", "elem2":"hydrogen" }, "seltzer": { "elem1":"pop", "elem2":"hydrogen" }, } -}; +}, elements.molten_caesium = { color: ["#735c0a", "#a68e37", "#7e6715", "#9b832e"], behavior: behaviors.LIQUID, @@ -34,7 +34,7 @@ elements.molten_caesium = { "salt_water": { "elem1":"pop", "elem2":"hydrogen" }, "seltzer": { "elem1":"pop", "elem2":"hydrogen" }, } -}; +}, elements.caesium_vapor = { color: ["#d89e77", "#cd9064", "#af6f34", "#a26320"], behavior: behaviors.GAS, @@ -44,4 +44,56 @@ elements.caesium_vapor = { stateLow: "molten_caesium", density: 1.7, temp: 700 -} \ No newline at end of file +}, +elements.subzero_grass_seed = { + color: ["#022c14", "#032911", "#032205", "#021f00"], + behavior: [ + "XX|M2%0.1|XX", + "XX|L2:subzero_grass AND C2:subzero_grass%15|XX", + "XX|M1|XX", + ], + category: "life", + state: "solid", + tempHigh: 10, + temp: 0, + stateHigh: "dead_plant", + density: 1400 +}, +elements.subzero_grass = { + color: ["#003220", "#022a1a", "#032314", "#001c0d"], + behavior: behaviors.STURDYPOWDER, + category: "life", + state: "solid", + tempHigh: 13, + temp: 0, + stateHigh: "dead_plant", + density:1400 +}, +elements.technetium = { + color: ["#e7d9bb", "#bab195", "#8f8a70", "#66654e"], + behavior: [ + "XX|XX|XX", + "XX|CH:neutron%0.07|XX", + "XX|XX|XX", + ], + category: "solids", + state: "solid", + tempHigh: 2157, + stateHigh: "molten_technetium", + density: 11500 +}, + elements.molten_technetium = { + color: ["#d16b42", "#da904c", "#dfb360", "#e2d57f"], + behavior: behaviors.LIQUID, + tick: function(pixel) { + if (Math.random() < 0.0007) { + changePixel(pixel, "neutron", false); + } + }, + category: "states", + state: "liquid", + tempLow: 2140, + temp: 2200, + stateLow: "technetium", + density: 11400 +} From 5fce4a014ddecc180c49fc1fd09a701b575a9a30 Mon Sep 17 00:00:00 2001 From: JustAGenericUsername <92590792+JustAGenericUsername@users.noreply.github.com> Date: Sun, 26 Nov 2023 18:42:35 -0500 Subject: [PATCH 10/10] Rename nouserscaesium.js to nousersthings.js --- mods/{nouserscaesium.js => nousersthings.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename mods/{nouserscaesium.js => nousersthings.js} (100%) diff --git a/mods/nouserscaesium.js b/mods/nousersthings.js similarity index 100% rename from mods/nouserscaesium.js rename to mods/nousersthings.js