Merge pull request #114 from lllllllllwith10ls/main

Made fluorine making slightly easier
This commit is contained in:
slweeb 2023-07-20 19:29:46 -04:00 committed by GitHub
commit 68f7568db7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 87 additions and 3 deletions

View File

@ -1903,8 +1903,10 @@ trueAcids.push("hexafluorosilicic_acid");
trueAcidGases.push("hexafluorosilicic_acid_gas");
elements.hydrofluoric_acid.ignore.push("sand","hexafluorosilicic_acid","hexafluorosilicic_acid_gas","potassium_carbonate","potassium_fluoride");
elements.hydrofluoric_acid_gas.ignore.push("sand","hexafluorosilicic_acid","hexafluorosilicic_acid_gas","potassium_carbonate","potassium_fluoride");
elements.hydrofluoric_acid.ignore.push("sand","hexafluorosilicic_acid","hexafluorosilicic_acid_gas","potassium_carbonate","potassium_fluoride","carbon_dioxide","hydrogen");
elements.hydrofluoric_acid_gas.ignore.push("sand","hexafluorosilicic_acid","hexafluorosilicic_acid_gas","potassium_carbonate","potassium_fluoride","carbon_dioxide","hydrogen");
elements.hydrogen_fluoride.ignore.push("sand","hexafluorosilicic_acid","hexafluorosilicic_acid_gas","potassium_carbonate","potassium_fluoride","carbon_dioxide","hydrogen");
elements.liquid_hydrogen_fluoride.ignore.push("sand","hexafluorosilicic_acid","hexafluorosilicic_acid_gas","potassium_carbonate","potassium_fluoride","carbon_dioxide","hydrogen");
elements.hexafluorosilicic_acid.ignore.push("sand");
elements.hexafluorosilicic_acid_gas.ignore.push("sand");
@ -1912,9 +1914,14 @@ elements.hydrofluoric_acid.reactions.sand = { elem1:"hexafluorosilicic_acid", el
elements.hydrofluoric_acid_gas.reactions.sand = { elem1:"hexafluorosilicic_acid", elem2: null};
elements.hydrofluoric_acid.reactions.potassium_carbonate = { elem1:"potassium_fluoride", elem2: "carbon_dioxide"};
elements.hydrofluoric_acid_gas.reactions.potassium_carbonate = { elem1:"potassium_fluoride", elem2: "carbon_dioxide"};
elements.hydrogen_fluoride.reactions.potassium_carbonate = { elem1:"potassium_fluoride", elem2: "carbon_dioxide"};
elements.liquid_hydrogen_fluoride.reactions.potassium_carbonate = { elem1:"potassium_fluoride", elem2: "carbon_dioxide"};
elements.hydrofluoric_acid.reactions.potassium_fluoride = { elem1:["hydrogen","fluorine"], elem2: "potassium_fluoride"};
elements.hydrofluoric_acid_gas.reactions.potassium_fluoride = { elem1:["hydrogen","fluorine"], elem2: "potassium_fluoride"};
elements.fluorine.ignore.push("sand","potassium_fluoride","carbon_dioxide");
elements.liquid_fluorine.ignore.push("sand","potassium_fluoride","carbon_dioxide");
elements.potassium_carbonate = {
color: "#e2e1e8",
behavior: behaviors.POWDER,
@ -2314,7 +2321,6 @@ elements.bless.reactions["hydrogen_fluoride"] = {elem2: "hydrogen"};
elements.bless.reactions["liquid_hydrogen_fluoride"] = {elem2: "hydrogen"};
elements.bless.reactions["hydrogen_fluoride_ice"] = {elem2: "hydrogen"};
elements.bless.reactions["hydrofluoric_acid"] = {elem2: "hydrogen"};
elements.bless.reactions["liquid_hydrofluoric_acid"] = {elem2: "hydrogen"};
elements.bless.reactions["hydrofluoric_acid_ice"] = {elem2: "hydrogen"};
elements.bless.reactions["francium"] = {elem2: null};
elements.bless.reactions["molten_francium"] = {elem2: null};

View File

@ -138,6 +138,84 @@ if (enabledMods.includes("mods/chem.js")) {
};
}
if (enabledMods.includes("mods/structure_test.js")) {
elements.smooth_tungsten = {
color: "#bcbaae",
behavior: behaviors.WALL,
tempHigh: 3422,
stateHigh: "molten_tungsten",
category: "solids",
hidden: true,
density: 19300,
conduct: 0.65,
hardness: 0.75
},
elements.francium_reactor = {
tick: function(pixel) {
for(cx = -4; cx <= 4; cx++) {
for(cy = -4; cy <= 4; cy++) {
if(cx === 0 && cy === 0) {
continue;
};
var finalCoords = [pixel.x+cx,pixel.y+cy];
if(isEmpty(...finalCoords,true)) {
continue;
} else {
var otherPixel = pixelMap[finalCoords[0]][finalCoords[1]];
if(otherPixel.element === pixel.element) {
deletePixel(...finalCoords);
};
};
};
};
if(!isEmpty(pixel.x,pixel.y-1,true)) {
swapPixels(pixel,pixelMap[pixel.x][pixel.y-1]);
return;
};
if(!tryMove(pixel,pixel.x,pixel.y+1)) {
let width = 10 + Math.floor(Math.random() * (8 + 1));
let randomHeight = 2 + Math.floor(Math.random() * (2 + 1));
var heights = [];
for(let i = 1; i <= randomHeight; i++)
{
heights.push(Math.floor(i));
}
var currentHeight = pixel.y + 100;
while(currentHeight > pixel.y)
{
loadPixelRowFromArray(Array((width)*2-1).fill("tungsten"),pixel.x,currentHeight,true,true);
currentHeight--;
}
for(let i = 0; i < heights.length; i++)
{
for(let j = 0; j < heights[i]; j++)
{
loadPixelRowFromArray(Array((width-i)*2+1).fill("smooth_tungsten"),pixel.x,currentHeight,true,true);
currentHeight--;
}
}
for(let i = heights.length-1; i >= 0; i--)
{
for(let j = 0; j < heights[i]; j++)
{
loadPixelRowFromArray(Array((width-i)*2+1).fill("smooth_tungsten"),pixel.x,currentHeight,true,true);
currentHeight--;
}
}
};
},
excludeRandom: true,
desc: "Creates a francium reactor for the francium lake worldgen.",
cooldown: 6,
state: "solid",
hardness: 1,
category: "structures",
color: ["#adadad", "#70b8ba", "#adadad", "#70b8ba", "#adadad"],
};
elements.francium_height_map = newHeightMap(Array(5000).fill("tungsten").concat(["francium_reactor"]), "francium_height", 0.125, 1, 0.2, 2.5, 20);
}
//override function until fix
worldGen = function (worldtype) {