sandboxels/mods/fantasy_elements.js

741 lines
19 KiB
JavaScript
Raw Normal View History

// 1.3.2 fantasy_elements.js mod
// adds plode a bomb
// 1.4 the golem mod
// frostbite turns pheonx into ice
// adds plode maximus
// adds fire golem
// added snow golem
// added slush golem
// added water golem
// added plasma golem
// iced pheonix at 700 degrees becomes pheonix
// added blood golem
elements.dragon_breath = {
color: "#f94e4e",
behavior: behaviors.GAS,
category: "fantasy",
state: "gas",
density: 0.1,
weight: 1,
update: function(x, y) {
// Update the element's behavior
},
reactions: {
"oxygen": { elem1: "fire", elem2: "fire" },
"frostbite": { elem1: "pulsium", elem2: "pulsium" },
}
};
elements.frostbite = {
color: "#0000ff",
behavior: behaviors.SOLID,
category: "fantasy",
state: "solid",
density: 1.5,
weight: 100,
update: function(x, y) {
// Update the element's behavior
},
reactions: {
"water": { elem1: "ice", elem2: "ice" },
"dragon_breath": { elem1: "pulsium", elem2: "pulsium" },
"pheonix": { elem1: "ice", elem2: "ice" },
}
};
elements.pulsium = {
color: "#ffff00",
behavior: behaviors.LIQUID,
category: "fantasy",
state: "liquid",
density: 1923,
weight: 100,
update: function(x, y) {
// Update the element's behavior
},
reactions: {
"molten_iron": { elem1: "pulsium_bar", elem2: "pulsium_bar" },
"molten_tin": { elem1: "pulsium_bar", elem2: "pulsium_bar" },
"water": { elem1: "sap", elem2: "sap" },
"magma": { elem1: "pulsium_bar", elem2: "pulsium_bar" },
}
};
elements.pulsium_bar = {
color: "#ffd700",
behavior: behaviors.SOLID,
category: "fantasy",
state: "solid",
density: 1700,
weight: 100,
update: function(x, y) {
// Update the element's behavior
}
};
elements.goblins_delight = {
color: "#00ff00",
behavior: behaviors.LIQUID,
category: "fantasy",
state: "solid",
density: 0.5,
weight: 50,
reactions: {
"liquid_light": { elem1: "water", elem2: "oil" },
"radiation": { elem1: "sauce", elem2: "sauce" },
}
};
elements.pheonix = {
color: ["#ff0000"],
tick: behaviors.FLY,
reactions: { "fire": { elem2:null, chance:0.15, func:behaviors.FEEDPIXEL },
"salt": { elem2:null, chance:0.15, func:behaviors.FEEDPIXEL },
"pulsium_bar": { elem2:null, chance:0.15, func:behaviors.FEEDPIXEL },
"pulsium": { elem2:null, chance:0.15, func:behaviors.FEEDPIXEL },
"dragon_breath": { elem2:null, chance:0.15, func:behaviors.FEEDPIXEL },
},
foodNeed: 5,
tempHigh: 999999,
stateHigh: "ash",
tempLow: 0,
category:"fantasy",
burn:100,
burnTime:19,
state: "solid",
density: 850,
conduct: 1,
baby: "baby_pheonix",
};
elements.phoenix_ash = {
color: "#a8a8a5",
behavior: behaviors.POWDER,
category: "fantasy",
state: "solid",
density: 1.5,
weight: 100,
reactions: {
"water": { elem1: "pheonix", elem2: "pheonix" },
}
};
elements.baby_pheonix = {
color: ["#ffdd00"],
tick: behaviors.FLY,
foodNeed: 5,
tempHigh: 999999,
stateHigh: "ash",
tempLow: 0,
category:"fantasy",
burn:100,
burnTime:19,
state: "solid",
stateLow: "iced_pheonix",
breakInto: "phoenix_ash",
density: 850,
conduct: 1,
};
elements.iced_pheonix = {
color: "#34baeb",
behavior: behaviors.SOLID,
temp: -999,
tempHigh: 700,
stateHigh: "pheonix",
category: "fantasy",
state: "solid",
breakInto: "ice",
density: 1.5,
weight: 100,
update: function(x, y) {
// Update the element's behavior
},
};
// 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",
behavior: behaviors.SOLID,
category: "fantasy",
state: "solid",
density: 0.8,
weight: 60,
update: function(x, y) {
// Update the element's behavior
},
reactions: {
"fire": { elem1: null, elem2: "dragon_breath" },
"plasma": { elem1: null, elem2: "dragon_breath" },
"incinerate": { elem1: null, elem2: "ash" },
"goblins_delight": { elem1: "dragon_breath", elem2: null },
"pulsium": { elem1: "dragon_breath", elem2: null },
"oil": { elem1: null, elem2: "dragon_breath" },
"salt": { elem1: "dragon_breath", elem2: null },
"sap": { elem1: "dragon_breath", elem2: null },
"water": { elem1: "dragon_breath", elem2: null },
"laser": { elem1: null, elem2: "dragon_breath" },
"oxygen": { elem1: null, elem2: "dragon_breath" },
"wall": { elem1: "dragon_breath", elem2: null },
"glass": { elem1: null, elem2: "dragon_breath" },
"wood": { elem1: null, elem2: "dragon_breath" },
"charcoal": { elem1: null, elem2: "dragon_breath" },
},
};
elements.mystic_runes = {
color: "#9932CC",
behavior: behaviors.SOLID,
category: "fantasy",
state: "solid",
density: 0.8,
weight: 60,
update: function(x, y) {
// Update the element's behavior
},
reactions: {
"heat_ray": { elem1: "mystic_runes", elem2: "mystic_runes" },
"god_ray": { elem1: "dragon_scale", elem2: "dragon_scale" },
"laser": { elem1: "mystic_runes", elem2: "mystic_runes" },
"helium": { elem1: null, elem2: "mystic_runes" },
"oxygen": { elem1: null, elem2: "mystic_runes" },
"sugar": { elem1: null, elem2: "mystic_runes" },
"wall": { elem1: "mystic_runes", elem2: null },
"glass": { elem1: null, elem2: "mystic_runes" },
"wood": { elem1: null, elem2: "mystic_runes" },
"charcoal": { elem1: null, elem2: "mystic_runes" },
"diamond": { elem1: null, elem2: "mystic_runes" },
},
};
elements.enchanted_wood = {
color: "#923B70",
behavior: behaviors.SOLID,
category: "fantasy",
state: "solid",
density: 0.8,
weight: 60,
reactions: {
"fire": { elem1: null, elem2: "mystic_runes" },
"plasma": { elem1: null, elem2: "charcoal" },
"water": { elem1: null, elem2: "mystic_runes" },
},
};
// update 1.1 below
// adds 3 more extra elements
// by pixelegend4
// main game by R74N called sandboxels
elements.quartzium = {
color: "#51484f",
behavior: behaviors.SOLID,
category: "fantasy",
state: "solid",
density: 1065,
weight: 100,
reactions: {
"fire": { elem1: "quartz", elem2: "quartz" },
"plasma": { elem1: "quartz", elem2: "quartz" },
},
};
elements.quartz = {
color: "#ebedeb",
behavior: behaviors.SOLID,
category: "fantasy",
state: "solid",
density: 8076,
weight: 100,
};
elements.moonite = {
color: "#e6e6e6",
behavior: behaviors.SUPERFLUID,
category: "fantasy",
state: "solid",
density: 8076,
weight: 100,
};
elements.faustium = {
color: "#8B008B",
behavior: behaviors.SUPERFLUID,
category: "fantasy",
state: "liquid",
density: 800,
viscosity: 0.01,
weight: 300,
reactions: {
"water": { elem1: "moonite", elem2: "moonite" },
},
};
// update 1.2
// adds more below
// added faustium reaction
elements.nebulaflare = {
color: ["#7500FF", "#00FFFB", "#FF00FC"],
behavior: behaviors.GAS,
state: "gas",
density: 0.1,
weight: 0.1,
category: "fantasy",
reactions: {
"fire": { elem1: "moonite", elem2: "moonite" },
"moonite": { elem1: "quartzium", elem2: "quartzium" },
},
};
elements.flaro = {
color: ["#ff4d4d", "#ff9933", "#ffd11a", "#ff9933", "#ff4d4d"],
behavior: behaviors.GAS,
category: "fantasy",
state: "gas",
density: 8076,
weight: 100,
};
elements.aurorium = {
color: ["#75c0e0", "#00ff00", "#ffffff", "#00ff00", "#75c0e0"],
behavior: behaviors.GAS,
category: "fantasy",
state: "gas",
density: 55,
weight: 1,
reactions: {
"plasma": { elem1: "explosion", elem2: "explosion" },
"flaro": { elem1: "nebulaflare", elem2: "nebulaflare" },
}
};
elements.glimmerium = {
color: ["#ff3333", "#ff6666", "#ff9999", "#ffcc99", "#ff6633"],
behavior: behaviors.LIGHT,
category: "fantasy",
state: "gas",
density: 0.01,
weight: 0.5,
temperature: 3000,
reactions: {
"aurorium": { elem1: "sodium", elem2: "sodium" },
"flaro": { elem1: "nebulaflare", elem2: "nebulaflare" },
"pulsium": { elem1: "water", elem2: "water" },
}
};
elements.osmoz = {
color: "#1ff099",
behavior: behaviors.SOLID,
category: "fantasy",
state: "solid",
density: 5000,
weight: 300,
reactions: {
"fire": { elem1: "nebulaflare", elem2: "nebulaflare" },
}
};
elements.goblin = {
"color": "#2ae856",
"state": "solid",
"behavior": [
"XX|XX|DL",
"XX|FX%0.5|M2%3 AND DL",
"XX|M1|XX",
],
"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" },
},
};
elements.fenzium = {
color: ["#D16587", "#FF1493"],
behavior: behaviors.GAS,
category: "fantasy",
state: "gas",
density: 99,
weight: 60,
reactions: {
"uranium": { elem1: "explosion", elem2: "explosion" },
}
};
elements.goblin_feeder = {
color: ["#307D7E", "#98FF98"],
behavior: behaviors.SOLID,
category: "fantasy",
state: "soid",
density: 1000,
viscosity: 1,
weight: 300,
temperature: 20,
reactions: {
"fire": { elem1: "pulsium_bar", elem2: null },
},
tick: function(pixel) {
if (Math.random() < 0.05) {
createPixel("goblins_delight", pixel.x, pixel.y);
}
},
};
// 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: 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" },
},
};
// end, chanelog moves to top
elements.plode = {
color: "#7f03fc",
behavior: [
"XX|EX:90>plasma,heat_ray,plasma,fire,fire|XX",
"XX|XX|XX",
"M2|M1 AND EX:90>fire,plasma,fire,fire,heat_ray,fire|M2",
],
category: "fantasyweapons",
state: "solid",
density: 2500,
excludeRandom: true,
};
elements.plode_maximus = {
color: "#7f03fc",
behavior: [
"XX|EX:200>plasma,heat_ray,plasma,fire,fire,plasma,heat_ray,plasma,fire,fire,plasma,heat_ray,plasma,fire,fire,plasma,heat_ray,plasma,fire,fire,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,fire,fire,fire,fire,fire,fire|XX",
"XX|XX|XX",
"M2|M1 AND EX:200>fire,plasma,fire,fire,heat_ray,fire,fire,plasma,fire,fire,heat_ray,fire,fire,plasma,fire,fire,heat_ray,fire,fire,plasma,fire,fire,heat_ray,fire,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,plasma,fire,fire,fire,fire,fire|M2",
],
category: "fantasyweapons",
state: "solid",
density: 2500,
excludeRandom: true,
};
elements.fire_golem= {
"color": "#fc5a03",
"state": "solid",
"behavior": [
"XX|CR:fire|DL",
"XX|FX%0.5|M2%3 AND DL",
"XX|M1|XX",
],
"category":"fantasy",
"temp": 600,
};
elements.snow_golem= {
"color": "#b6ccd4",
"state": "solid",
"behavior": [
"XX|CR:snow|DL",
"XX|FX%0.5|M2%3 AND DL",
"XX|M1|XX",
],
"category":"fantasy",
"temp": -70,
};
elements.water_golem= {
"color": "#4ad2ff",
"state": "solid",
"behavior": [
"XX|CR:water|DL",
"XX|FX%0.5|M2%3 AND DL",
"XX|M1|XX",
],
"category":"fantasy",
"temp": 15,
};
elements.slush_golem= {
"color": "#a7dff2",
"state": "solid",
"behavior": [
"XX|CR:slush|DL",
"XX|FX%0.5|M2%3 AND DL",
"XX|M1|XX",
],
"category":"fantasy",
"temp": 15,
};
elements.plasma_golem= {
"color": "#891af0",
"state": "solid",
"behavior": [
"XX|CR:plasma|DL",
"XX|FX%0.5|M2%3 AND DL",
"XX|M1|XX",
],
"category":"fantasy",
"temp": Infinity,
};
elements.cold_golem= {
"color": ["#00ccff","#0091ff","#00a2ff"],
"state": "solid",
"behavior": [
"XX|CR:cold_fire|DL",
"XX|FX%0.5|M2%3 AND DL",
"XX|M1|XX",
],
"category":"fantasy",
"temp": -999,
"templow": -999,
"alias": "don't put me out!",
};
elements.blood_golem= {
"color": "#ff0000",
"state": "solid",
"behavior": [
"XX|CR:blood|DL",
"XX|FX%0.5|M2%3 AND DL",
"XX|M1|XX",
],
"category":"fantasy",
"temp": 10,
};