This commit is contained in:
slweeb 2024-01-15 13:00:34 -05:00
commit 325214336c
9 changed files with 1561 additions and 102 deletions

View File

@ -199,9 +199,9 @@
<tr><td>rays.js</td><td>Adds more Ray types</td><td>Alice</td></tr>
<!----><tr><td class="modCat" colspan="3">Food & Cooking</td></tr><!---->
<tr><td>aChefsDream.js</td><td>Adds more food and animals</td><td>SquareScreamYT and RealerRaddler</td></tr>
<tr><td>bananas.js</td><td>Adds bananas and banana plants</td><td>Alice</td></tr>
<tr><td>greenitemsandmore.js</td><td>Adds various green things, including apples and more food</td><td>zonneschijn7</td>
<tr><td>food&animals.js</td><td>Adds more food and animals</td><td>SquareScreamYT and RealerRaddler</td></tr>
<tr><td>ketchup_mod.js</td><td>Adds a bunch of ketchup related stuff, plus a few other condiments</td><td>Nubo318 (main dev), Devi, Alice (contributors)</td></tr>
<tr><td>lemonade.js</td><td>Adds lemons and lemonade</td><td>personman / baconthemyth</td></tr>
<tr><td>morefoodsmod.js</td><td>Adds more foods</td><td>Clide4</td></tr>
@ -209,6 +209,7 @@
<tr><td>sbstuff.js</td><td>Adds many foods</td><td>Stefan Blox</td></tr>
<!----><tr><td class="modCat" colspan="3">Life & Nature</td></tr><!---->
<tr><td>aChefsDream.js</td><td>Adds more food and animals</td><td>SquareScreamYT and RealerRaddler</td></tr>
<tr><td>apioforms_pre.js</td><td>An incomplete implementation of elements from the <a href="https://osmarks.net/apioform/">Apioform Game</a></td><td>Alice</td></tr>
<tr><td>bacteria_mod.js</td><td>Adds content from the <a href="https://www.curseforge.com/minecraft/mc-mods/bacterium">Bacterium Mod</a>: (Bacteria, Replacer B., Jammer Block)</td><td>Alice</td></tr>
<tr><td>bananas.js</td><td>Adds bananas and banana plants</td><td>Alice</td></tr>
@ -219,7 +220,6 @@
<tr><td>fantastic_creatures.js</td><td>Adds various animals</td><td>Melecie</td></tr>
<tr><td>fantasy_elements.js</td><td>Fantasy creatures and substances</td><td>pixelegend4</td></tr>
<tr><td>fey_and_more.js</td><td>Adds fairies, magic, and a lot of other things</td><td>Melecie</td></tr>
<tr><td>food&animals.js</td><td>Adds more food and animals</td><td>SquareScreamYT and RealerRaddler</td></tr>
<tr><td>fwibblen.js</td><td>Adds a flying creature that turns nickel into itself, and a second creature that does the same to the first one</td><td>Alice</td></tr>
<tr><td>human_edit.js</td><td>Improvements to humans</td><td>Alice</td></tr>
<tr><td>miscible_psoup_and_birthpool.js</td><td>Makes Primordial Soup and Birthpool mix instead of the birthpool settling to the bottom. Will be deprecated upon the release of Magical Menagerie</td><td>Alice</td></tr>

View File

@ -18,3 +18,44 @@ elements.Molten_Ultra_Steel = {
"molten_gold": { elem1: "salt", elem2: "salt" },
}
};
elements.Chocolate_Muffin = {
color: ["#7e4d32","#492500","#5e3400","#360101"],
behavior: behavior.WALL,
category: "food",
state: "solid",
};
elements.Cacao_Beans = {
color: "#48291C",
behavior: behaviors.POWDER,
breakInto: "Crushed_Cacao_Beans"
};
elements.Crushed_Cacao_Beans = {
color: ["#48291C","#543324","#3d251a"],
behavior: behaviors.POWDER,
reactions: {
"sugar": {elem1: "Chocolate_Mixture"}
};
elements.Chocolate_Mixture = {
color: ["#7B3F00","#572e03","#824a10"],
behavior: behaviors.POWDER,
reactions: {
"Milk": {elem1: "Chocolate"}
};
elements.Chocolate = {
color: "#48291C",
behavior: behaviors.WALL,
reactions: {
"Dough": {elem1: "Chocolate_Dough"}
};
elements.Chocolate_Dough = {
color: "#",
behavior: behaviors.LIQUID,
tempHigh: 450,
stateHigh: "Chocolate_Muffin",
};

View File

@ -1,12 +1,8 @@
/*
Created by SquareScreamYT and RealerRaddler
Thanks to Alice, nousernamefound and Fioushemastor for helping :)
food&animals.js
MORE FOODS AND ANIMALS!!
Created by @SquareScreamYT and @RealerRaddler
v1.0
v1.1
Changelog (v1.0)
- added chickens
@ -51,7 +47,61 @@ Changelog (v1.0)
- added olive branches
- added olive leaves
- added cooking oil
Changelog (v1.1)
- added apples and related stuff
- apples
- applewood
- apple branches
- apple leaves
- apple juice
- made by smashing apples
- apple seeds
- apple slices
- made by cutting apples
- apple jam
- made by putting sugar in apple juice
- added knife tool
- cuts, peels, etc. pixels
- readded potato skin and peeled potato
- changed fried potato recipe from potato to skinned potato\
- added pepper
- added cake
- made by mixing baked batter and cream
- added icing sugar
- made by smashing sugar
- added icing
- made by shift-mixing icing sugar
- noodles description
- bug fix (freezing crushed worms makes them alive)
*/
/*
elements.test = {
//other needed properties
cutInto: "elem"
}
*/
elements.knife = {
color: "#adb5bd",
// other needed properties
tool: (pixel) => {
//store cutInto as a variable for legibility
var cutInto = elements[pixel.element].cutInto;
//if theres no cutInto, it should equal undefined, which is falsey and !undefined = true
if (!cutInto) { return };
//if cutInto is an array, randomly pick one of its elements
if(cutInto instanceof Array) { cutInto = cutInto[Math.floor(Math.random() * cutInto.length)] };
//change pixel into the (chosen) element
changePixel(pixel, cutInto)
},
category:"tools",
}
elements.chicken = {
color: ["#c29046", "#f5d271", "#d4bd7d"],
behavior: [
@ -249,6 +299,7 @@ if (!elements.broth.reactions) elements.broth.reactions = {};
elements.broth.reactions.water = { elem1: "soup", elem2: "soup" }
elements.noodles = {
desc: "whatever noodles",
color: ["#F3BA4F", "#F7D161"],
behavior: behaviors.POWDER,
category: "food",
@ -315,7 +366,7 @@ elements.crushed_worm = {
tempHigh: 50,
stateHigh: ["ash", "smoke"],
tempLow: -4,
stateLow: "frozen_worm",
stateLow: "frozen_crushed_worm",
density: 200.33,
isFood: true,
hidden: true,
@ -520,7 +571,6 @@ elements.olive = {
isFood: false
}
elements.cooking_oil = {
color: "#ffc844",
behavior: behaviors.LIQUID,
@ -533,25 +583,37 @@ elements.cooking_oil = {
viscosity: 250,
state: "liquid",
density: 825,
hidden: true,
temp: 30,
reaction: {
"potato": {elem1: "fried_potato", tempMin: 70}
reactions: {
"peeled_potato": {elem2: "fried_potato", tempMin: 70}
}
},
/*
elements.potato_skin = {
color: ["#DC8A5A", "#A86C36", "#DC9A59", "#A76B35"],
behavior: behaviors.STURDYPOWDER,
elements.pepper = {
color: ["#1f190a", "#2b200d", "#362712", "#3b2211"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
isFood: true,
temp: 20,
hidden: true,
tempHigh: 250,
stateHigh: ["ash", "smoke"]
stateHigh: ["ash", "smoke"],
}
elements.potato.cutInto = ["peeled_potato","peeled_potato","peeled_potato","potato_skin"]//{elem1: ["potato_skin","peeled_potato"] }
elements.potato_skin = {
color: ["#DC8A5A", "#A86C36", "#DC9A59", "#A76B35"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
isFood: true,
temp: 20,
hidden: true,
density: 1100,
tempHigh: 250,
stateHigh: ["ash", "smoke"],
}
elements.peeled_potato = {
@ -562,13 +624,15 @@ elements.peeled_potato = {
isFood: true,
temp: 20,
hidden: true,
reaction: {
breakInto: "mashed_potato",
tempHigh: 176,
stateHigh: "baked_potato",
density: 1100,
reactions: {
"cooking_oil": { elem1: "fried_potato", tempMin: 70 }
}
}
*/
elements.fried_potato = {
color: ["#DD7908", "#D57206", "#CA6801", "#D68001"],
behavior: behaviors.STURDYPOWDER,
@ -577,6 +641,242 @@ elements.fried_potato = {
temp: 35,
hidden: true,
tempHigh: 600,
density: 1110,
stateHigh: ["ash", "smoke"],
isFood: true,
}
elements.applewood = {
color: "#632e1f",
behavior: behaviors.WALL,
tempHigh: 400,
stateHigh: ["ember","charcoal","fire","fire","fire"],
category: "solids",
burn: 5,
burnTime: 300,
burnInto: ["ember","charcoal","fire"],
state: "solid",
hardness: 0.15,
breakInto: "sawdust",
breakIntoColor: ["#dba66e","#cc8a64"],
hidden: true
}
elements.apple_branch = {
color: "#632e1f",
behavior: [
"CR:apple_leaves,apple_branch%2|CR:apple_leaves,apple_branch%2|CR:apple_leaves,apple_branch%2",
"XX|XX|XX",
"XX|XX|XX",
],
tempHigh: 100,
stateHigh: "applewood",
tempLow: -30,
stateLow: "applewood",
category: "life",
burn: 40,
burnTime: 50,
burnInto: ["sap","ember","charcoal"],
hidden: true,
state: "solid",
density: 1500,
hardness: 0.15,
breakInto: ["sap","sawdust"],
}
elements.apple_leaves = {
color: ["#00d404","#0ec911","#109e12"],
behavior: [
"XX|XX|XX",
"XX|XX|XX",
"XX|CR:apple%0.15|XX",
],
reactions: {
"vinegar": { elem1:"dead_plant", elem2:null, chance:0.035 },
"baking_soda": { elem1:"dead_plant", elem2:null, chance:0.01 },
"bleach": { elem1:"dead_plant", elem2:null, chance:0.05 },
"alcohol": { elem1:"dead_plant", elem2:null, chance:0.035 }
},
category:"life",
tempHigh: 100,
stateHigh: "dead_plant",
tempLow: -1.66,
stateLow: "frozen_plant",
burn:65,
burnTime:60,
burnInto: "dead_plant",
breakInto: "dead_plant",
state: "solid",
density: 1050,
hidden: true
}
elements.apple = {
color: ["#eb1a1a","#f22c2c","#d62020"],
behavior: behaviors.POWDER,
reactions: {
"vinegar": { elem1:"dead_plant", elem2:null, chance:0.035 },
"baking_soda": { elem1:"dead_plant", elem2:null, chance:0.01 },
"bleach": { elem1:"dead_plant", elem2:null, chance:0.05 },
"alcohol": { elem1:"dead_plant", elem2:null, chance:0.035 }
},
category:"food",
tempHigh: 100,
stateHigh: "dead_plant",
tempLow: -1.66,
stateLow: "frozen_plant",
burn:65,
burnTime:60,
burnInto: "dead_plant",
breakInto: "apple_juice",
cutInto: "apple_slice",
state: "solid",
density: 1050,
}
elements.apple_slice = {
color: "#f0af37",
behavior: behaviors.STURDYPOWDER,
category:"food",
tempHigh: 100,
stateHigh: ["sugar","steam"],
burn:65,
burnTime:60,
burnInto: "dead_plant",
breakInto: "apple_juice",
state: "solid",
density: 1050,
hidden: true,
}
elements.apple_seed = {
color: "#854610",
tick: function(pixel) {
if (isEmpty(pixel.x,pixel.y+1)) {
movePixel(pixel,pixel.x,pixel.y+1);
}
else {
if (Math.random() < 0.02 && pixel.age > 50 && pixel.temp < 100) {
if (!outOfBounds(pixel.x,pixel.y+1)) {
var dirtPixel = pixelMap[pixel.x][pixel.y+1];
if (dirtPixel.element === "dirt" || dirtPixel.element === "mud" || dirtPixel.element === "sand" || dirtPixel.element === "wet_sand" || dirtPixel.element === "clay_soil" || dirtPixel.element === "mycelium") {
changePixel(dirtPixel,"root");
}
}
if (isEmpty(pixel.x,pixel.y-1)) {
movePixel(pixel,pixel.x,pixel.y-1);
createPixel(Math.random() > 0.5 ? "applewood" : "apple_branch",pixel.x,pixel.y+1);
}
}
else if (pixel.age > 1000) {
changePixel(pixel,"applewood");
}
pixel.age++;
}
doDefaults(pixel);
},
properties: {
"age":0
},
tempHigh: 100,
stateHigh: "dead_plant",
tempLow: -2,
stateLow: "frozen_plant",
burn: 65,
burnTime: 15,
category: "life",
state: "solid",
density: 1500,
cooldown: defaultCooldown,
seed: true,
behavior: [
"XX|XX|XX",
"XX|FX%10|XX",
"XX|M1|XX",
],
};
elements.apple_juice = {
color: "#ffde55",
behavior: behaviors.LIQUID,
category: "liquids",
tempHigh: 400,
stateHigh: "fire",
burn: 70,
burnTime: 300,
burnInto: ["steam", "smoke"],
state: "liquid",
density: 825,
hidden: true,
temp: 30,
reactions: {
"sugar": { elem1:"apple_jam", elem2:null, chance:0.35 }
},
};
elements.cake = {
color: ["#f2e5bf","#e8daba"],
behavior: behaviors.STURDYPOWDER,
tempHigh: 550,
stateHigh: "ash",
category: "food",
burn: 10,
burnTime: 400,
burnInto: ["smoke","smoke","smoke","ash"],
breakInto: "crumb",
state: "solid",
density: 233.96,
hidden: true,
isFood: true
};
elements.icing_sugar = {
color: "#f8f8f1",
behavior: behaviors.POWDER,
onMix: function(icing_sugar1, icing_sugar2) {
if (shiftDown && Math.random() < 0.2) {
changePixel(icing_sugar1,"icing")
}
},
tempHigh: 186,
stateHigh: "caramel",
viscosity: 1.5,
category: "food",
state: "solid",
hidden: true,
density: 1036.86,
isFood: true
};
elements.icing = {
color: "#fefefb",
behavior: behaviors.STURDYPOWDER,
onMix: function(icing_sugar1, icing_sugar2) {
if ((shiftDown && Math.random() < 0.2) || (elements[icing_sugar2.element].id === elements.icing_sugar.id && Math.random() < 0.25)) {
changePixel(icing_sugar1,"icing")
}
},
viscosity: 1.5,
tempHigh: 1000,
stateHigh: ["smoke","smoke","smoke","steam","steam","calcium"],
stateLowColorMultiplier: 0.97,
category: "food",
isFood: true,
state: "solid",
density: 959.97,
};
elements.cream.reactions.baked_batter = {elem2: "cake" }
elements.sugar.breakInto = {elem1: "icing_sugar"}
elements.apple_jam = {
color: "#ebc034",
behavior: behaviors.LIQUID,
category: "food",
tempHigh: 400,
stateHigh: ["sugar","smoke"],
burn: 70,
burnTime: 300,
viscosity: 750,
state: "liquid",
density: 825,
hidden: true
};

View File

@ -164,6 +164,20 @@ elements.kiwi = {
desc: "Kiwi from the greenitemsandmore.js mod.",
breakInto: "juice",
breakIntoColor: "#2e7533",
tempHigh: 120
stateHigh: "ash"
tempHigh: 120,
stateHigh: "ash",
};
behaviors.CUSTOMMOVEMENT = [
"M3|XX|M3",
"M2|XX|M2",
"M3|M1|M2",
],
elements.movementtest = {
color: "#ccc3a9",
behavior: behaviors.CUSTOMMOVEMENT,
category: "special",
state: "solid",
desc: "movementtest. Used for testing movement. From the greenitemsandmore.js mod.",
};

View File

@ -48,4 +48,42 @@ elements.rp1= {
alias: "rocket propellant 1",
burn: 100,
burnTime: 400,
},
elements.jet_fuel= {
color: "#575654",
behavior: behaviors.LIQUID,
category: "liquids",
state: "liquid",
density: 800,
alias: "a really f---ing flammable liquid",
burn: 100,
burnTime: 1,
tempHigh: 293,
stateHigh: "jet_fuel_vapor",
tempHigh: 293,
stateHigh: "frozen_jet_fuel",
},
elements.jet_fuel_vapor= {
color: "#575654",
behavior: behaviors.GAS,
category: "gases",
state: "gas",
density: 800,
alias: "a really f---ing flammable gas",
burn: 100,
burnTime: 1,
tempLow: 292,
stateLow: "jet_fuel",
},
elements.frozen_jet_fuel= {
color: "#575654",
behavior: behaviors.WALL,
category: "solids",
state: "solid",
density: 800,
alias: "a really f---ing flammable solid",
burn: 100,
burnTime: 1,
tempHigh: -50,
stateHigh: "jet_fuel",
};

View File

@ -1,5 +1,19 @@
//This mod was made by Alex the transfem, https://discord.com/users/778753696804765696 on discord and https://www.tiktok.com/@alextheagenenby?_t=8hoCVI3NRhu&_r=1 on tiktok.
//version 1.4.2: added incinerator, E-incinerator and improved mixer to be compatible with nousersthings.js and to have a range of effect.
function pixelInRange(pixel, range){
let i = 0;
while (i < range.length) {
if (pixel.x === range[i][0] && pixel.y === range[i][1]) {
i++;
return true;
} else {
i++;
}
}
return false;
}
function customExplosion(pixel1, pixel2, radius, list) {
let x = pixel1.x;
let y = pixel1.y;
@ -966,11 +980,129 @@ elements.morechemmixer = {
}
},
tick: function(pixel) {
pixel.clone = `range: ${num}`;
let range = mouseRange(pixel.x, pixel.y, num);
if(pixel.start == pixelTicks) {
pixel.range = num;
}
let range = mouseRange(pixel.x, pixel.y, pixel.range);
mix(range);
}
}
let num1 = 0;
elements.morechemsmasher = {
name: "MoreChemSmasher",
behavior: behaviors.WALL,
category: "machines",
noMix: true,
onSelect: function(pixel) {
let item = prompt("enter range for smashing.");
if(/^\d+$/.test(item)){
num1 = parseInt(item);
} else {
alert("that is not an integer.");
}
},
tick: function(pixel) {
if(pixel.start == pixelTicks) {
pixel.range = num1;
}
let range = mouseRange(pixel.x, pixel.y, pixel.range);
smash(range);
}
}
let num2 = 0;
let exclude = [];
elements.specialsmasher = {
name: "SpecialSmasher",
behavior: behaviors.WALL,
category: "machines",
noMix: true,
onSelect: function(pixel) {
let item = prompt("enter range for smashing.");
exclude = prompt("Enter elements to exclude, seperate them with commas.").replace(/\s/g, "").split(",");
if(/^\d+$/.test(item)){
num2 = parseInt(item);
} else {
alert("that is not an integer.");
}
},
tick: function(pixel) {
if(pixel.start == pixelTicks) {
pixel.range = num2;
}
let range = mouseRange(pixel.x, pixel.y, pixel.range);
smash(range, exclude);
}
}
let num3 = 0;
let exclude1 = [];
elements.specialmixer = {
name: "SpecialMixer",
behavior: behaviors.WALL,
category: "machines",
noMix: true,
onSelect: function(pixel) {
let item = prompt("enter range for mixing.");
exclude = prompt("Enter elements to exclude, seperate them with commas.").replace(/\s/g, "").split(",");
if(/^\d+$/.test(item)){
num3 = parseInt(item);
} else {
alert("that is not an integer.");
}
},
tick: function(pixel) {
if(pixel.start == pixelTicks) {
pixel.range = num3;
}
let range = mouseRange(pixel.x, pixel.y, pixel.range);
mix(range, exclude);
}
}
let num4 = 0;
let exclude2 = [];
let property1 = "";
let value2 = "";
elements.propmachine = {
name: "PropMachine",
behavior: behaviors.WALL,
category: "machines",
noMix: true,
onSelect: function(pixel) {
let item = prompt("enter range for prop changing.");
if(/^\d+$/.test(item)){
num4 = parseInt(item);
} else {
alert("that is not an integer.");
}
exclude2 = prompt("Enter elements to exclude, seperate them with commas.").replace(/\s/g, "").split(",");
exclude2.push("propmachine");
var answer1 = prompt("Warning - This tool may break the simulator if used incorrectly.\n\nEnter a pixel attribute to modify:",(currentProp||undefined));
if (!answer1) { return }
var answer2 = prompt("Now, enter a value for "+answer1+":",(currentPropValue||undefined));
if (!answer2) { return }
var valueL = answer2.toLowerCase();
if (valueL === "true") { answer2 = true }
else if (valueL === "false") { answer2 = false }
else if (valueL === "null") { answer2 = null }
else if (valueL === "undefined") { answer2 = undefined }
else if (answer1 === "color" && valueL[0] === "#") {
var rgb = hexToRGB(valueL);
answer2 = "rgb("+rgb.r+","+rgb.g+","+rgb.b+")";
}
currentProp = answer1;
var num = parseFloat(answer2);
if (!isNaN(num)) { answer2 = num }
currentPropValue = answer2;
logMessage("Prop: "+currentProp);
logMessage("Value: "+currentPropValue);
},
tick: function(pixel) {
if(pixel.start == pixelTicks) {
pixel.range = num4;
}
let range = mouseRange(pixel.x, pixel.y, pixel.range);
prop({ property: property1, value: value2 },range, exclude2);
}
}
let item = "";
elements.improvedsensor = {
behavior: behaviors.WALL,
@ -1064,14 +1196,42 @@ elements.incinerator = {
color: 'rgb(255, 50, 0)',
noMix: true,
}
function mix(range){
function prop(obj, range, exclude = []){
for (var i = 0; i < range.length; i++) {
if (!isEmpty(range[i][0], range[i][1], true)) {
var pixel = pixelMap[range[i][0]][range[i][1]];
if (!exclude.includes(pixel.element)){
if(/^\d+$/.test(obj.value)){
obj.value = parseInt(obj.value);
}
if (!currentProp) { return }
if (pixel[currentProp] !== undefined && typeof pixel[currentProp] !== typeof currentPropValue) {
logMessage("Error: "+currentProp+" type is "+typeof pixel[currentProp]+", not "+typeof currentPropValue+".");
currentProp = null;
currentPropValue = null;
return;
}
if (currentProp === "element") {
changePixel(pixel, currentPropValue);
return;
}
if (currentProp === "burning" && currentPropValue === "true") {
pixel.burnStart = pixelTicks;
return;
}
pixel[currentProp] = currentPropValue;
}
}
}
}
function mix(range, exclude = []){
let mixlist = [];
for (var i = 0; i < range.length; i++) {
var x = range[i][0];
var y = range[i][1];
if (!isEmpty(x,y,true)) {
var pixel = pixelMap[x][y];
if (elements[pixel.element].noMix !== true || shiftDown) {
if (elements[pixel.element].noMix !== true) {
mixlist.push(pixel);
}
}
@ -1079,14 +1239,71 @@ function mix(range){
for (var i = 0; i < mixlist.length; i++) {
var pixel1 = mixlist[Math.floor(Math.random()*mixlist.length)];
var pixel2 = mixlist[Math.floor(Math.random()*mixlist.length)];
swapPixels(pixel1,pixel2);
mixlist.splice(mixlist.indexOf(pixel1),1);
mixlist.splice(mixlist.indexOf(pixel2),1);
if (elements[pixel1.element].onMix) {
elements[pixel1.element].onMix(pixel1,pixel2);
}
if (elements[pixel2.element].onMix) {
elements[pixel2.element].onMix(pixel2,pixel1);
if (exclude.includes(pixel1.element) || exclude.includes(pixel2.element)){
mixlist.splice(mixlist.indexOf(pixel1),1);
mixlist.splice(mixlist.indexOf(pixel2),1);
} else {
swapPixels(pixel1,pixel2);
mixlist.splice(mixlist.indexOf(pixel1),1);
mixlist.splice(mixlist.indexOf(pixel2),1);
if (elements[pixel1.element].onMix) {
elements[pixel1.element].onMix(pixel1,pixel2);
}
if (elements[pixel2.element].onMix ) {
elements[pixel2.element].onMix(pixel2,pixel1);
}
}
}
}
function smash(range, exclude = []){
let smashlist = [];
for (var i = 0; i < range.length; i++) {
var x = range[i][0];
var y = range[i][1];
if (!isEmpty(x,y,true)) {
var pixel = pixelMap[x][y];
if (elements[pixel.element].noMix !== true) {
smashlist.push(pixel);
}
}
}
for (var i = 0; i < smashlist.length; i++) {
var pixel1 = smashlist[Math.floor(Math.random()*smashlist.length)];
smashlist.splice(smashlist.indexOf(pixel1),1);
if (elements[pixel1.element].breakInto && !exclude.includes(pixel1.element)) {
if (Array.isArray(elements[pixel1.element].breakInto)){
changePixel(pixelMap[pixel1.x][pixel1.y], elements[pixel1.element].breakInto[Math.floor(Math.random()*elements[pixel1.element].breakInto.length)])
} else {
changePixel(pixelMap[pixel1.x][pixel1.y], elements[pixel1.element].breakInto)
}
}
}
}
function pull(range, pixel1, include = []){
let pulllist = [];
for (var i = 0; i < range.length; i++) {
var x = range[i][0];
var y = range[i][1];
if (!isEmpty(x,y,true)) {
var pixel = pixelMap[x][y];
if (elements[pixel.element].noMix !== true) {
pulllist.push(pixel);
}
}
}
for (var i = 0; i < pulllist.length; i++) {
var pixel = pulllist[Math.floor(Math.random()*pulllist.length)];
pulllist.splice(pulllist.indexOf(pixel),1);
if (elements[pixel.element].movable != false && include.includes(pixel.element)) {
for (var i = 0; i < pulllist.length; i++) {
if (pixelInRange(pulllist[i], range)) {
let Xdistance = pixel1.x - pixel.x;
let Ydistance = pixel1.y - pixel.y;
let newX = (Xdistance > pixel.x ? pixel.x + 3 : pixel.x + 1);
let newY = (Ydistance > pixel.y ? pixel.y + 3 : pixel.y + 1);
tryMove(pixel, newX, newY, undefined, false);
}
}
}
}
}

View File

@ -1,5 +1,5 @@
elements.beer = {
color: ["#ffc43d","#ffc43d","#ebc59f"],
color: ["#ffc43d","#ffc43d"],
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
@ -40,6 +40,7 @@ elements.chocolate_slushy = {
elements.chocolate_sauce = {
color: ["#491904","#54240b","#5e2d0b","#69371b","#764636"],
density: 10,
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
@ -52,6 +53,10 @@ elements.chocolate_ice_cream = {
category: "food",
state: "solid",
hidden: "TRUE",
density: 1096,
tempHigh: 15,
stateHigh: "cream",
temp: 0,
};
elements.fruit_ice_cream = {
@ -60,8 +65,41 @@ elements.fruit_ice_cream = {
category: "food",
state: "solid",
hidden: "TRUE",
density: 1096,
tempHigh: 15,
stateHigh: "cream",
temp: 0,
};
elements.mint_ice_cream = {
color: ["#ebfdff","#d5fff7","#ceffe9","#dfffde","#daffd5"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
hidden: "TRUE",
density: 1096,
tempHigh: 15,
stateHigh: "cream",
temp: 0,
reactions: {
"chocolate": { elem1: "mint_chocolate_ice_cream", elem2: null },
}
};
elements.mint_chocolate_ice_cream = {
color: ["#311e08","#d5fff7","#ceffe9","#dfffde","#daffd5",],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
hidden: "TRUE",
density: 1096,
tempHigh: 15,
stateHigh: "cream",
temp: 0,
};
elements.chocolate_yogurt = {
color: ["#654321","#71512b","#7e5f36","#8a6e42","#967d50"],
behavior: behaviors.STURDYPOWDER,
@ -91,6 +129,7 @@ elements.frozen_fruit_yogurt = {
density: 902,
tempHigh: 0,
stateHigh: "fruit_yogurt",
temp: 0,
};
elements.frozen_chocolate_yogurt = {
@ -102,6 +141,7 @@ elements.frozen_chocolate_yogurt = {
density: 902,
tempHigh: 0,
stateHigh: "chocolate_yogurt",
temp: 0,
};
elements.cooking_oil = {
@ -169,8 +209,10 @@ elements.steampunk_pancakes = {
category: "machines",
state: "solid",
hidden: "TRUE",
//I have no idea why i added this, but when i removed it and started the mod, the mod removed itself. Words can't explain my fucking confusion.
};
elements.churros = {
color: ["#ce9958","#b8732d","#9f633b"],
behavior: behaviors.POWDER,
@ -264,6 +306,36 @@ elements.smashed_ice = {
state: "solid",
reactions: {
"grape": { elem1: null, elem2: "fruit_slushy" },
"blood_orange": { elem1: null, elem2: "fruit_slushy" },
"canary_melon": { elem1: null, elem2: "fruit_slushy" },
"honeydew_melon": { elem1: null, elem2: "fruit_slushy" },
"cranberry": { elem1: null, elem2: "fruit_slushy" },
"pitaya": { elem1: null, elem2: "fruit_slushy" },
"coconut": { elem1: null, elem2: "fruit_slushy" },
"cloudberry": { elem1: null, elem2: "fruit_slushy" },
"crabapple": { elem1: null, elem2: "fruit_slushy" },
"cactus_pear": { elem1: null, elem2: "fruit_slushy" },
"pear": { elem1: null, elem2: "fruit_slushy" },
"purpleberry": { elem1: null, elem2: "fruit_slushy" },
"yellowberry": { elem1: null, elem2: "fruit_slushy" },
"pomegranate": { elem1: null, elem2: "fruit_slushy" },
"guava": { elem1: null, elem2: "fruit_slushy" },
"raspberry": { elem1: null, elem2: "fruit_slushy" },
"gooseberry": { elem1: null, elem2: "fruit_slushy" },
"fig": { elem1: null, elem2: "fruit_slushy" },
"durian": { elem1: null, elem2: "fruit_slushy" },
"passionfruit": { elem1: null, elem2: "fruit_slushy" },
"starfruit": { elem1: null, elem2: "fruit_slushy" },
"rambutan": { elem1: null, elem2: "fruit_slushy" },
"nance": { elem1: null, elem2: "fruit_slushy" },
"nectarine": { elem1: null, elem2: "fruit_slushy" },
"loganberry": { elem1: null, elem2: "fruit_slushy" },
"currant": { elem1: null, elem2: "fruit_slushy" },
"banana": { elem1: null, elem2: "fruit_slushy" },
"blackberry": { elem1: null, elem2: "fruit_slushy" },
"blueberry": { elem1: null, elem2: "fruit_slushy" },
"green_apple": { elem1: null, elem2: "fruit_slushy" },
"lemon": { elem1: null, elem2: "fruit_slushy" },
"green_grape": { elem1: null, elem2: "fruit_slushy" },
"cherry": { elem1: null, elem2: "fruit_slushy" },
"apple": { elem1: null, elem2: "fruit_slushy" },
@ -316,6 +388,60 @@ elements.moth = {
stateLow: "dead_bug",
};
elements.parrot = {
color: ["#234d20","#36802d","#77ab59","#c9df8a","#f0f7da","#f90f0b","#f7ab4d","#fdfc0d","#0564b2","#60a3e6"],
behavior: behaviors.FLY,
category: "life",
state: "solid",
burn: 40,
burnTime: 100,
density: 400,
breakInto: ["feather","blood"],
tempHigh: 120,
stateHigh: "cooked_meat",
tempLow: -18,
stateLow: "frozen_meat",
reactions: {
"fly": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"firefly": { elem2:null, chance:0.3, func:behaviors.FEEDPIXEL },
"bee": { elem2:null, chance:0.05, func:behaviors.FEEDPIXEL },
"worm": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"ant": { elem2:null, chance:0.025, func:behaviors.FEEDPIXEL },
"dead_bug": { elem2:null, chance:0.04, func:behaviors.FEEDPIXEL },
"lichen": { elem2:null, chance:0.04, func:behaviors.FEEDPIXEL },
"termite": { elem2:null, chance:0.025, func:behaviors.FEEDPIXEL },
"flea": { elem2:null, chance:0.025, func:behaviors.FEEDPIXEL },
"mushroom_cap": { elem2:null, chance:0.025, func:behaviors.FEEDPIXEL },
"mushroom_gill": { elem2:null, chance:0.025, func:behaviors.FEEDPIXEL },
"seeds": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"flower_seed": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"wheat_seed": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"corn_seed": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"corn": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"potato_seed": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"grass_seed": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"crumb": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"pumpkin": { elem2:null, chance:0.025, func:behaviors.FEEDPIXEL },
"pumpkin_seed": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
"plague": { elem1:"plague", chance:0.05 },
"oxygen": { elem2:"carbon_dioxide", chance:0.5 }
},
foodNeed: 20,
temp: 41,
tempHigh: 120,
stateHigh: "cooked_meat",
stateHighColor: "#E4CFB9",
tempLow: -18,
stateLow: "frozen_meat",
category:"life",
burn:50,
burnTime:100,
breakInto: ["feather","blood"],
state: "solid",
density: 400,
conduct: 0.5
};
elements.cherry = {
color: ["#ff0000","#e30202","#c00000","#9c0101"],
behavior: behaviors.POWDER,
@ -383,6 +509,61 @@ elements.kiwi = {
breakIntoColor: ["#a9c77e","#bad98f"],
};
elements.blueberry = {
color: ["#3e476f","#49598c","#5076b0","#5086c1","#8aa4ff"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
tempHigh: 256,
stateHigh: "steam",
breakIntoColor: ["#8abeee","#8aacf4","#9591ee","#787fdb","#7c74ce"],
};
elements.plum = {
color: ["#b62d82","#951661","#7c1249","#52001e","#360011"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
tempHigh: 256,
stateHigh: "steam",
breakIntoColor: ["#bf66c9","#d499db","#eacced"],
};
elements.blackberry = {
color: ["#2b0521","#3e0930","#4f123e","#601a4c","#6b2356"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
tempHigh: 256,
stateHigh: "steam",
breakIntoColor: ["#a941a1","#ba59b2","#c570bf"],
};
elements.peach = {
color: ["#f6a192","#f6b092","#f6c492","#f6cf92","#f6d992"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
tempHigh: 256,
stateHigh: "steam",
breakIntoColor: ["#fce5b8","#fcdab8","#fccfb8"],
};
elements.lemon = {
color: ["#ffaa1d","#ffd300","#ffdf00","#ffff00","#fff44f"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
tempHigh: 256,
stateHigh: "steam",
breakIntoColor: ["#f8ff80","#f6ff6c","#f5ff57","#f3ff39","#f0ff00"],
};
elements.green_grape = {
color: ["#b6f271","#a1f02f","#97d60c","#65ba14","#8bc33a"],
behavior: behaviors.POWDER,
@ -406,6 +587,241 @@ elements.banana = {
}
};
elements.blood_orange = {
color: ["#db4437","#fc3d39","#e5302d","#f6602d","#f65026"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ff4600","#ff8353"],
};
elements.canary_melon = {
color: ["#e9ff0c","#e9ff0c","#ffed0c"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ffff9e","#fffcaa"],
};
elements.honeydew_melon = {
color: ["#b9ffa3","#c9ffa3","#d9ffa3"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#e9ffa3","#f9ffa3"],
};
elements.cranberry = {
color: ["#471016","#7a1927","#69202f"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "sauce",
breakIntoColor: ["#ba4242","#7a1717"],
reactions: {
"soda": { elem1: null, elem2: "sprite_cranberry" },
}
};
elements.pitaya = {
color: ["#f6a9d8","#d4306e","#6ab81f"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ff84ae","#ffafca"],
};
elements.coconut = {
color: ["#6b3314","#583203","#673e1c"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "milk",
breakIntoColor: ["#f7e5d8","#fdefe5","#fff7f1"],
};
elements.cloudberry = {
color: ["#ff9636","#ffb169","#ffc896"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ffe1c7","#fff9f3"],
};
elements.crabapple = {
color: ["#850b0b","#a32d2d","#ab4545"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ff8fcf","#ffb2de"],
};
elements.cactus_fruit = {
color: ["#ff95b0","#ff80a0","#ff7489"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#75d802","#72d202"],
};
elements.pear = {
color: ["#669900","#669933","#9ec419"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#c8e39e","#99cc99"],
};
elements.purpleberry = {
color: ["#8b04a8","#a236b9","#b968cb"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#c08cc3","#e49cc2"],
};
elements.yellowberry = {
color: ["#ffe505","#fffb05","#fdfa72"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#fffec8","#fffdaf"],
};
elements.pomegranate = {
color: ["#950000","#c93434","#df5555","#8f163f","#6d0606"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ee717f","#e94254"],
};
elements.guava = {
color: ["#1ae132","#44e788","#0a7a22"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ff5a76","#ff8fa2"],
};
elements.raspberry = {
color: ["#f90064","#980036","#60081a"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#f23a72","#fb79a0"],
};
elements.gooseberry = {
color: ["#63041c","#760024","#81052a"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#8b0031","#920436"],
};
elements.fig = {
color: ["#1d1d3b","#2a2854","#402459"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ff4a4a","#ea3838"],
};
elements.durian = {
color: ["#b07939","#c09461","#d0af88"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#faffaf","#fbffbf"],
};
elements.passionfruit = {
color: ["#9d3385","#b15c9d","#c485b6"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ffdede","#ffe4e4"],
};
elements.starfruit = {
color: ["#d5eb00","#ddef33","#e6f366"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#f2d553","#f5dd75"],
};
elements.rambutan = {
color: ["#ff4a4a","#ea3838"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#faffaf","#fbffbf"],
};
elements.nance = {
color: ["#ffff00","#ffff33"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ffff66","#ffff99"],
};
elements.nectarine = {
color: ["#c92c0f","#cc4c58","#ea6161"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ffbd8b","#ffdbc0"],
};
elements.loganberry = {
color: ["#db1515","#e53939","#fd5f5f"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ff8f8f","#ffb7b7"],
};
elements.currant = {
color: ["#ff1828","#ff505c"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#ff878f","#ffbcc0"],
};
elements.sprite_cranberry = {
color: ["#65000f","#89001c","#b40024"],
behavior: behaviors.LIQUID,
category: "liquids",
state: "solid",
};
elements.mint = {
color: ["#72e88d","#53bd6c"],
behavior: behaviors.STURDYPOWDER,
@ -413,9 +829,55 @@ elements.mint = {
state: "solid",
reactions: {
"cream": { elem1: null, elem2: "toorhpaste" },
"ice_cream": { elem1: null, elem2: "mint_ice_cream" },
}
};
elements.broccoli = {
color: ["#004909","#046b00","#0b8500"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#00b215","#0b8500"],
};
elements.squash = {
color: ["#f2ab15","#f5bc44","#f7cd73"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#efbe79","#ffd599"],
};
elements.zuchinni = {
color: ["#375822","#58704a","#73816a"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#80a568","#a3c88c"],
};
elements.olive = {
color: ["#445626","#52682d","#6e8b3d"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#d1ef71","#c1d64d"],
};
elements.eggplant = {
color: ["#490b43","#30093a","#23033a"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
breakIntoColor: ["#674ea7","#351c75"],
};
elements.potassium = {
color: "#a3a333",
behavior: behaviors.POWDER,
@ -426,12 +888,23 @@ elements.potassium = {
elements.onion = {
color: ["#62121b","#a92940","#c04b65","#d8699e"],
behavior: behaviors.STURDYPOWDER,
behavior:
[
["XX","CH:onion>stench","XX"],
["XX","XX","XX"],
["XX","M1","XX"]
],
category: "food",
state: "solid",
breakInto: ["stench", null, null, null, null],
};
elements.cinnamon = {
color: ["#cda67a","#986544","#6a462f"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
};
elements.garlic = {
color: ["#f7f3e1","#f6f3c3","#f0e6bd"],
@ -449,6 +922,37 @@ elements.garlic_clove = {
hidden: "TRUE",
};
elements.asparagus = {
color: ["#77ab56","#92bc78","#adcd9a"],
density: 675,
behavior: behaviors.POWDER,
category: "food",
state: "solid",
tempHigh: 173,
stateHigh: "roasted_asparagus",
burnInto: "ash",
burn: 10,
burnTime: 300,
breakInto: "juice",
breakIntoColor: "#c9ddbb",
};
elements.roasted_asparagus = {
color: ["#849273","#9aa58d","#c0cbb3"],
density: 675,
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
hidden: "TRUE",
breakInto: "juice",
breakIntoColor: ["#849273","#9aa58d","#c0cbb3"],
tempHigh: 400,
stateHigh: "ash",
burnInto: "ash",
burn: 20,
burnTime: 300,
};
elements.oreo = {
color: "#120600",
behavior: behaviors.STURDYPOWDER,
@ -467,6 +971,25 @@ elements.poison_oreo = {
hidden: "TRUE",
};
elements.cream_coffee = {
color: ["#dbc1ac","#967259","#634832"],
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
hidden: "TRUE",
tempLow: 0,
stateLow: "coffee_ice",
tempHigh: 130,
stateHigh: ["steam","fragrance"],
};
elements.seafoam = {
color: ["#a3c1ad","#a0d6b4","#5f9ea0","#317873","#49796b"],
behavior: behaviors.LIQUID,
category: "life",
state: "solid",
};
elements.toorhpaste = {
color: ["#31ffe0","#65ffe8","#97ffef","#c9fff7","#f3fffd"],
@ -502,7 +1025,6 @@ elements.toast.reactions.chocolate = { elem1: "oreo", elem2: null }
if (!elements.ketchup.reactions) elements.ketchup.reactions = {};
elements.ketchup.reactions.mayo = { elem1: "rose_sauce", elem2: null }
if (!elements.bread.reactions) elements.bread.reactions = {};
elements.bread.reactions.rotten_cheese = { elem1: "mold", elem2: null }
@ -541,6 +1063,8 @@ elements.baked_batter.reactions.mud = { elem1: "mold", elem2: null }
elements.sugar_ice.breakInto = "smashed_ice"
elements.algae.breakInto = "seafoam"
elements.battery.breakInto = "battery_acid"
elements.herb.breakInto = "seasoning"
@ -568,6 +1092,81 @@ elements.ice_cream.reactions.kiwi = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.green_grape = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.blood_orange = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.canary_melon = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.honeydew_melon = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.cranberry = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.pitaya = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.coconut = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.cloudberry = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.crabapple = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.cactus_fruit = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.pear = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.purpleberry = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.yellowberry = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.pomegranate = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.guava = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.raspberry = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.gooseberry = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.fig = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.durian = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.passionfruit = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.starfruit = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.rambutan = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.nance = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.nectarine = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.loganberry = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.currant = { elem1: "fruit_ice_cream", elem2: null }
if (!elements.ice_cream.reactions) elements.ice_cream.reactions = {};
elements.ice_cream.reactions.chocolate = { elem1: "chocolate_ice_cream", elem2: null }
@ -606,3 +1205,85 @@ elements.yogurt.reactions.chocolate_sauce = { elem1: "chocolate_yogurt", elem2:
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.melted_chocolate = { elem1: "chocolate_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.blood_orange = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.canary_melon = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.honeydew_melon = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.cranberry = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.pitaya = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.coconut = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.cloudberry = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.crabapple = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.cactus_fruit = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.pear = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.purpleberry = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.yellowberry = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.pomegranate = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.guava = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.raspberry = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.gooseberry = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.fig = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.durian = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.passionfruit = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.starfruit = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.rambutan = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.nance = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.nectarine = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.loganberry = { elem1: "fruit_yogurt", elem2: null }
if (!elements.yogurt.reactions) elements.yogurt.reactions = {};
elements.yogurt.reactions.currant = { elem1: "fruit_yogurt", elem2: null }
//dev notes area below
/*
uhhhh i just finished changing every color in the mod and now i have enough hex codes for a lifetime
oh god i added like 2 million new fruits
*/

View File

@ -12,13 +12,13 @@ elements.burnt_rice = {
};
elements.rice = {
viscosity: 10000,
isFood: true,
burnInto: "burnt_rice",
density: 696,
tempHigh: 232,
stateHigh: "burnt_rice",
color: "#d1d1d1",
behavior: behaviors.POWDER,
behavior: behaviors.LIQUID,
category: "food",
state: "liquid",
};
@ -87,6 +87,8 @@ elements.dark_oak = {
behavior: behaviors.WALL,
category: "solids",
state: "solid",
burn: 5,
burnTime: 300,
};
elements.dark_oak_wood = {
@ -96,6 +98,8 @@ elements.dark_oak_wood = {
behavior: behaviors.SUPPORT,
category: "land",
state: "solid",
burn: 5,
burnTime: 300,
};
elements.avocado = {
@ -233,10 +237,9 @@ elements.lemon = {
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "liquid",
}
elements.lemon.reactions = {
"juice": { elem1: null, elem2: "lemonade" }
reactions: {
"juice": {elem1: "lemonade", elem2: null},
}
};
elements.lemonade = {
@ -312,7 +315,7 @@ elements.cooked_ramen = {
color: "#ada24e",
behavior: behaviors.SUPPORT,
category: "food",
state: "liquid",
state: "solid",
}
elements.cereal = {
@ -335,17 +338,6 @@ elements.sushi = {
state: "liquid",
};
elements.indestructible_wall = {
noMix: true,
tempHigh: 99999999999999999999999999999999,
stateHigh: "void",
hardness: 1,
color: "#7a7a7a",
behavior: behaviors.WALL,
category: "solids",
state: "solid",
};
elements.diamond_ore = {
tempHigh: 1000,
stateHigh: "ash",
@ -666,6 +658,16 @@ elements.radioactive_toast = {
state: "liquid",
};
elements.radioactive_beans = {
hidden: true,
tempHigh: 1000,
stateHigh: "ash",
color: ["#34541f", "#994926"],
behavior: behaviors.RADPOWDER,
category: "food",
state: "liquid",
};
elements.shampoo = {
viscosity: 1000,
density: 500,
@ -847,8 +849,8 @@ elements.vanilla_ice_cream = {
category: "food",
state: "liquid",
reactions: {
"chocolate": { elem1: null, elem2: "chocolate_vanilla_ice_cream" },
"melted_chocolate": { elem1: null, elem2: "chocolate_vanilla_ice_cream" },
"chocolate": { elem1: null, elem2: "chocolate_vanilla_ice_cream", tempMin: 0 },
"melted_chocolate": { elem1: null, elem2: "chocolate_vanilla_ice_cream", tempMin: 0 },
}
};
@ -969,7 +971,7 @@ elements.cocoa_seeds = {
color: "#cfc7ab",
behavior: behaviors.SUPPORT,
category: "food",
state: "liquid",
state: "solid",
};
elements.pineapple = {
@ -978,7 +980,7 @@ elements.pineapple = {
color: "#ccbe3b",
behavior: behaviors.SUPPORT,
category: "food",
state: "liquid",
state: "solid",
};
elements.broccoli = {
@ -997,7 +999,7 @@ elements.pepperoni = {
color: "#8f2e11",
behavior: behaviors.SUPPORT,
category: "food",
state: "liquid",
state: "solid",
};
elements.apple = {
@ -1030,7 +1032,7 @@ elements.cucumber = {
color: "#235214",
behavior: behaviors.SUPPORT,
category: "food",
state: "liquid",
state: "solid",
};
elements.olive = {
@ -1104,9 +1106,11 @@ elements.cardboard = {
tempHigh: 500,
stateHigh: "ash",
color: "#7d4725",
behavior: behaviors.STURDYPOWDER,
behavior: behaviors.SUPPORT,
category: "land",
state: "liquid",
state: "solid",
burn: 5,
burnTime: 200,
};
elements.carrot = {
@ -1205,7 +1209,7 @@ elements.peeper = {
state: "solid",
};
elements.dollar = {
elements.robux = {
hidden: true,
viscosity: 10000,
tempHigh: 500,
@ -1225,43 +1229,206 @@ elements.ruby = {
state: "solid",
};
elements.mosquito = {
tempHigh: 2000,
stateHigh: "ash",
color: "#2b2421",
behavior: behaviors.FLY,
category: "life",
state: "liquid",
};
elements.bug_spray = {
tempHigh: 2000,
stateHigh: "steam",
color: "#c9d1cb",
behavior: behaviors.DGAS,
category: "gases",
state: "gas",
reactions: {
"mosquito": { elem1: null, elem2: null },
"ant": { elem1: null, elem2: null },
"fly": { elem1: null, elem2: null },
"stink_bug": { elem1: null, elem2: null },
}
};
elements.heavy_water = {
tempLow: 0,
stateLow: "ice",
tempHigh: 150,
stateHigh: "steam",
color: "#447ecf",
behavior: behaviors.LIQUID_OLD,
category: "liquids",
state: "liquid",
};
elements.blood_orange = {
hidden: true,
tempHigh: 300,
stateHigh: ["ash", "steam"],
color: ["#f06c0e", "#bd1000"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "liquid",
};
elements.orange = {
tempHigh: 300,
stateHigh: "steam",
color: "#f06c0e",
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "liquid",
reactions: {
"blood": { elem1: null, elem2: "blood_orange", chance: 0.01 },
}
};
elements.cranberry = {
viscosity: 10000,
hidden: true,
tempHigh: 300,
stateHigh: "steam",
color: "#ad2a1d",
behavior: behaviors.LIQUID,
category: "food",
state: "liquid",
};
elements.yoyleberries = {
desc: "who the fuck requested yoylecake?",
viscosity: 10000,
hidden: true,
tempHigh: 300,
stateHigh: "steam",
color: "#630094",
behavior: behaviors.LIQUID,
category: "food",
state: "liquid",
reactions: {
"batter": { elem1: null, elem2: "yoylecake" },
}
};
elements.yoylecake = {
hidden: true,
tempHigh: 500,
stateHigh: "steam",
color: ["#9404db", "#28b82b"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "liquid",
};
elements.banana = {
tempHigh: 300,
stateHigh: "ash",
color: "#f06c0e",
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "liquid",
};
elements.cool_ray = {
color: ["#0cdaed","#baf9ff"],
tick: function(pixel) {
var x = pixel.x;
for (var y = pixel.y; y < height; y++) {
if (outOfBounds(x, y)) {
break;
}
if (isEmpty(x, y)) {
if (Math.random() > 0.05) { continue }
createPixel("flash", x, y);
pixelMap[x][y].color = "#0cdaed";
pixelMap[x][y].temp = 0;
}
else {
if (elements[pixelMap[x][y].element].isGas) { continue }
if (elements[pixelMap[x][y].element].id === elements.heat_ray.id) { break }
pixelMap[x][y].temp += -10;
pixelTempCheck(pixelMap[x][y]);
break;
}
}
deletePixel(pixel.x, pixel.y);
},
temp: 0,
category: "energy",
state: "gas",
excludeRandom: true,
noMix: true
};
elements.flood_disaster = {
color: "#5397c2",
behavior: [
"XX|XX|XX",
"XX|EX:10>flood_disaster,water,water,water,water,water,water,water,water,water,water,water,water%25 AND DL%10|XX",
"XX|XX|XX",
],
category: "weapons",
state: "solid",
density: 1300,
hidden: true,
excludeRandom: true,
maxSize: 1,
cooldown: defaultCooldown
};
elements.uranium_ice_cream = {
viscosity: 10000,
tempHigh: 150,
stateHigh: "steam",
color: ["#cee6cc", "#1bab11", "#305e2d", "#5a7059"],
behavior: [
"XX|CR:radiation%2|XX",
"M2|XX|M2",
"M2|M1|M2",
],
category: "food",
state: "liquid",
};
elements.incinerate.category = "tools",
elements.cook.category = "tools",
elements.room_temp.category = "tools",
elements.beans.tempHigh = 349,
elements.beans.stateHigh = "burnt_beans",
elements.beans.stateHigh = "burnt_beans"
elements.radiation.reactions = {
"meat": { elem1: null, elem2: "radioactive_meat" },
"grape": { elem1: null, elem2: "radioactive_grape" },
"egg": { elem1: null, elem2: "radioactive_egg" },
"potato": { elem1: null, elem2: "radioactive_potato" },
"water": { elem1: null, elem2: "radioactive_water" },
"chocolate": { elem1: null, elem2: "radioactive_chocolate" },
"milk": { elem1: null, elem2: "radioactive_milk" },
"bread": { elem1: null, elem2: "radioactive_bread" },
"toast": { elem1: null, elem2: "radioactive_toast" },
};
if (!elements.radiation.reactions) elements.egg.reactions = {};
elements.radiation.reactions.meat = { elem1: null, elem2: "radioactive_meat" },
elements.radiation.reactions.grape = { elem1: null, elem2: "radioactive_grape" },
elements.radiation.reactions.egg = { elem1: null, elem2: "radioactive_egg" },
elements.radiation.reactions.potato = { elem1: null, elem2: "radioactive_potato" },
elements.radiation.reactions.water = { elem1: null, elem2: "radioactive_water" },
elements.radiation.reactions.chocolate = { elem1: null, elem2: "radioactive_chocolate" },
elements.radiation.reactions.milk = { elem1: null, elem2: "radioactive_milk" },
elements.radiation.reactions.bread = { elem1: null, elem2: "radioactive_bread" },
elements.radiation.reactions.toast = { elem1: null, elem2: "radioactive_toast" },
elements.radiation.reactions.beans = { elem1: null, elem2: "radioactive_beans" }
elements.egg.reactions = {
"water": { elem1: "boiled_egg", tempMin: 100 },
"steam": { elem1: "boiled_egg", tempMin: 100 },
"melted_chocolate": { elem1: null, elem2: "chocolate_egg" },
"chocolate": { elem1: null, elem2: "chocolate_egg", chance: 0.1 },
};
if (!elements.egg.reactions) elements.egg.reactions = {};
elements.egg.reactions.water = {elem1: "boiled_egg", tempMin: 100},
elements.egg.reactions.steam = {elem1: "boiled_egg", tempMin: 100},
elements.egg.reactions.melted_chocolate = {elem1: "chocolate_egg"},
elements.egg.reactions.chocolate = {elem1: "chocolate_egg", chance: 0.1}
elements.potato.reactions = {
"water": { elem1: "fries", tempMin: 100, chance: 50 },
"water": { elem1: "chips", tempMin: 100, chance: 50 },
"steam": { elem1: "fries", tempMin: 100, chance: 50 },
"steam": { elem1: "fries", tempMin: 100, chance: 50 },
};
if (!elements.potato.reactions) elements.potato.reactions = {};
elements.potato.reactions.water = {elem1: "fries", tempMin: 100, chance:50},
elements.potato.reactions.steam = {elem1: "fries", tempMin: 100, chance:50},
elements.potato.reactions.water = {elem1: "chips", tempMin: 100, chance:50},
elements.potato.reactions.steam = {elem1: "fries", tempMin: 100, chance:50}
elements.water.reactions = {
"cocaine": { elem1: null, elem2: "solid_water", chance: 0.1 }
};
if (!elements.water.reactions) elements.water.reactions = {};
elements.water.reactions.cocaine = { elem1: "solid_water", elem2: null }
elements.paper.reactions = {
"bless": { elem1: null, elem2: "dollar", chance: 0.1 },
};
if (!elements.paper.reactions) elements.paper.reactions = {};
elements.paper.reactions.bless = { elem1: "robux", elem2: null, chance: 0.001 }
if (!elements.uranium.reactions) elements.uranium.reactions = {};
elements.uranium.reactions.ice_cream = {elem1: "uranium_ice_cream", elem2: null},
elements.uranium.reactions.cream = {elem1: "uranium_ice_cream", elem2: null}

View File

@ -47,7 +47,7 @@ elements.pumice = {
stateHigh: "magma",
hardness: 0.5,
},
elements.magma.stateLow = ["basalt","basalt","basalt","pumice","doritoite","basalt","rock","obsidian_shard","diorite","andesite"],
elements.magma.stateLow = ["basalt","basalt","basalt","pumice","basalt","rock","obsidian_shard","diorite","andesite","basalt","basalt","basalt","pumice","basalt","rock","obsidian_shard","diorite","andesite","doritoite"],
elements.eruption = {
color: ["#ff6f00","#ff8c00","#ff4d00"],
behavior: [
@ -62,7 +62,7 @@ elements.magma.stateLow = ["basalt","basalt","basalt","pumice","doritoite","basa
},
elements.andesite = {
color: "#777C7C",
behavior: behaviors.SOLID,
behavior: behaviors.POWDER,
category: "land",
state: "solid",
density: 2771,
@ -71,7 +71,7 @@ elements.andesite = {
},
elements.diorite = {
color: ["#d4d4d4","#2b2b2b"],
behavior: behaviors.SOLID,
behavior: behaviors.POWDER,
category: "land",
state: "solid",
density: 2900,
@ -89,5 +89,6 @@ elements.andesite = {
reactions: {
"head": { elem1: "null" },
},
isFood: true
isFood: true,
hidden: true
};