commit
54f0e9b288
|
|
@ -0,0 +1,297 @@
|
||||||
|
//Made by SuperASAX or SuperAAX
|
||||||
|
elements.spread_bomb = {
|
||||||
|
color: "#524c41",
|
||||||
|
behavior: [
|
||||||
|
"XX|EX:10|XX",
|
||||||
|
"XX|DL|XX",
|
||||||
|
"M2 AND CL|M1 AND EX:10|M2 AND CL",
|
||||||
|
],
|
||||||
|
category: "Super's Funny Mod",
|
||||||
|
state: "solid",
|
||||||
|
density: 1300,
|
||||||
|
excludeRandom: true,
|
||||||
|
cooldown: defaultCooldown
|
||||||
|
},
|
||||||
|
|
||||||
|
elements.random_bomb = {
|
||||||
|
color: "#524c41",
|
||||||
|
behavior: [
|
||||||
|
"XX|EX:10|XX",
|
||||||
|
"CL%10|DL%5|CL%10",
|
||||||
|
"M2 AND CL%10|M1%25 AND EX:10|M2 AND CL%10",
|
||||||
|
],
|
||||||
|
category: "Super's Funny Mod",
|
||||||
|
state: "solid",
|
||||||
|
density: 1300,
|
||||||
|
excludeRandom: true,
|
||||||
|
cooldown: defaultCooldown
|
||||||
|
},
|
||||||
|
|
||||||
|
elements.strange_spread = {
|
||||||
|
color: "#ABCDEF",
|
||||||
|
category: "Super's Funny Mod",
|
||||||
|
behavior: [
|
||||||
|
"CL%90|XX|CL%90",
|
||||||
|
"XX|EX:5%0.1|XX",
|
||||||
|
"M2 AND CL%10|M1%25|M2 AND CL%10",
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
elements.cheese_matter = {
|
||||||
|
color: "#fcba03",
|
||||||
|
tick: function(pixel) {
|
||||||
|
for (var i = 0; i < adjacentCoords.length; i++) {
|
||||||
|
var coords = adjacentCoords[i];
|
||||||
|
var x = pixel.x + coords[0];
|
||||||
|
var y = pixel.y + coords[1];
|
||||||
|
if ((Math.random() < 0.05 || coords[0]) && !isEmpty(x,y,true)) {
|
||||||
|
var elem = pixelMap[x][y].element;
|
||||||
|
if (elements.cheese_matter.ignore.indexOf(elem) === -1 && elements[elem].hardness !== 1) {
|
||||||
|
if (coords[1]) {
|
||||||
|
swapPixels(pixel,pixelMap[x][y]);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
changePixel(pixelMap[x][y],"cheese_matter");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var move1Spots = [
|
||||||
|
[pixel.x, pixel.y+1],
|
||||||
|
[pixel.x+1, pixel.y+1],
|
||||||
|
[pixel.x-1, pixel.y+1],
|
||||||
|
]
|
||||||
|
if (Math.random() < 0.1) { move1Spots.push([pixel.x-1,pixel.y]) }
|
||||||
|
if (Math.random() < 0.1) { move1Spots.push([pixel.x+1,pixel.y]) }
|
||||||
|
if (Math.random() < 0.1) { move1Spots.push([pixel.x,pixel.y-1]) }
|
||||||
|
if (Math.random() < 0.1) { move1Spots.push([pixel.x-1,pixel.y-1]) }
|
||||||
|
if (Math.random() < 0.1) { move1Spots.push([pixel.x+1,pixel.y-1]) }
|
||||||
|
for (var i = 0; i < move1Spots.length; i++) {
|
||||||
|
var j = Math.floor(Math.random()*move1Spots.length);
|
||||||
|
var coords = move1Spots[j];
|
||||||
|
if (tryMove(pixel, coords[0], coords[1])) { break; }
|
||||||
|
else { move1Spots.splice(j, 1); }
|
||||||
|
}
|
||||||
|
doDefaults(pixel);
|
||||||
|
},
|
||||||
|
reactions: {
|
||||||
|
"void": { elem1:"explosion" }
|
||||||
|
},
|
||||||
|
category: "Super's Funny Mod",
|
||||||
|
state: "solid",
|
||||||
|
density: 2000,
|
||||||
|
excludeRandom: true,
|
||||||
|
ignore: ["fire","smoke","antimatter","cheese_matter","wall","ewall","plasma","void","border","cheese"],
|
||||||
|
behavior: [
|
||||||
|
"XX|XX|XX",
|
||||||
|
"XX|CH:cheese%5|XX",
|
||||||
|
"XX|XX|XX",
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
elements.antiball = {
|
||||||
|
color: "#EEA537",
|
||||||
|
behavior: [
|
||||||
|
"ST|ST AND M1|ST",
|
||||||
|
"ST|XX|ST",
|
||||||
|
"ST|ST|ST",
|
||||||
|
],
|
||||||
|
state: "solid",
|
||||||
|
category: "Super's Funny Mod"
|
||||||
|
},
|
||||||
|
|
||||||
|
elements.bomb_bird = {
|
||||||
|
color: "#997457",
|
||||||
|
properties: { "phase": 2, "rising":0 },
|
||||||
|
tick: function(pixel) {
|
||||||
|
if (Math.random() < 0.00007 && isEmpty(pixel.x,pixel.y+2)) {
|
||||||
|
createPixel("spread_bomb",pixel.x,pixel.y+2);
|
||||||
|
}
|
||||||
|
var newX = pixel.x;
|
||||||
|
var newY = pixel.y;
|
||||||
|
if (pixel.phase === 1) { // Landing
|
||||||
|
newX += pixel.flipX ? -1 : 1;
|
||||||
|
newY += Math.random() < 0.5 ? 0 : 1;
|
||||||
|
if (!tryMove(pixel, newX, newY)) {
|
||||||
|
if (outOfBounds(newX, newY)) { pixel.phase = 0 }
|
||||||
|
else {
|
||||||
|
var newPixel = pixelMap[newX][newY];
|
||||||
|
if (elements[newPixel.element].state !== "solid") { pixel.phase = 3; }
|
||||||
|
else if (newPixel.element === "bomb_bird") {
|
||||||
|
pixel.phase = 3;
|
||||||
|
newPixel.phase = 3;
|
||||||
|
}
|
||||||
|
else { pixel.phase = 0; }
|
||||||
|
}
|
||||||
|
} // Stop landing
|
||||||
|
}
|
||||||
|
else if (pixel.phase === 2) { // Gliding
|
||||||
|
newX += pixel.flipX ? -1 : 1;
|
||||||
|
newY += Math.random() < 0.9 ? 0 : 1;
|
||||||
|
if (Math.random() < 0.01) { pixel.phase = 1 } // Start landing
|
||||||
|
if (!tryMove(pixel, newX, newY)) {
|
||||||
|
pixel.flipX = !pixel.flipX;
|
||||||
|
if (!outOfBounds(newX, newY) && pixelMap[newX][newY].element !== "bird") {
|
||||||
|
pixel.phase = 3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (pixel.phase === 0) { // Standing
|
||||||
|
if (Math.random() < 0.05) { newX += pixel.flipX ? -1 : 1; }
|
||||||
|
newY ++;
|
||||||
|
if (Math.random() < 0.01) { pixel.phase = 3 } // Start rising
|
||||||
|
if (!tryMove(pixel, newX, newY)) {
|
||||||
|
if (!outOfBounds(newX, newY) && pixelMap[newX][newY].element === "bird") {
|
||||||
|
pixel.phase = 3;
|
||||||
|
pixelMap[newX][newY].phase = 3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (pixel.phase === 3) { // Rising
|
||||||
|
newX += pixel.flipX ? -1 : 1;
|
||||||
|
newY --;
|
||||||
|
if (!tryMove(pixel, newX, newY) || (pixel.rising > 5 && Math.random() < 0.05)) { pixel.phase = 2; pixel.rising = 0; } // Start gliding
|
||||||
|
else { pixel.rising ++; }
|
||||||
|
}
|
||||||
|
doHeat(pixel);
|
||||||
|
doElectricity(pixel);
|
||||||
|
doBurning(pixel);
|
||||||
|
},
|
||||||
|
flippableX: true,
|
||||||
|
reactions: {
|
||||||
|
"head": {elem1:"explosion"},
|
||||||
|
"body": {elem1:"explosion"},
|
||||||
|
"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 },
|
||||||
|
"stink_bug": { elem2:"stench", 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 },
|
||||||
|
"rice": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
|
||||||
|
"coffee_bean": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
|
||||||
|
"coffee_ground": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
|
||||||
|
"nut": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
|
||||||
|
"nut_meat": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
|
||||||
|
"nut_butter": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL },
|
||||||
|
"jelly": { 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:"Super's Funny Mod",
|
||||||
|
burn:50,
|
||||||
|
burnTime:100,
|
||||||
|
breakInto: ["feather","blood"],
|
||||||
|
state: "solid",
|
||||||
|
density: 400,
|
||||||
|
conduct: 0.5
|
||||||
|
},
|
||||||
|
|
||||||
|
elements.fillerX = {
|
||||||
|
color: "#ae4cd9",
|
||||||
|
behavior: [
|
||||||
|
"DL|CL|DL",
|
||||||
|
"CL|XX|CL",
|
||||||
|
"DL|CL|DL",
|
||||||
|
],
|
||||||
|
category:"special",
|
||||||
|
excludeRandom: true,
|
||||||
|
reactions: {
|
||||||
|
"neutron": { elem1:"lattice" },
|
||||||
|
"proton": { elem1:"vertical" },
|
||||||
|
"electric": { elem1:"horizontal" },
|
||||||
|
"positron": { elem1:"vertical" },
|
||||||
|
"plasma": { elem1:"armageddon", tempMin:500, charged:true },
|
||||||
|
},
|
||||||
|
density: 1834
|
||||||
|
},
|
||||||
|
elements.latticeX = {
|
||||||
|
color: "#cb4cd9",
|
||||||
|
behavior: [
|
||||||
|
"CL|DL|CL",
|
||||||
|
"DL|XX|DL",
|
||||||
|
"CL|DL|CL",
|
||||||
|
],
|
||||||
|
tick: function(pixel) {
|
||||||
|
for (var i = 0; i < adjacentCoords.length; i++) {
|
||||||
|
var coords = adjacentCoords[i];
|
||||||
|
var x = pixel.x + coords[0];
|
||||||
|
var y = pixel.y + coords[1];
|
||||||
|
if (!isEmpty(x,y,true) && pixelMap[x][y].element === "lattice") {
|
||||||
|
deletePixel(x,y)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
reactions: {
|
||||||
|
"cold_fire": { elem1:"ice_nine", chance:0.1 },
|
||||||
|
"proton": { elem1:"filler", elem2:null, chance:0.1 },
|
||||||
|
"electric": { elem1:null, elem2:"filler", chance:0.1 },
|
||||||
|
},
|
||||||
|
category:"special",
|
||||||
|
excludeRandom: true,
|
||||||
|
movable: false,
|
||||||
|
density: 917
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
elements.mystery_thing_1 = {
|
||||||
|
color: "#EEA537",
|
||||||
|
behavior: [
|
||||||
|
"ST AND CL%10|ST AND CL%10 AND M2|ST AND CL%10",
|
||||||
|
"ST AND CL%10|DL%25 AND EX:5%1|ST AND CL%10",
|
||||||
|
"ST AND CL%10|ST AND M1|ST AND CL%10",
|
||||||
|
],
|
||||||
|
state: "solid",
|
||||||
|
category: "Super's Funny Mod",
|
||||||
|
reactions: {
|
||||||
|
"water": { elem1:"null" }
|
||||||
|
},
|
||||||
|
},
|
||||||
|
elements.mystery_thing_2 = {
|
||||||
|
color: "#abcfed",
|
||||||
|
behavior: [
|
||||||
|
"CL%10 AND CH:galvanized_steel%10|CL%10 AND CH:galvanized_steel%10|CL%10 AND CH:galvanized_steel%10",
|
||||||
|
"M2|CH:galvanized_steel%10 AND CH:spread_bomb%0.1|M2",
|
||||||
|
"CH:null%10|M1|CH:null%10",
|
||||||
|
],
|
||||||
|
category: "Super's Funny Mod",
|
||||||
|
name:"0.1 by 0.1 meter apartment"
|
||||||
|
},
|
||||||
|
elements.sandboxelizer = {
|
||||||
|
color: "#e6d577",
|
||||||
|
category: "Super's Funny Mod",
|
||||||
|
behavior: [
|
||||||
|
"CL%3 AND CH:sand%10|M2|CL%3 AND CH:sand%10",
|
||||||
|
"M2|M1|M2",
|
||||||
|
"CL%3 AND CH:sand%10|M2|CL%3 AND CH:sand%10",
|
||||||
|
],
|
||||||
|
reactions: {
|
||||||
|
"sand": { elem1:"void", chance:0.1}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
//just doing some modding
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
//Made by SuperASAX or SuperAAX
|
||||||
|
|
||||||
elements.liquid_tnt = {
|
elements.liquid_tnt = {
|
||||||
color: "#c92a2a",
|
color: "#c92a2a",
|
||||||
behavior: behaviors.LIQUID,
|
behavior: behaviors.LIQUID,
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
//Made by SuperASAX or SuperAAX
|
||||||
|
|
||||||
elements.torch = {
|
elements.torch = {
|
||||||
color: "#d68542",
|
color: "#d68542",
|
||||||
behavior: [
|
behavior: [
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
//Made by SuperASAX or SuperAAX
|
||||||
|
|
||||||
|
elements.metal_scrap = {
|
||||||
|
color: ["#b0afb4","#8c8f98","#cbcdcd","#6c6c6a","#fef9ff"],
|
||||||
|
behavior: behaviors.POWDER,
|
||||||
|
reactions: {
|
||||||
|
"rust": { elem1:null, elem2:"thermite", chance:0.1 },
|
||||||
|
},
|
||||||
|
tempHigh: 1538,
|
||||||
|
category: "powders",
|
||||||
|
density: 2720,
|
||||||
|
state: "solid",
|
||||||
|
conduct: 0.43,
|
||||||
|
hardness: 0.266,
|
||||||
|
stateHigh:"molten_metal_scrap"
|
||||||
|
},
|
||||||
|
|
||||||
|
elements.molten_metal_scrap = {
|
||||||
|
color: ["#b0afb4","#8c8f98","#cbcdcd","#6c6c6a","#fef9ff"],
|
||||||
|
behavior: behaviors.MOLTEN,
|
||||||
|
category: "liquids",
|
||||||
|
density: 2720,
|
||||||
|
state: "liquid",
|
||||||
|
temp: 1600,
|
||||||
|
conduct: 0.43,
|
||||||
|
hidden: true,
|
||||||
|
hardness: 0.266,
|
||||||
|
tempLow: 1538,
|
||||||
|
stateLow: "metal_scrap",
|
||||||
|
tick: function(pixel) {
|
||||||
|
var randomNumGot=Math.random()
|
||||||
|
if (randomNumGot < 0.15) {
|
||||||
|
changePixel(pixelMap[pixel.x][pixel.y],"molten_tin");
|
||||||
|
}
|
||||||
|
if (randomNumGot < 0.30 && randomNumGot > 0.15) {
|
||||||
|
changePixel(pixelMap[pixel.x][pixel.y],"molten_aluminum");
|
||||||
|
}
|
||||||
|
if (randomNumGot < 0.45 && randomNumGot > 0.30) {
|
||||||
|
changePixel(pixelMap[pixel.x][pixel.y],"molten_brass");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
Loading…
Reference in New Issue