diff --git a/mod-list.html b/mod-list.html
index b20fb6ae..2edc2e39 100644
--- a/mod-list.html
+++ b/mod-list.html
@@ -201,6 +201,7 @@
| Food & Cooking |
| bananas.js | Adds bananas and banana plants | Alice |
| greenitemsandmore.js | Adds various green things, including apples and more food | zonneschijn7 |
+
| food&animals.js | Adds more food and animals | SquareScreamYT and RealerRaddler |
| ketchup_mod.js | Adds a bunch of ketchup related stuff, plus a few other condiments | Nubo318 (main dev), Devi, Alice (contributors) |
| lemonade.js | Adds lemons and lemonade | personman / baconthemyth |
| morefoodsmod.js | Adds more foods | Clide4 |
@@ -218,6 +219,7 @@
| fantastic_creatures.js | Adds various animals | Melecie |
| fantasy_elements.js | Fantasy creatures and substances | pixelegend4 |
| fey_and_more.js | Adds fairies, magic, and a lot of other things | Melecie |
+| food&animals.js | Adds more food and animals | SquareScreamYT and RealerRaddler |
| fwibblen.js | Adds a flying creature that turns nickel into itself, and a second creature that does the same to the first one | Alice |
| human_edit.js | Improvements to humans | Alice |
| miscible_psoup_and_birthpool.js | Makes Primordial Soup and Birthpool mix instead of the birthpool settling to the bottom. Will be deprecated upon the release of Magical Menagerie | Alice |
diff --git a/mods/fantasy_elements.js b/mods/fantasy_elements.js
index 5eb5b959..f7fd6f6e 100644
--- a/mods/fantasy_elements.js
+++ b/mods/fantasy_elements.js
@@ -137,6 +137,41 @@ elements.iced_pheonix = {
},
};
+// placed both sceptrium and sceptrium_dust here -part of 1.3 update-
+// -open-
+elements.sceptrium = {
+ color: "#add8e6",
+ behavior: behaviors.SOLID,
+ category: "fantasy",
+ state: "solid",
+ density: 1500,
+ weight: 100,
+ reactions: {
+ "water": { elem1: "sceptrium", elem2: "sceptrium_dust" },
+ "fire": { elem1: "sceptrium", elem2: "sceptrium_dust" },
+ "plasma": { elem1: "sceptrium", elem2: "sceptrium_dust" },
+ "laser": { elem1: "sceptrium", elem2: "sceptrium_dust" },
+ "explosion": { elem1: "sceptrium", elem2: "sceptrium_dust" },
+ },
+};
+
+elements.sceptrium_dust = {
+ color: ["#87ceeb", "#add8e6", "#b0e0e6"],
+ behavior: behaviors.POWDER,
+ category: "fantasy",
+ state: "solid",
+ density: 0.5,
+ weight: 1,
+ reactions: {
+ "water": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
+ "fire": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
+ "plasma": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
+ "laser": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
+ "explosion": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
+ },
+};
+// -end-
+
// New Fantasy Elements with Updated Reactions
elements.dragon_scale = {
color: "#8B4513",
@@ -333,6 +368,13 @@ elements.goblin = {
"category":"fantasy",
reactions: {
"goblins_delight": { elem2:null, chance:0.9 },
+ "plasma": { elem2: "goblin_soul", elem2: "goblin_soul" },
+ "fire": { elem2: "goblin_soul", elem2: "goblin_soul" },
+ "incinerate": { elem2: "goblin_soul", elem2: "goblin_soul" },
+ "heat_ray": { elem2: "goblin_soul", elem2: "goblin_soul" },
+
+
+
},
};
@@ -348,34 +390,221 @@ elements.fenzium = {
}
};
-elements.sceptrium = {
- color: "#add8e6",
+elements.goblin_feeder = {
+ color: ["#307D7E", "#98FF98"],
behavior: behaviors.SOLID,
category: "fantasy",
- state: "solid",
- density: 1500,
- weight: 100,
+ state: "soid",
+ density: 1000,
+ viscosity: 1,
+ weight: 300,
+ temperature: 20,
reactions: {
- "water": { elem1: "sceptrium", elem2: "sceptrium_dust" },
- "fire": { elem1: "sceptrium", elem2: "sceptrium_dust" },
- "plasma": { elem1: "sceptrium", elem2: "sceptrium_dust" },
- "laser": { elem1: "sceptrium", elem2: "sceptrium_dust" },
- "explosion": { elem1: "sceptrium", elem2: "sceptrium_dust" },
+ "fire": { elem1: "pulsium_bar", elem2: null },
+ },
+ tick: function(pixel) {
+ if (Math.random() < 0.05) {
+ createPixel("goblins_delight", pixel.x, pixel.y);
+ }
},
};
-elements.sceptrium_dust = {
- color: ["#87ceeb", "#add8e6", "#b0e0e6"],
+// fantasy_elements.js version 1.3
+
+elements.thanosium = {
+ color: ["#8803fc", "#db03fc", "#ad03fc", "#cf03fc"],
+ behavior: behaviors.SOLID,
+ category: "fantasy",
+ state: "solid",
+ density: 1900,
+ breakInto: "thanosium_dust",
+ weight: 100,
+};
+
+elements.thanosium_dust = {
+ color: ["#8803fc", "#ad03fc", "#cf03fc", "#b12ee6", "#d62ee6", "#a8329d"],
+ behavior: behaviors.POWDER,
+ category: "fantasy",
+ state: "powder",
+ density: 1900,
+ weight: 100,
+ reactions: {
+ "diamond": { func: function(pixel1, pixel2){
+ autoResizeCanvas();
+ }
+ }
+}
+};
+
+elements.exterminator_bomb = {
+ color: ["#23969e", "#28aeb8", "#2ec6d1", "#34deeb"],
+ behavior: [
+ "XX|EX:90>uranium,plasma,H_bomb,nuke,fire|XX",
+ "XX|XX|XX",
+ "M2|M1 AND EX:90>plasma,plasma,ember,fire,fire|M2",
+ ],
+ category: "fantasyweapons",
+ state: "solid",
+ density: 2000,
+ excludeRandom: true,
+};
+
+elements.heat_bomb = {
+ color: ["#ff7700", "#ffbf00"],
+ behavior: [
+ "XX|EX:90>heat_ray,heat_ray,heat_ray,heat_ray,heat_ray|XX",
+ "XX|XX|XX",
+ "M2|M1 AND EX:90>heat_ray,heat_ray,heat_ray,heat_ray,heat_ray|M2",
+ ],
+ category: "fantasyweapons",
+ state: "solid",
+ density: 2000,
+ excludeRandom: true,
+};
+elements.goblin_soul = {
+ color: ["#9fff05","#92e807","#56fc03","#4fe007","#07e03a","#19e649","#19e6b6"],
+ behavior: behaviors.FLY,
+ category: "fantasy",
+ state: "gas",
+ density: 1000,
+};
+
+elements.rainbow_flash = {
+ color: ["#ff0800","#ffae00","#ffe100","#51ff00","#005eff","#a200ff"],
+ tick: function(pixel) {
+ if (Math.random() < 3 && pixelTicks - pixel.start > 4) {
+ deletePixel(pixel.x, pixel.y)
+ }
+ },
+ reactions: {
+ "fire": { elem1:"rainbow_bomb" },
+ },
+ category: "fantasy",
+ temp: 40,
+ state: "gas",
+ density: 1,
+ tempLow: -270,
+ stateLow: "light",
+};
+elements.rainbow_bomb = {
+ color: ["#ff0800","#ffae00","#ffe100","#51ff00","#005eff","#a200ff"],
+ behavior: [
+ "XX|EX:90>rainbow_flash,rainbow_flash,rainbow_flash,rainbow_flash,rainbow_flash|XX",
+ "XX|XX|XX",
+ "M2|M1 AND EX:90>rainbow_flash,rainbow_flash,rainbow_flash,rainbow_flash,rainbow_flash|M2",
+ ],
+ category: "fantasyweapons",
+ state: "solid",
+ density: 2500,
+ excludeRandom: true,
+};
+elements.cryptoberry = {
+ color: ["#34d8eb","#34e6fa","#24d9ed"],
behavior: behaviors.POWDER,
category: "fantasy",
state: "solid",
- density: 0.5,
- weight: 1,
- reactions: {
- "water": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
- "fire": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
- "plasma": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
- "laser": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
- "explosion": { elem1: "sceptrium_dust", elem2: "sceptrium_dust" },
+ density: 800,
+ breakInto: "cryptoberry_juice",
+ isFood: true,
+};
+elements.cryptoberry_juice = {
+ color: ["#34c9eb","#34d5eb","#34b7eb"],
+ behavior: behaviors.LIQUID,
+ category: "fantasy",
+ state: "solid",
+ density: 800,
+ isFood: true,
+};
+
+// adds more reactions to existing elements -part if 1.3 update-
+// -open-
+elements.water.reactions.cryptoberry_juice = {elem2: "shadowberry_juice", tempMin: 80}
+// -close-
+elements.shadowberry = {
+ color: "#ab34eb",
+ behavior: behaviors.POWDER,
+ category: "fantasy",
+ state: "solid",
+ density: 800,
+ breakInto: "shadowberry_juice",
+ isFood: true,
+};
+elements.shadowberry_juice = {
+ color: "#a600ff",
+ behavior: behaviors.LIQUID,
+ category: "fantasy",
+ state: "solid",
+ density: 800,
+ isFood: true,
+ reactions: {
+ "human": { elem1: "radiation", elem2: "radiation" },
+ },
+};
+elements.Frostberry = {
+ color: "#25f5cf",
+ behavior: behaviors.POWDER,
+ category: "fantasy",
+ state: "solid",
+ density: 800,
+ breakInto: "Frostberry_juice",
+ isFood: true,
+};
+elements.Frostberry_juice = {
+ color: "#25f5e0",
+ behavior: behaviors.LIQUID,
+ category: "fantasy",
+ state: "solid",
+ density: 800,
+ isFood: true,
+ reactions: {
+ "human": { elem1: "snow", elem2: "snow" },
+ },
+};
+elements.abyssberry = {
+ color: "#676b68",
+ behavior: behaviors.POWDER,
+ category: "fantasy",
+ state: "solid",
+ density: 800,
+ breakInto: "abyssberry_juice",
+};
+elements.abyssberry_juice = {
+ color: "#818a84",
+ behavior: behaviors.LIQUID,
+ category: "fantasy",
+ state: "solid",
+ density: 800,
+ isFood: true,
+ reactions: {
+ "shadowberry_juice": { elem1: "snow", elem2: "snow" },
+ },
+};
+
+//1.3.1 minor update
+// below
+
+elements.cicium = {
+ color: "#4287f5",
+ behavior: behaviors.WALL,
+ category: "fantasy",
+ state: "solid",
+};
+
+elements.Verdantium = {
+ color: ["#00c8f0", "#00bcf0","#00d8f0","#27b4e3","#0aaaf5"],
+ behavior: behaviors.LIQUID,
+ category: "fantasy",
+ state: "solid",
+ isFood: false,
+};
+
+elements.nebulaflare_wall = {
+ color: ["#7500FF", "#00FFFB", "#FF00FC"],
+ behavior: behaviors.WALL,
+ state: "solid",
+ density: 0.1,
+ category: "fantasy",
+ reactions: {
+ "water": { elem1: "nebulaflare", elem2: "nebulaflare" },
},
};
diff --git a/mods/food&animals.js b/mods/food&animals.js
new file mode 100644
index 00000000..6b2e1269
--- /dev/null
+++ b/mods/food&animals.js
@@ -0,0 +1,582 @@
+/*
+
+food&animals.js
+
+MORE FOODS AND ANIMALS!!
+
+Created by @SquareScreamYT and @RealerRaddler
+
+v1.0
+
+Changelog (v1.0)
+ - added chickens
+ - lays chicken eggs
+ - added chicks
+ - hatches from chicken eggs
+ - grows into chickens
+ - added chicken eggs
+ - added frozen chicken eggs
+ - added hard boiled eggs
+ - made by putting chicken eggs in hot water
+ - added soup
+ - made from broth and water
+ - added noodles
+ - made by putting batter in hot water
+ - added chicken meat
+ - raw chicken meat
+ - cooked chicken meat
+ - battered raw chicken
+ - made by mixing raw chicken and batter
+ - raw chicken nuggets
+ - made by mixing battered raw chicken with crumbs
+ - (cooked) chicken nuggets
+ - added crushed worm
+ - chicken food
+ - made by smashing worms or mixing worms with rocks
+ - added frozen crushed worms
+ - added fried potato
+ - made by putting potatoes in hot cooking oil
+ - added smoked chicken
+ - made by putting raw chicken with smoke
+ - added boiled chicken
+ - made by putting raw chicken in hot water
+ - added fried chicken
+ - made by putting raw chicken in hot cooking oil
+ - added steamed chicken
+ - made by putting raw chicken with steam
+ - added olives
+ - added olives
+ - olives can be smashed into cooking oil
+ - added olive wood
+ - added olive branches
+ - added olive leaves
+ - added cooking oil
+*/
+elements.chicken = {
+ color: ["#c29046", "#f5d271", "#d4bd7d"],
+ behavior: [
+ "M2%1|M2%2|M2%1",
+ "M2%10|XX|M2%10",
+ "XX|M1%33|XX",
+ ],
+ category:"life",
+ state: "solid",
+ reactions: {
+ "meat": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "chicken_nugget": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "grass": { elem2:null, chance:0.1, func:behaviors.FEEDPIXEL },
+ "worm": { elem2: "crushed_worm", chance:0.3},
+ "cooked_meat": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "fish": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
+ "rat": { elem2:null, chance:0.05, func:behaviors.FEEDPIXEL },
+ "snail": { elem2:null, chance:0.05, func:behaviors.FEEDPIXEL },
+ "frog": { elem2:null, chance:0.1, func:behaviors.FEEDPIXEL },
+ "slug": { elem2:null, chance:0.1, func:behaviors.FEEDPIXEL },
+ "grape": { elem2:null, chance:0.3, func:behaviors.FEEDPIXEL },
+ "wheat_seed": { elem2:null, chance:0.4, func:behaviors.FEEDPIXEL },
+ "flower_seed": { elem2:null, chance:0.32, func:behaviors.FEEDPIXEL },
+ "corn_seed": { elem2:null, chance:0.35, func:behaviors.FEEDPIXEL },
+ "corn": { elem2:null, chance:0.4, func:behaviors.FEEDPIXEL },
+ "crumb": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
+ "potato_seed": { elem2:null, chance:0.4, func:behaviors.FEEDPIXEL },
+ "grass_seed": { elem2:null, chance:0.3, func:behaviors.FEEDPIXEL },
+ "pumpkin_seed": { elem2:null, chance:0.3, func:behaviors.FEEDPIXEL },
+ "pumpkin": { elem2:null, chance:0.1, func:behaviors.FEEDPIXEL },
+ "nut": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "dead_bug": { elem2:null, chance:0.35, func:behaviors.FEEDPIXEL },
+ "bee": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "ant": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "flea": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "termite": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "lichen": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "oxygen": { elem2:"carbon_dioxide", chance:0.3 },
+ "mercury": { elem1:"rotten_meat", chance:0.1 },
+ "bleach": { elem1:"rotten_meat", chance:0.1 },
+ "infection": { elem1:"rotten_meat", chance:0.025 },
+ "uranium": { elem1:"rotten_meat", chance:0.1 },
+ "cyanide": { elem1:"rotten_meat", chance:0.1 },
+ "chlorine": { elem1:"meat", chance:0.1 },
+ "dirty_water": { elem1:"rotten_meat", chance:0.0001 },
+ },
+ egg: "chicken_egg",
+ foodNeed: 10,
+ temp: 40,
+ tempHigh: 75,
+ stateHigh: "cooked_chicken",
+ tempLow: -18,
+ stateLow: "frozen_meat",
+ breakInto: ["feather", "raw_chicken"],
+ burn:85,
+ burnTime:450,
+ state: "solid",
+ density: 1117,
+ conduct: 0.3,
+};
+
+elements.chicken_egg = {
+ color: ["#e0d3ab","#d9cdb5"],
+ behavior: [
+ "XX|XX|XX",
+ "XX|FX%5 AND CH:chick%0.1|XX",
+ "M2%30|M1|M2%30",
+ ],
+ category: "food",
+ state: "solid",
+ temp: 30,
+ tempLow: -18,
+ stateLow: "frozen_chicken_egg",
+ breakInto: ["yolk"],
+ tempHigh: 500,
+ stateHigh: ["calcium", "ash"],
+ burn:50,
+ burnTime:450,
+ state: "solid",
+ density: 900,
+ conduct: 0.1,
+ reactions: {
+ "water": { elem1:null, elem2:"hard_boiled_egg", chance:10, tempMin:80 }
+ }
+};
+
+elements.frozen_chicken_egg = {
+ color: ["#e0d3cf","#d9cdd3"],
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ temp: -20,
+ tempHigh: 10,
+ stateHigh: "chicken_egg",
+ breakInto: ["calcium", "hard_yolk"],
+ burn:50,
+ burnTime:450,
+ state: "solid",
+ density: 900,
+ conduct: 0.1,
+ hidden: true,
+};
+
+elements.hard_boiled_egg = {
+ color: ["#e0d3ab","#d9cdb5","#e4d4b4","#f3f3ef"],
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ hidden: "TRUE",
+ tempHigh: 1000,
+ stateHigh: ["ash", "smoke"],
+ density: 820.33,
+ isFood: true,
+ hidden: true,
+};
+
+elements.chick = {
+ color: ["#ffdf85", "#ffef5c"],
+ behavior: [
+ "M2%1|M2%2|M2%1",
+ "M2%10|FX%5 AND CH:chicken%0.1|M2%10",
+ "XX|M1%33|XX",
+ ],
+ category: "life",
+ state: "solid",
+ egg: "chicken_egg",
+ foodNeed: 20,
+ temp: 40,
+ tempHigh: 75,
+ stateHigh: "cooked_meat",
+ tempLow: -18,
+ stateLow: "frozen_meat",
+ breakInto: "blood",
+ burn:85,
+ burnTime:450,
+ state: "solid",
+ density: 900,
+ conduct: 0.1,
+ reactions: {
+ "crushed_worm": { elem2:null, chance:0.4, func:behaviors.FEEDPIXEL},
+ "meat": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "chicken_nugget": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "grass": { elem2:null, chance:0.1, func:behaviors.FEEDPIXEL },
+ "worm": { elem2: "crushed_worm", chance:0.3},
+ "cooked_meat": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "fish": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
+ "rat": { elem2:null, chance:0.05, func:behaviors.FEEDPIXEL },
+ "snail": { elem2:null, chance:0.05, func:behaviors.FEEDPIXEL },
+ "frog": { elem2:null, chance:0.1, func:behaviors.FEEDPIXEL },
+ "slug": { elem2:null, chance:0.1, func:behaviors.FEEDPIXEL },
+ "grape": { elem2:null, chance:0.3, func:behaviors.FEEDPIXEL },
+ "wheat_seed": { elem2:null, chance:0.4, func:behaviors.FEEDPIXEL },
+ "flower_seed": { elem2:null, chance:0.32, func:behaviors.FEEDPIXEL },
+ "corn_seed": { elem2:null, chance:0.35, func:behaviors.FEEDPIXEL },
+ "corn": { elem2:null, chance:0.4, func:behaviors.FEEDPIXEL },
+ "crumb": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
+ "potato_seed": { elem2:null, chance:0.4, func:behaviors.FEEDPIXEL },
+ "grass_seed": { elem2:null, chance:0.3, func:behaviors.FEEDPIXEL },
+ "pumpkin_seed": { elem2:null, chance:0.3, func:behaviors.FEEDPIXEL },
+ "pumpkin": { elem2:null, chance:0.1, func:behaviors.FEEDPIXEL },
+ "nut": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "dead_bug": { elem2:null, chance:0.35, func:behaviors.FEEDPIXEL },
+ "bee": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "ant": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "flea": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "termite": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "lichen": { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL },
+ "oxygen": { elem2:"carbon_dioxide", chance:0.3 },
+ "mercury": { elem1:"rotten_meat", chance:0.1 },
+ "bleach": { elem1:"rotten_meat", chance:0.1 },
+ "infection": { elem1:"rotten_meat", chance:0.025 },
+ "uranium": { elem1:"rotten_meat", chance:0.1 },
+ "cyanide": { elem1:"rotten_meat", chance:0.1 },
+ "chlorine": { elem1:"meat", chance:0.1 },
+ "dirty_water": { elem1:"rotten_meat", chance:0.0001 },
+ }
+};
+
+elements.soup = {
+ color: "#fbd189",
+ behavior: behaviors.LIQUID,
+ tempHigh: 130,
+ stateHigh: ["steam","steam","steam","fragrance"],
+ tempLow: 0,
+ category: "food",
+ state: "liquid",
+ density: 1052,
+ conduct: 0.03,
+ stain: -0.01,
+ isFood: true,
+ hidden: true,
+}
+
+if (!elements.broth.reactions) elements.broth.reactions = {};
+elements.broth.reactions.water = { elem1: "soup", elem2: "soup" }
+
+elements.noodles = {
+ color: ["#F3BA4F", "#F7D161"],
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ temp: 30,
+ breakInto: ["crumb"],
+ tempHigh: 130,
+ stateHigh: ["toast"],
+ burn:50,
+ burnTime:450,
+ state: "solid",
+ density: 900,
+ conduct: 0.1,
+ hidden: true,
+};
+
+if (!elements.batter.reactions) elements.batter.reactions = {};
+elements.batter.reactions.water = {elem2: "noodles", tempMin: 70}
+
+elements.battered_raw_chicken = {
+ color: ["#eacfa9", "#ecd2af"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ temp:25,
+ tempHigh: 600,
+ stateHigh: ["ash","smoke"],
+ reactions: {
+ "crumb": { elem1: "raw_chicken_nugget", elem2: null },
+ },
+ hidden: true,
+};
+
+elements.steamed_chicken = {
+ color:["#cfba8f", "#d2b788"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ temp:50,
+ tempHigh: 600,
+ stateHigh: ["ash","smoke"],
+ isFood: true,
+ hidden: true,
+}
+
+elements.smoked_chicken = {
+ color:["#AF4523", "#AC481F"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ temp:55,
+ tempHigh: 600,
+ stateHigh: ["ash","smoke"],
+ isFood: true,
+ hidden: true,
+}
+
+elements.crushed_worm = {
+ color: ["#e56932", "#c0714e"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ temp: 20,
+ tempHigh: 50,
+ stateHigh: ["ash", "smoke"],
+ tempLow: -4,
+ stateLow: "frozen_worm",
+ density: 200.33,
+ isFood: true,
+ hidden: true,
+};
+
+elements.worm.reactions.rock = { elem1: "crushed_worm" }
+elements.worm.breakInto = "crushed_worm"
+
+elements.frozen_crushed_worm = {
+ color: ["#2fcbae", "#3edabd", "#b2d5d9"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ temp: -4,
+ tempHigh: 20,
+ stateHigh: "crushed_worm",
+ density: 200.33,
+ isFood: false,
+ hidden: true,
+};
+
+elements.cooked_chicken = {
+ color: ["#c17c20", "#ebad2b", "#f7b846"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ temp: 40,
+ tempHigh: 600,
+ stateHigh: ["ash", "smoke"],
+ hidden: true,
+};
+
+elements.raw_chicken = {
+ color: ["#dfc8bd", "#e2cdc0", "#b9a195"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ burnInto: "cook_chicken",
+ temp:25,
+ tempHigh: 600,
+ stateHigh: ["ash", "smoke"],
+ reactions: {
+ "batter": { elem1: "battered_raw_chicken", elem2: null },
+ "smoke": {elem1: "smoked_chicken"},
+ "steam": {elem1: "steamed_chicken"},
+ "water": {elem1: "boiled_chicken", tempMin: 70},
+ "cooking_oil": {elem1: "fried_chicken", tempMin: 70}
+ }
+};
+
+elements.boiled_chicken = {
+ color: ["#F9CC84", "#EDCE89", "#F8CB78"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ isFood: true,
+ temp: 65,
+ tempHigh: 600,
+ stateHigh: ["ash", "smoke"],
+ hidden: true,
+}
+
+elements.fried_chicken = {
+ color: ["#E87D1A", "#E77106", "#E77106"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ isFood: true,
+ temp: 90,
+ tempHigh: 600,
+ stateHigh: ["ash", "smoke"],
+ hidden: true,
+}
+
+elements.raw_chicken_nugget = {
+ color: ["#d6bc7e", "#d2b47a", "#c7a969"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ burnInto: "chicken_nugget",
+ temp:25,
+ tempHigh: 600,
+ stateHigh: ["ash", "smoke"],
+ hidden: true,
+ reactions: {
+ "cooking_oil": {elem1: "chicken_nugget", tempMin: 70}
+ }
+};
+
+elements.chicken_nugget = {
+ color: ["#D77105", "#D77105", "#EB8C2C", "#EB8C2C"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ temp: 40,
+ tempHigh: 600,
+ stateHigh: ["ash", "smoke"],
+ tempLow: -20,
+ stateLow: "frozen_chicken_nugget",
+ isFood: true,
+ density: 100,
+ hidden: true,
+};
+
+elements.frozen_chicken_nugget = {
+ color: ["#45a69c", "#73d9cd", "#3f9f95", "#389d8e"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ temp: -20,
+ tempHigh: 40,
+ stateHigh: "chicken_nugget",
+ isFood: false,
+ density: 100,
+ hidden: true,
+};
+
+elements.olive_wood = {
+ 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"],
+}
+elements.olive_branch = {
+ color: "#632e1f",
+ behavior: [
+ "CR:olive_leaves,olive_branch%2|CR:olive_leaves,olive_leaves,olive_leaves,olive_branch%2|CR:olive_leaves,olive_branch%2",
+ "XX|XX|XX",
+ "XX|XX|XX",
+ ],
+ tempHigh: 100,
+ stateHigh: "olive_wood",
+ tempLow: -30,
+ stateLow: "olive_wood",
+ category: "life",
+ burn: 40,
+ burnTime: 50,
+ burnInto: ["sap","ember","charcoal"],
+ hidden: true,
+ state: "solid",
+ density: 1500,
+ hardness: 0.15,
+ breakInto: ["sap","sawdust"],
+ hidden: true,
+}
+elements.olive_leaves = {
+ color: ["#407603","#376502","#2e5502"],
+ behavior: [
+ "XX|XX|XX",
+ "XX|XX|XX",
+ "XX|CR:olive%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,
+ seed: "olive_seed",
+ hidden: true
+}
+elements.olive = {
+ color: ["#6e8b3d","#7c9d45"],
+ 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 },
+ "rock": { elem1:"cooking_oil", elem2:"rock", chance:0.035 },
+ },
+ category:"food",
+ tempHigh: 100,
+ stateHigh: "dead_plant",
+ tempLow: -1.66,
+ stateLow: "frozen_plant",
+ burn:65,
+ burnTime:60,
+ burnInto: "dead_plant",
+ breakInto: "cooking_oil",
+ state: "solid",
+ density: 1050,
+ isFood: false
+}
+
+
+elements.cooking_oil = {
+ color: "#ffc844",
+ behavior: behaviors.LIQUID,
+ category: "liquids",
+ tempHigh: 400,
+ stateHigh: "fire",
+ burn: 70,
+ burnTime: 300,
+ burnInto: ["carbon_dioxide","fire"],
+ viscosity: 250,
+ state: "liquid",
+ density: 825,
+ hidden: true,
+ temp: 30,
+ reaction: {
+ "potato": {elem1: "fried_potato", tempMin: 70}
+ }
+},
+
+/*
+
+elements.potato_skin = {
+ color: ["#DC8A5A", "#A86C36", "#DC9A59", "#A76B35"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ isFood: true,
+ temp: 20,
+ hidden: true,
+ tempHigh: 250,
+ stateHigh: ["ash", "smoke"]
+}
+
+elements.peeled_potato = {
+ color: ["#D6C39F", "#D1C09D", "#D1C09D", "#CDBF9E"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ isFood: true,
+ temp: 20,
+ hidden: true,
+ reaction: {
+ "cooking_oil": { elem1: "fried_potato", tempMin: 70 }
+ }
+}
+
+*/
+
+elements.fried_potato = {
+ color: ["#DD7908", "#D57206", "#CA6801", "#D68001"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ temp: 35,
+ hidden: true,
+ tempHigh: 600,
+ stateHigh: ["ash", "smoke"],
+ isFood: true,
+}
diff --git a/mods/greenitemsandmore.js b/mods/greenitemsandmore.js
new file mode 100644
index 00000000..f0fb1ef2
--- /dev/null
+++ b/mods/greenitemsandmore.js
@@ -0,0 +1,169 @@
+elements.green_apple = {
+ color: "#2ab54f",
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ tempHigh: 120,
+ stateHigh: "ash",
+ breakInto: "juice",
+ breakIntoColor: "#5fba65",
+ desc: "Green apple from the greenitemsandmore.js mod.",
+ reactions: {
+ "milk": { elem1: "fruit_milk", elem2: "fruit_milk", color1: "#86b867", color2: "#70b867" },
+ "red_apple": { elem1: "mixed_apples", elem2: "mixed_apples" },
+ }
+};
+elements.red_apple = {
+ color: "#e83838",
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ tempHigh: 120,
+ stateHigh: "ash",
+ breakInto: "juice",
+ breakIntoColor: "#c95555",
+ desc: "Red apple from the greenitemsandmore.js mod.",
+ reactions: {
+ "milk": { elem1: "fruit_milk", elem2: "fruit_milk", color1: "#d65151", color2: "#d65152" },
+ "green_apple": { elem1: "mixed_apples", elem2: "mixed_apples" },
+ }
+};
+elements.mixed_apples = {
+ color: ["#d13030", "#bf3d3d", "#369e3d", "#39b359"],
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ tempHigh: 120,
+ stateHigh: "ash",
+ breakInto: "juice",
+ breakIntoColor: ["#ba6859", "#71a676"],
+ desc: "Mixed apples from the greenitemsandmore.js mod.",
+ reactions: {
+ "milk": { elem1: "fruit_milk", elem2: "fruit_milk", color1: "#c47264", color2: "#66bd57"},
+ "sugar": { elem1: "mixed_sweet_apples", elem2: "mixed_sweet_apples" },
+ }
+};
+elements.mixed_sweet_apples = {
+ color: ["#d93f3f", "#d45555", "#50b556", "#50cc70"],
+ behavior: behaviors.POWDER,
+ category: "states",
+ state: "solid",
+ tempHigh: 135,
+ stateHigh: "ash",
+ breakInto: "juice",
+ breakIntoColor: ["#ad746a", "#82ba88"],
+ hidden: true,
+ desc: "Mixed sweet apples from the greenitemsandmore.js mod.",
+ reactions: {
+ "milk": {elem1: "fruit_milk", elem2: "fruit_milk", color1: "#f58989", color2: "#71a162"},
+ "flour": {elem1: "apple_pie", tempMin: 15, elem2: "apple_pie" },
+ }
+};
+elements.apple_pie = {
+ color: "#f0b55d",
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ tempHigh: 156,
+ stateHigh: "ash",
+ desc: "Apple pie from the greenitemsandmore.js mod.",
+ hidden: true,
+};
+elements.pear = {
+ color: "#3a8c3c",
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ tempHigh: 120,
+ stateHigh: "ash",
+ breakInto: "juice",
+ breakIntoColor: "#5f8f50",
+ desc: "Pear from the greenitemsandmore.js mod.",
+ reactions: {
+ "milk": {elem1: "fruit_milk", elem2: "fruit_milk", color1: "#60c483", color2: "#60c483"},
+ }
+};
+elements.coconut = {
+ color: "#8c6d3a",
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ tempHigh: 166,
+ stateHigh: "ash",
+ desc: "Coconut from the greenitemsandmore.js mod.",
+ breakInto: "coconut_flesh",
+};
+elements.coconut_flesh = {
+ color: "#faf4eb",
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ tempHigh: 134,
+ stateHigh: "ash",
+ hidden: true,
+ desc: "Coconut flesh from the greenitemsandmore.js mod.",
+ reactions: {
+ "water": {elem1: "coconut_milk", elem2: "coconut_milk" },
+ }
+};
+
+elements.coconut_milk = {
+ color: "#f7f5f2",
+ behavior: behaviors.LIQUID,
+ category: "liquids",
+ state: "liquid",
+ tempHigh: 124,
+ stateHigh: "steam",
+ tempLow: -10,
+ stateLow: "frozen_coconut_milk",
+ desc: "Coconut milk from the greenitemsandmore.js mod.",
+ hidden: true,
+};
+elements.frozen_coconut_milk = {
+ color: "#f0fcfc",
+ behavior: behaviors.WALL,
+ category: "states",
+ state: "ice",
+ tempHigh: -10,
+ stateHigh: "coconut_milk",
+ hidden: true,
+ desc: "Frozen coconut milk from the greenitemsandmore.js mod.",
+ temp: -20,
+};
+elements.fruit_doughnut = {
+ color: "#de9802",
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ tempHigh: 95,
+ stateHigh: "ash",
+ desc: "Fruit doughnuts, or as dutch people call it: Olliebollen. A newyear snack. Made from flour, yeast and milk. From the greenitemsandmore.js mod.",
+ breakInto: "flour",
+ hidden: true,
+};
+elements.dough.reactions = {
+ "yeast": { elem1: "fruit_doughnut", elem2: "fruit_doughnut" }
+};
+elements.beans.tempHigh = "40"
+elements.beans.stateHigh = "baked_beans"
+elements.baked_beans = {
+ color: ["#bf6211", "#c46b1d", "#b35d12", "#a65b19"],
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ tempLow: 40,
+ stateLow: "beans",
+ desc: "Baked beans from the greenitemsandmore.js mod.",
+ hidden: true,
+};
+elements.kiwi = {
+ color: ["#469e3e", "#9e813e"],
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ desc: "Kiwi from the greenitemsandmore.js mod.",
+ breakInto: "juice",
+ breakIntoColor: "#2e7533",
+ tempHigh: 120
+ stateHigh: "ash"
+};
diff --git a/mods/jaydsmods.js b/mods/jaydsmods.js
index 1070777b..f49b3066 100644
--- a/mods/jaydsmods.js
+++ b/mods/jaydsmods.js
@@ -16,7 +16,7 @@ elements.tsar_bomba = {
],
category: "weapons",
state: "solid",
- density: 1300,
+ density: 1700,
excludeRandom: true,
cooldown: defaultCooldown
}
@@ -28,4 +28,24 @@ elements.meese = {
"XX|M1|XX",
],
category: "life"
- }
\ No newline at end of file
+ },
+elements.blackpowder = {
+ color: ["#555D50","#36454F"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "powders",
+ burn: 100,
+ burnTime: 250,
+ tempHigh: 292,
+ state: "solid",
+ density: 5150,
+ },
+elements.rp1= {
+ color: "#db5968",
+ behavior: behaviors.LIQUID,
+ category: "liquids",
+ state: "liquid",
+ density: 1700,
+ alias: "rocket propellant 1",
+ burn: 100,
+ burnTime: 400,
+ };
\ No newline at end of file
diff --git a/mods/more_gold.js b/mods/more_gold.js
new file mode 100644
index 00000000..0e7d944d
--- /dev/null
+++ b/mods/more_gold.js
@@ -0,0 +1,18 @@
+elements.green_gold = {
+ color: ["#94c7a3","#7bb298","#94c7a3"],
+ behavior: behaviors.WALL,
+ tempHigh: 500,
+ category: "solids",
+ density: 13000,
+ burnInto: ["molten_green_gold"],
+ conduct: 0.87,
+};
+elements.molten_green_gold = {
+ color: "#d9f046",
+ behavior: behaviors.MOLTEN,
+ tempHigh: 500,
+ category: "states",
+ density: 13000,
+ conduct: 0.87,
+ Hidden: true
+};
\ No newline at end of file
diff --git a/mods/nousersthings.js b/mods/nousersthings.js
index e1c8558e..6d8cb01c 100644
--- a/mods/nousersthings.js
+++ b/mods/nousersthings.js
@@ -1018,7 +1018,7 @@ elements.pipe.tick = function(pixel) {
var x = pixel.x+coord[0];
var y = pixel.y+coord[1];
if (isEmpty(x,y)) {
- createPixel("brick",x,y);
+ createPixel("pipe_wall",x,y);
pixelMap[x][y].color = pixelColorPick(pixel,"#808080");
}
}
diff --git a/mods/pizzasstuff.js b/mods/pizzasstuff.js
index 13dd29a7..77467de5 100644
--- a/mods/pizzasstuff.js
+++ b/mods/pizzasstuff.js
@@ -1,5 +1,5 @@
elements.beer = {
- color: "#ffc64a",
+ color: ["#ffc43d","#ffc43d","#ebc59f"],
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
@@ -7,7 +7,7 @@ elements.beer = {
};
elements.root_beer = {
- color: "#9e7723",
+ color: ["#8b2f02","#732803"],
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
@@ -15,7 +15,7 @@ elements.root_beer = {
};
elements.fruit_slushy = {
- color: "#b867cf",
+ color: ["#d43968","#ec5885","#f57ca1","#fba9c2","#ffe3eb"],
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
@@ -23,7 +23,7 @@ elements.fruit_slushy = {
};
elements.mold = {
- color: "#86ab29",
+ color: ["#b6d7a8","#6d9d5c","#ad8d6f"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -31,7 +31,7 @@ elements.mold = {
};
elements.chocolate_slushy = {
- color: "#4f2e16",
+ color: ["#c3ae9a","#ae967f","#977b5f","#876b4f","#816346"],
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
@@ -39,7 +39,7 @@ elements.chocolate_slushy = {
};
elements.chocolate_sauce = {
- color: "#754828",
+ color: ["#491904","#54240b","#5e2d0b","#69371b","#764636"],
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
@@ -47,7 +47,7 @@ elements.chocolate_sauce = {
};
elements.chocolate_ice_cream = {
- color: "#704b3a",
+ color: ["#a47551","#523a28"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
@@ -55,7 +55,7 @@ elements.chocolate_ice_cream = {
};
elements.fruit_ice_cream = {
- color: "#de6ab7",
+ color: ["#f8d8d8","#f6c1c1","#e39898"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
@@ -63,7 +63,7 @@ elements.fruit_ice_cream = {
};
elements.chocolate_yogurt = {
- color: "#825c4b",
+ color: ["#654321","#71512b","#7e5f36","#8a6e42","#967d50"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
@@ -73,7 +73,7 @@ elements.chocolate_yogurt = {
};
elements.fruit_yogurt = {
- color: "#f587d0",
+ color: ["#ffc3d8","#ffabd6","#ff96c5","#ff84c2","#ff5daf"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
@@ -83,7 +83,7 @@ elements.fruit_yogurt = {
};
elements.frozen_fruit_yogurt = {
- color: "#ffc2ea",
+ color: ["#ffdfdf","#ffc0c0","#ff9b9b"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
@@ -94,7 +94,7 @@ elements.frozen_fruit_yogurt = {
};
elements.frozen_chocolate_yogurt = {
- color: "#ad8776",
+ color: ["#a87848","#a57e57","#c1a07f","#e2c5ac","#efd0b1"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
@@ -118,7 +118,7 @@ elements.cooking_oil = {
};
elements.chicken_nuggets = {
- color: "#967242",
+ color: ["#8f411c","#a35935"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -126,7 +126,7 @@ elements.chicken_nuggets = {
};
elements.advanced_dough = {
- color: "#dbbc72",
+ color: ["#f3e6c6","#f9e8a2","#ebd27b","#dba94e","#c08932"],
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
@@ -139,7 +139,7 @@ elements.advanced_dough = {
};
elements.fries = {
- color: "#ebba34",
+ color: ["#f4c63e","#f6d165","#f8dd8b"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -147,13 +147,22 @@ elements.fries = {
};
elements.fried_snow = {
- color: "#a16f37",
+ color: ["#f6c66a","#d29829","#905c1b"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
hidden: "TRUE",
};
+elements.battery_acid = {
+ color: ["#8fff00","#1de446"],
+ behavior: behaviors.LIQUID,
+ category: "machines",
+ state: "solid",
+ hidden: "TRUE",
+};
+
+
elements.steampunk_pancakes = {
color: "#252a33",
behavior: behaviors.POWDER,
@@ -163,7 +172,7 @@ elements.steampunk_pancakes = {
};
elements.churros = {
- color: "#c29a3c",
+ color: ["#ce9958","#b8732d","#9f633b"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -175,7 +184,7 @@ elements.churros = {
};
elements.chocolate_churros = {
- color: "#1c0c01",
+ color: ["#9f6204","#875200","#764100","#582c00","#492100"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -183,7 +192,7 @@ elements.chocolate_churros = {
};
elements.croissant = {
- color: "#e0c46e",
+ color: ["#c68028","#ad7023","#905c1b","#794d16","#674112"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -195,7 +204,7 @@ elements.croissant = {
};
elements.eggy_dough = {
- color: "#c4ad7c",
+ color: ["#df8c43","#e5a369","#ecba8e","#f2d1b4","#f9e8d9"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -205,7 +214,7 @@ elements.eggy_dough = {
};
elements.french_toast = {
- color: "#ab8d4f",
+ color: ["#a77644","#af7b4b","#af7f57"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -216,7 +225,7 @@ elements.french_toast = {
};
elements.rose_sauce = {
- color: "#f0340e",
+ color: ["#db2300","#e24f33"],
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
@@ -224,7 +233,7 @@ elements.rose_sauce = {
};
elements.seasoning = {
- color: "#734631",
+ color: ["#945239","#896251"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -232,7 +241,7 @@ elements.seasoning = {
};
elements.parmesan = {
- color: "#e0c66e",
+ color: ["#ffffdd","#ffffe4","#ffffeb","#fffff1","#fffff8"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -249,7 +258,7 @@ elements.baking_powder = {
};
elements.smashed_ice = {
- color: "#c3d4e6",
+ color: ["#e3fdff","#d1f7ff","#c0f7ff"],
behavior: behaviors.LIQUID,
category: "food",
state: "solid",
@@ -273,7 +282,7 @@ elements.smashed_ice = {
};
elements.moss = {
- color: "#389639",
+ color: ["#355438","#416044","#4c7450","#68946c","#81a984"],
behavior: behaviors.STURDYPOWDER,
category: "life",
state: "solid",
@@ -294,7 +303,7 @@ elements.moss = {
elements.moth = {
color: "#665233",
- behavior: behaviors.BOUNCY,
+ behavior: behaviors.FLY,
category: "life",
state: "solid",
burn: 95,
@@ -308,7 +317,7 @@ elements.moth = {
};
elements.cherry = {
- color: "#c41428",
+ color: ["#ff0000","#e30202","#c00000","#9c0101"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
@@ -320,71 +329,153 @@ elements.cherry = {
};
elements.strawberry = {
- color: "#ff0033",
+ color: ["#fb2943","#ff0033"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
tempHigh: 256,
stateHigh: "steam",
- breakIntoColor: "#bd0f32",
+ breakIntoColor: ["#bf0147","#c61548","#cc2857","#c62354","#c11848"],
};
elements.apple = {
- color: "#f21313",
+ color: ["#fc3434","#f91515","#d30404","#9f0606","#aa0404"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
tempHigh: 256,
stateHigh: "steam",
- breakIntoColor: "#ffd500",
+ breakIntoColor: ["#ffda69","#ffdb84"],
};
-elements.orange = {
- color: "#ff9100",
+elements.green_apple = {
+ color: ["#a8da61","#66cc00","#66cc33","#00cc00","#009900"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
tempHigh: 256,
stateHigh: "steam",
+ breakIntoColor: ["#ffda69","#ffdb84"],
+};
+
+elements.orange = {
+ color: ["#ff9a00","#ffc100","#ff8100"],
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ breakInto: "juice",
+ breakIntoColor: ["#ffc659","#ffb646","#ffa700","#ff8d00"],
+ tempHigh: 256,
+ stateHigh: "steam",
};
elements.kiwi = {
- color: "#34611a",
+ color: ["#a9c77e","#61ab5a"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
tempHigh: 256,
stateHigh: "steam",
- breakIntoColor: "#517a38",
+ breakIntoColor: ["#a9c77e","#bad98f"],
};
elements.green_grape = {
- color: "#b6eb7f",
+ color: ["#b6f271","#a1f02f","#97d60c","#65ba14","#8bc33a"],
behavior: behaviors.POWDER,
category: "food",
state: "solid",
breakInto: "juice",
- breakIntoColor: "#5f8536",
+ breakIntoColor: ["#5f8536","#7ba84a"],
tempHigh: 256,
stateHigh: "steam",
};
+elements.banana = {
+ color: ["#ffb400","#ffc100","#ffdb00","#ffe700","#f0ff00"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ breakInto: "juice",
+ breakIntoColor: "#f0f060",
+ reactions: {
+ "steam": { elem1: "potassium", elem2: null },
+ }
+};
+
+elements.mint = {
+ color: ["#72e88d","#53bd6c"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ reactions: {
+ "cream": { elem1: null, elem2: "toorhpaste" },
+ }
+};
+
+elements.potassium = {
+ color: "#a3a333",
+ behavior: behaviors.POWDER,
+ category: "states",
+ state: "solid",
+ breakInto: "juice",
+};
+
+elements.onion = {
+ color: ["#62121b","#a92940","#c04b65","#d8699e"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ breakInto: ["stench", null, null, null, null],
+};
+
+
+elements.garlic = {
+ color: ["#f7f3e1","#f6f3c3","#f0e6bd"],
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ breakInto: "garlic_clove",
+};
+
+elements.garlic_clove = {
+ color: ["#b8b17f","#6b5628"],
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ hidden: "TRUE",
+};
+
elements.oreo = {
color: "#120600",
behavior: behaviors.STURDYPOWDER,
category: "food",
state: "solid",
+ reactions: {
+ "toorhpaste": { elem1: "poison_oreo", elem2: null },
+ }
};
+elements.poison_oreo = {
+ color: "#001112",
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "solid",
+ hidden: "TRUE",
+};
+
+
elements.toorhpaste = {
- color: "#7dfff2",
+ color: ["#31ffe0","#65ffe8","#97ffef","#c9fff7","#f3fffd"],
behavior: behaviors.LIQUID,
category: "liquids",
state: "solid",
+ reactions: {
+ "juice": { elem1: "poison", elem2: null },
+ }
};
if (!elements.lettuce.reactions) elements.lettuce.reactions = {};
@@ -450,6 +541,8 @@ elements.baked_batter.reactions.mud = { elem1: "mold", elem2: null }
elements.sugar_ice.breakInto = "smashed_ice"
+elements.battery.breakInto = "battery_acid"
+
elements.herb.breakInto = "seasoning"
elements.chocolate.breakInto = "chocolate_sauce"
diff --git a/mods/pressure.js b/mods/pressure.js
new file mode 100644
index 00000000..09861474
--- /dev/null
+++ b/mods/pressure.js
@@ -0,0 +1,321 @@
+runAfterLoad(function(){
+tryMove = function(pixel,nx,ny,leaveBehind,force) {
+ if (pixel.drag && !force) { return true; }
+ var info = elements[pixel.element];
+ var oob = outOfBounds(nx,ny);
+ if (isEmpty(nx,ny,false,oob)) { // If coords is empty, move to coords
+ movePixel(pixel,nx,ny,leaveBehind);
+ return true;
+ }
+ else if (!oob) {
+ // Reactions
+ newPixel = pixelMap[nx][ny];
+ if (info.density !== undefined) {
+ newPixel.pressure = info.density/5000 + (pixel.pressure ? pixel.pressure : 0);
+ }
+ var rr1 = false;
+ if (info.reactions !== undefined && info.reactions[newPixel.element] !== undefined) {
+ rr1 = reactPixels(pixel,newPixel)
+ if (rr1) {
+ return true;
+ }
+ }
+ if (!rr1 && elements[newPixel.element].reactions !== undefined && elements[newPixel.element].reactions[pixel.element] !== undefined && !elements[newPixel.element].reactions[pixel.element].oneway) {
+ if (reactPixels(newPixel,pixel)) {
+ return true;
+ }
+ }
+ // Density
+ if (elements[pixel.element].id !== elements[newPixel.element].id) {
+ if (info.density !== undefined && elements[newPixel.element].density !== undefined) {
+ // if the pixel's state + ">" + newPixel's state is in validDensitySwaps, and the pixel's density is larger than the newPixel's density, swap the pixels
+ if (validDensitySwaps[info.state][elements[newPixel.element].state] && info.density >= elements[newPixel.element].density) {
+ // chance depending on the difference in density
+ if (Math.random() < (info.density - elements[newPixel.element].density)/(info.density + elements[newPixel.element].density)) {
+ swapPixels(pixel,newPixel);
+ return true;
+ }
+ }
+ }
+ }
+ // else { // same-element density swapping
+ // if (info.density !== undefined) {
+ // if (validDensitySwaps[info.state][info.state]) {
+ // if (Math.random() < 0.01) {
+ // swapPixels(pixel,newPixel);
+ // return true;
+ // }
+ // }
+ // }
+ // }
+ }
+ return false;
+}
+doVelocity = function(pixel) {
+ if ((pixel.vx||pixel.vy) && elements[pixel.element].movable) {
+ if (pixel.vx) {
+ // move the pixel vx times
+ for (var i = 0; i < Math.floor(Math.abs(pixel.vx)); i++) {
+ var x = pixel.x+Math.sign(pixel.vx);
+ var y = pixel.y;
+ if (!tryMove(pixel,x,y)) {
+// if (!isEmpty(x,y,true)) {
+// var newPixel = pixelMap[x][y];
+// if (elements[newPixel.element].movable) {
+// newPixel.vx = (newPixel.vx||0) + pixel.vx - Math.sign(pixel.vx);
+// if (elements[pixel.element].breakInto && Math.random() 6000) {temp = 6000}
+ // logarithmic scale, with coldest being 225 (-50 degrees) and hottest being 0 (6000 degrees)
+ var hue = Math.round(225 - (Math.log(temp+50)/Math.log(6000+50))*225);
+ if (hue < 0) {hue = 0}
+ if (hue > 225) {hue = 225}
+ ctx.fillStyle = "hsl("+hue+",100%,50%)";
+ }
+ else if (view === 4) { // smooth view, average of surrounding pixels
+ var colorlist = [];
+ // check adjacent coords on the pixelMap, add the color to the list if the pixel is not empty and the color indexOf "rgb" is not -1
+ for (var j = 0; j < biCoords.length; j++) {
+ var x = pixel.x + biCoords[j][0];
+ var y = pixel.y + biCoords[j][1];
+ if (isEmpty(x,y,true) || elements[pixelMap[x][y].element].state !== elements[pixel.element].state) {continue}
+ var color = pixelMap[x][y].color;
+ if (color.indexOf("rgb") !== -1) {
+ colorlist.push(color.match(/\d+/g));
+ }
+ }
+ if (colorlist.length === 0) {
+ ctx.fillStyle = pixel.color;
+ }
+ else {
+ ctx.fillStyle = averageRGB(colorlist);
+ }
+ }
+ if (ctx.globalAlpha < 1 && !(elements[pixel.element].isGas || elements[pixel.element].glow)) {
+ ctx.globalAlpha = 1;
+ }
+ if ((view === null || view === 4) && (elements[pixel.element].isGas || elements[pixel.element].glow)) {
+ if (ctx.globalAlpha!==0.5) { ctx.globalAlpha = 0.5; }
+ ctx.fillRect((pixel.x-1)*pixelSize, (pixel.y)*pixelSize, pixelSize*3, pixelSize);
+ ctx.fillRect((pixel.x)*pixelSize, (pixel.y-1)*pixelSize, pixelSize, pixelSize*3);
+ }
+ else { // draw the pixel (default)
+ ctx.fillRect(pixel.x*pixelSize, pixel.y*pixelSize, pixelSize, pixelSize);
+ }
+ if (pixel.charge && view !== 2) { // Yellow glow on charge
+ if (!elements[pixel.element].colorOn) {
+ ctx.fillStyle = "rgba(255,255,0,0.5)";
+ ctx.fillRect(pixel.x*pixelSize, pixel.y*pixelSize, pixelSize, pixelSize);
+ }
+ }
+ }
+ if (ctx.globalAlpha < 1) {
+ ctx.globalAlpha = 1;
+ }
+ if ((!paused) || forceTick) {pixelTicks++};
+}
+
+
+})
+
+explodeAt = function(x,y,radius,fire="fire") {
+ // if fire contains , split it into an array
+ if (fire.indexOf(",") !== -1) {
+ fire = fire.split(",");
+ }
+ var coords = circleCoords(x,y,radius);
+ var power = radius/10;
+ //for (var p = 0; p < Math.round(radius/10+1); p++) {
+ for (var i = 0; i < coords.length; i++) {
+ // damage value is based on distance from x and y
+ var damage = Math.random() + (Math.floor(Math.sqrt(Math.pow(coords[i].x-x,2) + Math.pow(coords[i].y-y,2)))) / radius;
+ // invert
+ damage = 1 - damage;
+ if (damage < 0) { damage = 0; }
+ damage *= power;
+ if (isEmpty(coords[i].x,coords[i].y)) {
+ // create smoke or fire depending on the damage if empty
+ if (damage < 0.02) { } // do nothing
+ else if (damage < 0.2) {
+ createPixel("smoke",coords[i].x,coords[i].y);
+ }
+ else {
+ // if fire is an array, choose a random item
+ if (Array.isArray(fire)) {
+ createPixel(fire[Math.floor(Math.random() * fire.length)],coords[i].x,coords[i].y);
+ }
+ else {
+ createPixel(fire,coords[i].x,coords[i].y);
+ }
+ }
+ }
+ else if (!outOfBounds(coords[i].x,coords[i].y)) {
+ // damage the pixel
+ var pixel = pixelMap[coords[i].x][coords[i].y];
+ var info = elements[pixel.element];
+ if (info.hardness) { // lower damage depending on hardness(0-1)
+ if (info.hardness < 1) {
+ damage = damage * ((1 - info.hardness)*10);
+ }
+ else { damage = 0; }
+ }
+ if (damage > 0.9) {
+ if (Array.isArray(fire)) {
+ var newfire = fire[Math.floor(Math.random() * fire.length)];
+ }
+ else {
+ var newfire = fire;
+ }
+ changePixel(pixel,newfire);
+ continue;
+ }
+ else if (damage > 0.25) {
+ if (info.breakInto !== undefined) {
+ breakPixel(pixel);
+ continue;
+ }
+ else {
+ if (Array.isArray(fire)) {
+ var newfire = fire[Math.floor(Math.random() * fire.length)];
+ }
+ else {
+ var newfire = fire;
+ }
+ changePixel(pixel,newfire);
+ continue;
+ }
+ }
+ if (damage > 0.75 && info.burn) {
+ pixel.burning = true;
+ pixel.burnStart = pixelTicks;
+ }
+ pixel.temp += damage*radius*power;
+ pixelTempCheck(pixel);
+ // set the pixel.vx and pixel.vy depending on the angle and power
+ if (!elements[pixel.element].excludeRandom) {
+ var angle = Math.atan2(pixel.y-y,pixel.x-x);
+ pixel.vx = Math.round((pixel.vx|0) + Math.cos(angle) * (radius * power));
+ pixel.vy = Math.round((pixel.vy|0) + Math.sin(angle) * (radius * power));
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/mods/sbstuff.js b/mods/sbstuff.js
index 1a3d0c7f..c02d12ef 100644
--- a/mods/sbstuff.js
+++ b/mods/sbstuff.js
@@ -27,7 +27,7 @@ elements.moth = {
tempHigh: 500,
stateHigh: "ash",
color: "#57381a",
- behavior: behaviors.GAS,
+ behavior: behaviors.FLY,
category: "life",
state: "solid",
};
@@ -237,7 +237,7 @@ elements.lemon = {
elements.lemon.reactions = {
"juice": { elem1: null, elem2: "lemonade" }
-}
+};
elements.lemonade = {
isFood: true,
@@ -511,12 +511,14 @@ elements.mashed_pea = {
state: "liquid",
};
-elements.beans = {
+elements.burnt_beans = {
+ tempHigh: 500,
+ stateHigh: "ash",
isFood: true,
- viscosity: 1000,
+ viscosity: 10000,
density: 721,
hardness: 1,
- color: ["#ff751f", "#ff411f"],
+ color: "#1a0d04",
category: "food",
behavior: behaviors.LIQUID,
state: "liquid",
@@ -552,15 +554,17 @@ elements.cocaine = {
};
elements.zombie = {
- viscosity: 1000,
- density: 1000,
- hardness: 1,
tempHigh: 500,
stateHigh: "ash",
color: "#114700",
- behavior: behaviors.LIQUID,
+ behavior: [
+ "M1%2|M1%2 AND SW%1|M1%2",
+ "M1%2 AND CH:zombie|XX|M1%2 AND CH:zombie",
+ "M1|M1 AND SW%1|M1"
+ ],
category: "special",
state: "liquid",
+ ignore: ["fire","smoke","antimatter","strange_matter","filler","lattice","wall","ewall","plasma","void","border"]
};
elements.toothpaste = {
@@ -576,12 +580,91 @@ elements.radioactive_grape = {
hidden: true,
tempHigh: 1000,
stateHigh: "ash",
- color: "#7d00d1",
+ color: ["#7d00d1", "#8047d6"],
behavior: behaviors.RADPOWDER,
category: "food",
state: "liquid",
};
+elements.radioactive_meat = {
+ hidden: true,
+ tempHigh: 1000,
+ stateHigh: "ash",
+ color: ["#4b5742", "#91564a"],
+ behavior: behaviors.RADPOWDER,
+ category: "food",
+ state: "liquid",
+};
+
+elements.radioactive_chocolate = {
+ hidden: true,
+ tempHigh: 1000,
+ stateHigh: "ash",
+ color: ["#404d29", "#4d3429"],
+ behavior: behaviors.RADPOWDER,
+ category: "food",
+ state: "liquid",
+};
+
+elements.radioactive_egg = {
+ hidden: true,
+ tempHigh: 1000,
+ stateHigh: "ash",
+ color: "#93cc87",
+ behavior: behaviors.RADPOWDER,
+ category: "food",
+ state: "liquid",
+};
+
+elements.radioactive_milk = {
+ hidden: true,
+ tempHigh: 1000,
+ stateHigh: "ash",
+ color: "#9bb895",
+ behavior: behaviors.RADLIQUID,
+ category: "liquids",
+ state: "liquid",
+};
+
+elements.radioactive_potato = {
+ hidden: true,
+ tempHigh: 1000,
+ stateHigh: "ash",
+ color: "#6e8544",
+ behavior: behaviors.RADPOWDER,
+ category: "food",
+ state: "liquid",
+};
+
+elements.radioactive_water = {
+ hidden: true,
+ tempHigh: 1000,
+ stateHigh: "steam",
+ color: "#baf0aa",
+ behavior: behaviors.RADLIQUID,
+ category: "liquids",
+ state: "liquid",
+};
+
+elements.radioactive_bread = {
+ hidden: true,
+ tempHigh: 1000,
+ stateHigh: "ash",
+ color: "#aec74c",
+ behavior: behaviors.RADPOWDER,
+ category: "food",
+ state: "liquid",
+};
+
+elements.radioactive_toast = {
+ hidden: true,
+ tempHigh: 1000,
+ stateHigh: "ash",
+ color: "#565e38",
+ behavior: behaviors.RADPOWDER,
+ category: "food",
+ state: "liquid",
+};
elements.shampoo = {
viscosity: 1000,
@@ -863,6 +946,9 @@ elements.incinerator = {
category: "machines",
state: "solid",
insulate: true,
+ reactions: {
+ "fart": { elem1: null, elem2: "ohio" },
+ }
};
elements.cocoa = {
@@ -994,15 +1080,6 @@ elements.cooked_bacon = {
state: "liquid",
};
-elements.pickle = {
- tempHigh: 200,
- stateHigh: "steam",
- color: "#12400c",
- behavior: behaviors.STURDYPOWDER,
- category: "food",
- state: "liquid",
-};
-
elements.strawberry = {
viscosity: 10000,
density: 754,
@@ -1014,10 +1091,157 @@ elements.strawberry = {
state: "liquid",
};
-elements.grape.reactions = {
- "radiation": { elem1: null, elem2: "radioactive_grape" },
- "melted_chocolate": { elem1: null, elem2: "chocolate_grape" },
- "chocolate": { elem1: null, elem2: "chocolate_grape", chance: 0.1 },
+elements.beer = {
+ tempHigh: 300,
+ stateHigh: "steam",
+ color: "#b39329",
+ behavior: behaviors.LIQUID,
+ category: "liquids",
+ state: "liquid",
+};
+
+elements.cardboard = {
+ tempHigh: 500,
+ stateHigh: "ash",
+ color: "#7d4725",
+ behavior: behaviors.STURDYPOWDER,
+ category: "land",
+ state: "liquid",
+};
+
+elements.carrot = {
+ tempHigh: 500,
+ stateHigh: "ash",
+ color: "#f06c0e",
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "liquid",
+};
+
+elements.wine = {
+ tempHigh: 400,
+ stateHigh: "steam",
+ color: "#2e0206",
+ behavior: behaviors.LIQUID,
+ category: "liquids",
+ state: "liquid",
+};
+
+elements.plasma_bomb = {
+ tempHigh: 1000,
+ stateHigh: "ash",
+ color: "#452f4a",
+ behavior: [
+ "XX|EX:20>plasma|XX",
+ "XX|XX|XX",
+ "M2|M1 AND EX:20>plasma|M2"
+ ],
+ category: "weapons",
+ state: "liquid",
+},
+
+elements.dark_energy = {
+ hardness: 1,
+ tempHigh: 1000000,
+ stateHigh: "void",
+ color: "#1b161c",
+ behavior: [
+ "M1%10|M1%10 AND SW%5|M1%10",
+ "M1%10 AND CH:dark_energy|XX|M1%10 AND CH:dark_energy",
+ "M1|M1 AND SW%5|M1"
+ ],
+ category: "special",
+ state: "gas",
+};
+
+elements.ohio = {
+ hidden: true,
+ hardness: 1,
+ hidden: true,
+ color: "#40174d",
+ behavior: [
+ "XX|XX|XX",
+ "XX|EX:800>plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,molten_iron,molten_uranium,molten_lead,oxygen,molten_sodium,sulfur_gas,neon,chlorine,molten_calcium,molten_nickel,molten_copper,molten_zinc,gallium_gas AND CH:void|XX",
+ "XX|XX|XX",
+ ],
+ temp: 99999999700,
+ category: "joke",
+ state: "gas",
+ desc: "use at own risk",
+};
+
+elements.papaya = {
+ tempHigh: 300,
+ stateHigh: "steam",
+ color: "#e38934",
+ behavior: behaviors.STURDYPOWDER,
+ category: "food",
+ state: "liquid",
+};
+
+elements.caviar = {
+ viscosity: 10000,
+ tempHigh: 500,
+ stateHigh: "steam",
+ color: "#1f1b18",
+ behavior: behaviors.LIQUID,
+ category: "food",
+ state: "liquid",
+};
+
+elements.peeper = {
+ hidden: true,
+ density: 1000,
+ burn: 0.00001,
+ burnTime: 9999,
+ ignoreAir: true,
+ burning: true,
+ hardness: 1,
+ tempHigh: 5000000000000000000,
+ stateHigh: "ash",
+ color: "#9c1208",
+ behavior: behaviors.STURDYPOWDER,
+ category: "joke",
+ state: "solid",
+};
+
+elements.dollar = {
+ hidden: true,
+ viscosity: 10000,
+ tempHigh: 500,
+ stateHigh: "fire",
+ color: ["#4a8741", "#4bb53c"],
+ behavior: behaviors.LIQUID,
+ category: "joke",
+ state: "liquid",
+};
+
+elements.ruby = {
+ tempHigh: 2000,
+ stateHigh: "magma",
+ color: ["#d6091a", "#e83544"],
+ behavior: behaviors.WALL,
+ category: "solids",
+ state: "solid",
+};
+
+elements.incinerate.category = "tools",
+elements.cook.category = "tools",
+elements.room_temp.category = "tools",
+
+elements.beans.tempHigh = 349,
+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" },
};
elements.egg.reactions = {
@@ -1037,3 +1261,7 @@ elements.potato.reactions = {
elements.water.reactions = {
"cocaine": { elem1: null, elem2: "solid_water", chance: 0.1 }
};
+
+elements.paper.reactions = {
+ "bless": { elem1: null, elem2: "dollar", chance: 0.1 },
+};
diff --git a/mods/volcanic_expansion.js b/mods/volcanic_expansion.js
new file mode 100644
index 00000000..8dd3eb56
--- /dev/null
+++ b/mods/volcanic_expansion.js
@@ -0,0 +1,93 @@
+elements.obsidian = {
+ color: ["#343434", "#313639"],
+ behavior: behaviors.SOLID,
+ category: "land",
+ state: "solid",
+ density: 2380,
+ tempHigh: 900,
+ stateHigh: "magma",
+ breakInto: "obsidian_shard",
+ reactions: {
+ "sand": { elem1: "obsidian_shard" },
+ "dirt": { elem1: "obsidian_shard" },
+ "rock": { elem1: "obsidian_shard" },
+ "mudstone": { elem1: "obsidian_shard" },
+ "packed_snow": { elem1: "obsidian_shard" },
+ "gravel": { elem1: "obsidian_shard" },
+ "clay": { elem1: "obsidian_shard" },
+ "clay_soil": { elem1: "obsidian_shard" },
+ "permafrost": { elem1: "obsidian_shard" },
+ "mulch": { elem1: "obsidian_shard" },
+ "basalt": { elem1: "obsidian_shard" },
+ "tuff": { elem1: "mud" },
+ "limestone": { elem1: "obsidian_shard" },
+ "quicklime": { elem1: "obsidian_shard" },
+ "slaked_lime": { elem1: "obsidian_shard" },
+ }
+ },
+ elements.obsidian_shard = {
+ color: ["#343434", "#313639"],
+ behavior: behaviors.POWDER,
+ category: "powders",
+ state: "solid",
+ density: 2380,
+ tempHigh: 900,
+ stateHigh: "magma",
+ reactions: {
+ "glue": { elem1: "obsidian" },
+ }
+ },
+elements.pumice = {
+ color: "#bac0b4",
+ behavior: behaviors.POWDER,
+ category: "land",
+ state: "solid",
+ density: 550,
+ tempHigh: 900,
+ stateHigh: "magma",
+ hardness: 0.5,
+ },
+elements.magma.stateLow = ["basalt","basalt","basalt","pumice","doritoite","basalt","rock","obsidian_shard","diorite","andesite"],
+ elements.eruption = {
+ color: ["#ff6f00","#ff8c00","#ff4d00"],
+ behavior: [
+ "XX|M1|XX",
+ "XX|DL%1|XX",
+ "CR:magma|CR:magma|CR:magma",
+ ],
+ category: "weapons",
+ state: "solid",
+ temp:1200,
+ density: 2725,
+},
+elements.andesite = {
+ color: "#777C7C",
+ behavior: behaviors.SOLID,
+ category: "land",
+ state: "solid",
+ density: 2771,
+ tempHigh: 900,
+ stateHigh: "magma",
+ },
+ elements.diorite = {
+ color: ["#d4d4d4","#2b2b2b"],
+ behavior: behaviors.SOLID,
+ category: "land",
+ state: "solid",
+ density: 2900,
+ tempHigh: 900,
+ stateHigh: "magma",
+ },
+ elements.doritoite = {
+ color: ["#ff5349","#f2ba49"],
+ behavior: behaviors.POWDER,
+ category: "food",
+ state: "solid",
+ density: 157.8,
+ tempHigh: 900,
+ stateHigh: "magma",
+ reactions: {
+ "head": { elem1: "null" },
+ },
+ isFood: true
+ };
\ No newline at end of file
diff --git a/mods/zonneschijn7.js b/mods/zonneschijn7.js
new file mode 100644
index 00000000..a86b9bea
--- /dev/null
+++ b/mods/zonneschijn7.js
@@ -0,0 +1,6 @@
+elements.green_wall = {
+ color: "#00ff00",
+ behavior: behaviors.WALL,
+ category: "land",
+ state: "solid",
+};
\ No newline at end of file