diff --git a/fonts/fusion-pixel-12px-monospaced-ja.ttf b/fonts/fusion-pixel-12px-monospaced-ja.ttf new file mode 100644 index 00000000..02437daf Binary files /dev/null and b/fonts/fusion-pixel-12px-monospaced-ja.ttf differ diff --git a/fonts/fusion-pixel-12px-monospaced-ko.ttf b/fonts/fusion-pixel-12px-monospaced-ko.ttf new file mode 100644 index 00000000..3c9156c3 Binary files /dev/null and b/fonts/fusion-pixel-12px-monospaced-ko.ttf differ diff --git a/fonts/fusion-pixel-12px-monospaced-latin.ttf b/fonts/fusion-pixel-12px-monospaced-latin.ttf new file mode 100644 index 00000000..1ef94732 Binary files /dev/null and b/fonts/fusion-pixel-12px-monospaced-latin.ttf differ diff --git a/fonts/fusion-pixel-12px-monospaced-zh_hans.ttf b/fonts/fusion-pixel-12px-monospaced-zh_hans.ttf new file mode 100644 index 00000000..e88bb7f6 Binary files /dev/null and b/fonts/fusion-pixel-12px-monospaced-zh_hans.ttf differ diff --git a/fonts/fusion-pixel-12px-monospaced-zh_hant.ttf b/fonts/fusion-pixel-12px-monospaced-zh_hant.ttf new file mode 100644 index 00000000..7dbfe5db Binary files /dev/null and b/fonts/fusion-pixel-12px-monospaced-zh_hant.ttf differ diff --git a/lang/de.json b/lang/de.json index 008463cb..fe290762 100644 --- a/lang/de.json +++ b/lang/de.json @@ -1,6 +1,6 @@ { "#lang.name": "Deutsch", -"#lang.credit": "pirany", +"#lang.credit": "pirany, squarescreamyt", "land":"Land", "liquids":"Flüssigkeiten", "life":"Leben", @@ -99,7 +99,7 @@ "ant":"Ameise", "fly":"Fliege", "firefly":"Glühwürmchen", -"hive":"Nest", +"hive":"Bienenstock", "bee":"Biene", "stink_bug":"Wanze", "dead_bug":"Töter_Käfer", diff --git a/lang/tok.json b/lang/tok.json index 90a70d54..57e8460b 100644 --- a/lang/tok.json +++ b/lang/tok.json @@ -227,7 +227,7 @@ "bamboo":"kasi_palisa", "iron":"", "copper":"", -"gold":"", +"gold":"kiwen_mani", "steel":"", "nickel":"", "zinc":"", @@ -243,14 +243,14 @@ "gallium":"kiwen_pimeja_walo_pi_wile_kama_telo", "molten_gallium":"telo_pimeja_walo_pi_seli", "gallium_gas":"kon_pimeja_walo_pi_seli_mute", -"rose_gold":"kiwen_jelo_mute_pi_loje_walo", -"purple_gold":"kiwen_jelo_mute_pi_loje_laso", -"blue_gold":"kiwen_jelo_mute_pi_laso_sewi", -"electrum":"kiwen_jelo_mute_pi_laso_kasi", +"rose_gold":"kiwen_mani_pi_loje_walo", +"purple_gold":"kiwen_mani_pi_loje_laso", +"blue_gold":"kiwen_mani_pi_laso_sewi", +"electrum":"kiwen_mani_pi_laso_kasi", "pyrite":"", "solder":"", "molten_copper":"", -"molten_gold":"", +"molten_gold":"telo_seli_pi_kiwen_mani", "molten_silver":"", "molten_iron":"", "molten_nickel":"", @@ -301,13 +301,13 @@ "crumb":"pan_ko", "baked_batter":"pan_pi_ko_telo_pan", "wheat":"", -"candy":"", +"candy":"kiwen_suwi", "coffee_bean":"kili_pi_telo_pimeja_loje", "coffee_ground":"ko_kili_pi_telo_pimeja_loje", "nut":"kili_lili_pi_loje_pimeja", "nut_meat":"ko_kili_lili_pi_loje_pimeja", "nut_butter":"ko_telo_pi_kili_loje_pimeja", -"jelly":"", +"jelly":"ko_telo_pi_kili", "baking_soda":"", "yogurt":"ko_walo_pi_telo_walo", "frozen_yogurt":"ko_walo_lete_pi_telo_walo", @@ -374,8 +374,8 @@ "smog":"", "stench":"", "liquid_stench":"", -"fragrance":"", -"perfume":"", +"fragrance":"kon_pi_pona_tawa_nena", +"perfume":"telo_pi_pona_tawa_nena", "cyanide":"", "cyanide_gas":"", "ozone":"", @@ -409,7 +409,7 @@ "uranium":"", "molten_uranium":"", "diamond":"", -"gold_coin":"", +"gold_coin":"mani", "rust":"", "oxidized_copper":"", "alga":"", @@ -528,9 +528,9 @@ "grease": "telo_jelo_pi_moku_soweli", "fat": "kiwen_walo_pi_moku_soweli", "potassium": "kiwen_pi_telo_pakala", -"molten_potassium": "", +"molten_potassium": "telo_seli_pi_kiwen_telo_pakala", "magnesium": "kiwen_pi_kiwen_walo_sijelo", -"molten_magnesium": "", +"molten_magnesium": "telo_seli_pi_kiwen_walo_sijelo", "sandstorm": "", "caustic_potash": "", "antibomb": "kiwen_pakala_pi_pana_ijo", diff --git a/lang/zh_cn.json b/lang/zh_cn.json index 7ce3b1ee..c79f77c7 100644 --- a/lang/zh_cn.json +++ b/lang/zh_cn.json @@ -1,6 +1,7 @@ { "#lang.name": "简体中文", -"#lang.credit": "squarescreamyt", +"#lang.credit": "squarescreamyt, pixelegend4", +"#lang.font": "fusion-pixel-12px-monospaced-zh_hans", "land":"地", "liquids":"液体", "life":"生活", @@ -420,7 +421,7 @@ "baked_clay":"", "clay_shard":"", "porcelain_shard":"", -"feather":"", +"feather":"羽毛", "confetti":"", "glitter":"", "bead":"", @@ -475,15 +476,15 @@ "molten_dirt":"", "debug":"", "prop":"", -"salt_ice":"", -"sugar_ice":"", -"seltzer_ice":"", +"salt_ice":"盐水冰", +"sugar_ice":"糖水冰", +"seltzer_ice":"苏打水冰", "dirty_ice":"", "pool_ice":"", -"blood_ice":"", +"blood_ice":"血冰", "antibody_ice":"", "infection_ice":"", -"unknown":"", +"unknown":"未知", "slime_ice":"", "antiice":"", "ammonia_ice":"", @@ -527,17 +528,17 @@ "nut_oil": "花生油", "grease": "", "fat": "肥", -"potassium": "", -"molten_potassium": "", -"magnesium": "", -"molten_magnesium": "", +"potassium": "钾", +"molten_potassium": "熔融钾", +"magnesium": "镁", +"molten_magnesium": "熔融镁", "sandstorm": "", -"caustic_potash": "", +"caustic_potash": "氢氧化钾", "antibomb": "", "tornado": "龙卷风", "earthquake": "地震", "tsunami": "海啸", "blaster": "", "propane_ice": "", -"molten_caustic_potash": "" +"molten_caustic_potash": "熔融氢氧化钾" } diff --git a/lang/zh_hant.json b/lang/zh_hant.json index 60f85a5a..ccc51803 100644 --- a/lang/zh_hant.json +++ b/lang/zh_hant.json @@ -1,6 +1,7 @@ { "#lang.name": "繁體中文", -"#lang.credit": "guinea_of_pig, Feeshmaster", +"#lang.credit": "guinea_of_pig, Feeshmaster, squarescreamyt", +"#lang.font": "fusion-pixel-12px-monospaced-zh_hant", "land":"地", "liquids":"液", "life":"生活", @@ -523,21 +524,21 @@ "molten_potassium_salt":"熔鉀鹽", "molten_sodium_acetate":"熔醋酸鈉", "frozen_nitro":"冰硝酸甘油", -"cured_meat": "", -"nut_oil": "", -"grease": "", -"fat": "", -"potassium": "", -"molten_potassium": "", -"magnesium": "", -"molten_magnesium": "", -"sandstorm": "", -"caustic_potash": "", -"antibomb": "", -"tornado": "", -"earthquake": "", -"tsunami": "", -"blaster": "", -"propane_ice": "", -"molten_caustic_potash": "" -} \ No newline at end of file +"cured_meat": "醃製肉", +"nut_oil": "堅果油", +"grease": "油脂", +"fat": "脂肪", +"potassium": "鉀", +"molten_potassium": "熔鉀", +"magnesium": "鎂", +"molten_magnesium": "熔鎂", +"sandstorm": "沙暴", +"caustic_potash": "氢氧化鉀", +"antibomb": "防爆", +"tornado": "龍捲風", +"earthquake": "地震", +"tsunami": "海嘯", +"blaster": "爆破器", +"propane_ice": "丙烷冰", +"molten_caustic_potash": "熔氢氧化鉀" +} diff --git a/mod-list.html b/mod-list.html index 97910bad..06e0a360 100644 --- a/mod-list.html +++ b/mod-list.html @@ -243,7 +243,7 @@ fwibblen.jsAdds a flying creature that turns nickel into itself, and a second creature that does the same to the first oneAlice human_edit.jsImprovements to humansAlice kopalstuff.jsAdds creatures, spirits, DNA, foods, and moreDaviStudios -lost_souls.jsAdds souls and related elementspixelegend4 +lost_souls.jsAdds souls and related elements, the mod can also be found https://github.com/HACKERPRO908/lost_souls.jspixelegend4, SquareScreamYT, salmonfishy miscible_psoup_and_birthpool.jsMakes Primordial Soup and Birthpool mix instead of the birthpool settling to the bottom. Will be deprecated upon the release of Magical MenagerieAlice mobs.jsAdds Creepers, Zombies, and SkeletonsAlice nocancer.jsRemoves cancer from the game one tick after it is createdmollthecoder diff --git a/mods/aChefsDream.js b/mods/aChefsDream.js index d33bd982..5330f1df 100644 --- a/mods/aChefsDream.js +++ b/mods/aChefsDream.js @@ -2,7 +2,7 @@ Created by SquareScreamYT <@918475812884344852> and RealerRaddler <@914371295561535508> Thanks to Alice <@697799964985786450>, nousernamefound <@316383921346707468>, Adora the Transfem <@778753696804765696> and Fioushemastor <@738828785482203189> for helping :) -v1.10.2 +v1.10.5 you can support me at my youtube: https://youtube.com/@sqec @@ -16,7 +16,6 @@ Upcoming Features: - pigs, ham and bacon - garlic - stainless steel -- chili - pepper plants - hot chocolate - cows and beef @@ -329,7 +328,16 @@ Changelog (v1.10.1) Changelog (v1.10.2) - - added chocolate chip, sprinkles and topping explosions + - added sprinkle explosions + + + + +Changelog (v1.10.5) + - added chilli + - added chilli seed, stem and leaves + - added chilli powder + - added hot sauce @@ -6109,10 +6117,6 @@ elements.vanilla_stem = { elements.vanilla_leaves = { color: "#5d9c48", reactions: { - "water": { elem2:"vanilla_tea", tempMin:80 }, - "salt_water": { elem2:"vanilla_tea", tempMin:80 }, - "sugar_water": { elem2:"vanilla_tea", tempMin:80 }, - "seltzer": { elem2:"vanilla_tea", tempMin:80 }, "stench": { elem2:null, chance:0.25 }, "steam": { elem2:"fragrance", chance:0.1 }, "flea": { elem2:null, chance:0.01 }, @@ -6439,3 +6443,256 @@ elements.sprinkle_bomb = { excludeRandom: true, cooldown: defaultCooldown } + +elements.chilli_stem = { + color: "#5d9c48", + behavior: behaviors.WALL, + 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 }, + "mercury": { elem1:"dead_plant", elem2:null, chance:0.01 }, + "stench": { elem2:null, chance:0.25 }, + "carbon_dioxide": { elem2:"oxygen", chance:0.25 }, + }, + category:"life", + tempHigh: 100, + stateHigh: "dead_plant", + tempLow: -1.66, + stateLow: "frozen_plant", + burn:15, + burnTime:60, + burnInto: "dead_plant", + state: "solid", + density: 1050, + hidden: true, + breakInto: "herb", + breakIntoColor:"#245c1b", + tick: function(pixel) { + if (isEmpty(pixel.x,pixel.y+1) && pixel.grower == false && pixel.leafgrower == false) { + movePixel(pixel,pixel.x,pixel.y+1); + } + if (pixel.grower == true) { + // check if left side has stem if no set direction to right + if (!isEmpty(pixel.x-1,pixel.y) && pixel.direction == "undefined") { + if (pixelMap[pixel.x-1][pixel.y].element == "chilli_stem") { + pixel.direction = "right"; + } + } + // same thing to set direction the left + else if (!isEmpty(pixel.x+1,pixel.y) && pixel.direction == "undefined") { + if (pixelMap[pixel.x+1][pixel.y].element == "chilli_stem") { + pixel.direction = "left"; + } + } + } + if (pixel.grower == true) { + // left + if (pixel.direction == "left") { + if (isEmpty(pixel.x-1,pixel.y-1) && Math.random() < 0.1) { + createPixel("chilli_leaves",pixel.x-1,pixel.y-1); + if (isEmpty(pixel.x-2,pixel.y-2) && Math.random() < 0.2) { + createPixel("chilli_leaves",pixel.x-2,pixel.y-2); + if (isEmpty(pixel.x-3,pixel.y-3) && Math.random() < 0.4) { + createPixel("chilli_leaves",pixel.x-3,pixel.y-3); + } + } + } + } + // right + else if (pixel.direction == "right") { + if (isEmpty(pixel.x+1,pixel.y-1) && Math.random() < 0.1) { + createPixel("chilli_leaves",pixel.x+1,pixel.y-1); + if (isEmpty(pixel.x+2,pixel.y-2) && Math.random() < 0.2) { + createPixel("chilli_leaves",pixel.x+2,pixel.y-2); + if (isEmpty(pixel.x+3,pixel.y-3) && Math.random() < 0.4) { + createPixel("chilli_leaves",pixel.x+3,pixel.y-3); + } + } + } + } + } + pixel.age++; + doDefaults(pixel); + }, + properties: { + "grower":false, + "age":0, + "direction":"undefined", + } +} +elements.chilli_leaves = { + color: "#5d9c48", + reactions: { + "water": { elem2:"chilli_tea", tempMin:80 }, + "salt_water": { elem2:"chilli_tea", tempMin:80 }, + "sugar_water": { elem2:"chilli_tea", tempMin:80 }, + "seltzer": { elem2:"chilli_tea", tempMin:80 }, + "stench": { elem2:null, chance:0.25 }, + "steam": { elem2:"fragrance", chance:0.1 }, + "flea": { elem2:null, chance:0.01 }, + "termite": { elem2:null, chance:0.01 }, + "fly": { elem2:null, chance:0.01 }, + "ant": { elem2:null, chance:0.01 }, + "stink_bug": { elem2:null, chance:0.01 }, + "yeast": {elem1:"tea", chance:0.01}, + }, + tick: function(pixel) { + if (isEmpty(pixel.x-1,pixel.y-1) && !isEmpty(pixel.x+1,pixel.y+1) && Math.random() < 0.03) { + createPixel("chilli",pixel.x-1,pixel.y-1); + } + if (isEmpty(pixel.x+1,pixel.y-1) && !isEmpty(pixel.x-1,pixel.y+1) && Math.random() < 0.03) { + createPixel("chilli",pixel.x+1,pixel.y-1); + } + pixel.age++; + doDefaults(pixel); + }, + behavior: behaviors.WALL, + tempHigh: 300, + stateHigh: ["fire","smoke","smoke","smoke","ash"], + tempLow: -2, + stateLow: "frozen_plant", + burn:10, + burnTime:300, + burnInto: ["fire","smoke","smoke","smoke","smoke","smoke","smoke","fragrance"], + category:"life", + state: "solid", + density: 1400, + isFood: true, + hidden:true, + breakInto: "herb", + breakIntoColor:"#245c1b", +}, +elements.chilli_seed = { + color: "#806d3b", + tick: function(pixel) { + if (isEmpty(pixel.x,pixel.y+1)) { + movePixel(pixel,pixel.x,pixel.y+1); + } + else { + if (Math.random() < 0.1 && 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("chilli_stem",pixel.x,pixel.y+1); + pixel.height++; + } + if (pixel.height < 12 && pixel.height > 2 && pixel.height == 3) { + if (isEmpty(pixel.x+1,pixel.y)) { + createPixel("chilli_stem",pixel.x+1,pixel.y); + pixelMap[pixel.x+1][pixel.y].grower = true; + } + } + if (pixel.height < 12 && pixel.height > 2 && pixel.height == 9) { + if (isEmpty(pixel.x+1,pixel.y)) { + createPixel("chilli_stem",pixel.x+1,pixel.y); + pixelMap[pixel.x+1][pixel.y].grower = true; + } + } + if (pixel.height < 12 && pixel.height > 2 && pixel.height == 6) { + if (isEmpty(pixel.x-1,pixel.y)) { + createPixel("chilli_stem",pixel.x-1,pixel.y); + pixelMap[pixel.x-1][pixel.y].grower = true; + } + } + if (pixel.height > 11) { + if (isEmpty(pixel.x-1,pixel.y) && isEmpty(pixel.x+1,pixel.y)) { + createPixel("chilli_stem",pixel.x-1,pixel.y); + pixelMap[pixel.x-1][pixel.y].grower = true; + createPixel("chilli_stem",pixel.x+1,pixel.y); + pixelMap[pixel.x+1][pixel.y].grower = true; + deletePixel(pixel.x,pixel.y); + } + } + } + pixel.age++; + } + doDefaults(pixel); + }, + properties: { + "age":0, + "height":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|XX|XX", + "XX|M1|XX", + ], +}; +elements.chilli = { + color: "#ba3030", + behavior: [ + "XX|XX|XX", + "XX|XX|XX", + "ST:chilli_leaves|M1|ST:chilli_leaves", + ], + category:"food", + tempHigh: 100, + stateHigh: "dead_plant", + burn:15, + burnTime:60, + burnInto: "dead_plant", + state: "solid", + density: 1050, + breakInto: "chilli_powder", + reactions: { + "sauce": {elem1:null, elem2:"hot_sauce", chance:2} + }, +} +elements.chilli_powder = { + color: "#a32121", + reactions: { + "stench": { elem2:null, chance:0.25 }, + "steam": { elem2:"fragrance", chance:0.1 }, + "flea": { elem2:null, chance:0.01 }, + "termite": { elem2:null, chance:0.01 }, + "fly": { elem2:null, chance:0.01 }, + "ant": { elem2:null, chance:0.01 }, + "stink_bug": { elem2:null, chance:0.01 }, + "sauce": {elem1:null, elem2:"hot_sauce", chance:2} + }, + behavior: behaviors.POWDER, + tempHigh: 300, + stateHigh: ["fire","smoke","smoke","smoke","ash"], + burn:10, + burnTime:300, + burnInto: ["fire","smoke","smoke","smoke","smoke","smoke","smoke","fragrance"], + category:"food", + state: "solid", + density: 1400, + isFood: true, +} +elements.hot_sauce = { + color: "#a31414", + behavior: behaviors.LIQUID, + reactions: { + "stench": { elem2:null }, + }, + viscosity: 2600, + tempHigh: 260, + stateHigh: ["steam","salt","fragrance"], + tempLow: -2, + category:"food", + state: "liquid", + density: 1031.33, + stain: 0.01, + isFood: true +} +elements.head.reactions.hot_sauce = {elem2:["smoke","fire",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null], chance:3} diff --git a/mods/lost_souls.js b/mods/lost_souls.js index 40350902..a39b9a6c 100644 --- a/mods/lost_souls.js +++ b/mods/lost_souls.js @@ -1,6 +1,6 @@ elements.ghost_particle = { color: "#d9d2d0", - behavior: behaviors.GAS, + behavior: behaviors.DGAS, category: "soul", state: "gas", }; @@ -9,9 +9,9 @@ elements.soul_fish = { color: ["#808080","#a52a2a"], category: "soul", behavior: [ - "XX|CR:flash|XX", - "CR:flash AND M2|XX|CR:flash AND M2", - "M1|CR:flash AND M1|M1", + "XX|M2|M1", + "XX|FX%2|BO", + "XX|XX|M1", ], reactions: { "algae": { elem2:null, chance:0.25, func:behaviors.FEEDPIXEL }, @@ -35,7 +35,12 @@ elements.soul_fish = { "cell": { elem2:null, chance:0.15, func:behaviors.FEEDPIXEL }, "crumb": { elem2:null, chance:0.1, func:behaviors.FEEDPIXEL }, "alcohol": { elem1:"meat", chance:0.001 }, - } + }, + tempHigh: 50000, + stateHigh: "ghost_particle", + category:"soul", + state: "solid", + density: 1080, }; elements.soul_anger_block = { color: ["#eb4034","#ed2415"], @@ -60,7 +65,6 @@ elements.soul_dirt = { } else { pixel.methaned = true; }; - createPixel("ghost_particle",pixel.x,pixel.y); }; pixel.age++ }, @@ -69,3 +73,105 @@ elements.soul_dirt = { density: 1050, excludeRandom: true, }; + +elements.death_reaper = { + color: "#454545", + behavior: [ + "XX|M2|M1", + "XX|FX%2|BO", + "XX|XX|M1", + ], + reactions: { + human: { elem2: ["ghost_particle",null] }, + head: { elem2: ["ghost_particle",null] }, + body: { elem2: ["ghost_particle",null] }, + worm: { elem2: ["ghost_particle",null] }, + fish: { elem2: ["ghost_particle",null] }, + frozen_fish: { elem2: ["ghost_particle",null] }, + slug: { elem2: ["ghost_particle",null] }, + snail: { elem2: ["ghost_particle",null] }, + bird: { elem2: ["ghost_particle",null] }, + rat: { elem2: ["ghost_particle",null] }, + frog: { elem2: ["ghost_particle",null] }, + frozen_frog: { elem2: ["ghost_particle",null] }, + tadpole: { elem2: ["ghost_particle",null] }, + stink_bug: { elem2: ["ghost_particle",null] }, + bee: { elem2: ["ghost_particle",null] }, + ghost_particle: { elem2:null, chance:0.2, func:behaviors.FEEDPIXEL }, + flea: { elem2: ["ghost_particle",null] }, + termite: { elem2: ["ghost_particle",null] }, + frozen_worm: { elem2: ["ghost_particle",null] }, + flea: { elem2: ["ghost_particle",null] }, + ant: { elem2: ["ghost_particle",null] }, + fly: { elem2: ["ghost_particle",null] }, + firefly: { elem2: ["ghost_particle",null] }, + bee: { elem2: ["ghost_particle",null] }, + }, + tempHigh: 10000, + stateHigh: "bone", + category:"soul", + state: "solid", + density: 1500, +}; +elements.tombstone = { + color: "#aaaaaa", + behavior: behaviors.STURDYPOWDER, + tempHigh: 1500, + tick: function(pixel) { + if (isEmpty(pixel.x+1,pixel.y) && Math.random() < 0.1) { + createPixel("ghost_particle",pixel.x+1,pixel.y); + } + doDefaults(pixel); + }, + stateHigh: "magma", + category: "soul", + state: "solid", + density: 2400, + hardness: 0.5, + breakInto: "dust", + darkText: true +} +elements.tombstone_seed = { + color: "#eeeff2", + tick: function(pixel) { + if (isEmpty(pixel.x+1,pixel.y) && + isEmpty(pixel.x-1,pixel.y) + isEmpty(pixel.x+1,pixel.y-1) && + isEmpty(pixel.x-1,pixel.y-1) && + isEmpty(pixel.x,pixel.y-1) && + isEmpty(pixel.x+1,pixel.y-2) && + isEmpty(pixel.x-1,pixel.y-2) && + isEmpty(pixel.x,pixel.y-2) && + isEmpty(pixel.x+1,pixel.y-3) && + isEmpty(pixel.x-1,pixel.y-3) && + isEmpty(pixel.x,pixel.y-3)) { + createPixel("tombstone",pixel.x+1,pixel.y); + createPixel("tombstone",pixel.x-1,pixel.y); + createPixel("tombstone",pixel.x+1,pixel.y-1); + createPixel("tombstone",pixel.x-1,pixel.y-1); + createPixel("tombstone",pixel.x,pixel.y-1); + createPixel("tombstone",pixel.x+1,pixel.y-2); + createPixel("tombstone",pixel.x-1,pixel.y-2); + createPixel("tombstone",pixel.x,pixel.y-2); + createPixel("tombstone",pixel.x+1,pixel.y-3); + createPixel("tombstone",pixel.x-1,pixel.y-3); + createPixel("tombstone",pixel.x,pixel.y-3); + } + if (pixel.age > 100) { + changePixel(pixel,"tombstone"); + } + pixel.age++ + doDefaults(pixel); + }, + properties: { + age:0 + }, + category: "soul", + state: "solid", + density: 1500, + cooldown: defaultCooldown, + seed: true, + maxSize: 1, + excludeRandom: true, + behavior: behaviors.STURDYPOWDER, +}; diff --git a/mods/selective_paint.js b/mods/selective_paint.js index 5cce2a37..822ff9bc 100644 --- a/mods/selective_paint.js +++ b/mods/selective_paint.js @@ -28,3 +28,33 @@ elements.selective_paint = { excludeRandom:true, desc: "Use on selected pixels to change their color." } +selectivePaintElem2 = "" +elements.exclusive_paint = { + color: ["#c27070","#c29c70","#c2c270","#70c270","#70c2c2","#7070c2","#c270c2"], + onSelect: function() { + var answer2 = prompt("Please input the desired element not to paint. It will not work if you enter multiple elements types while paused.",(selectivePaintElem2||undefined)); + if (!answer2) { return } + selectivePaintElem2 = mostSimilarElement(answer2); + }, + tool: function(pixel) { + if (pixel.element != selectivePaintElem2) { + if (!shiftDown) { + pixel.color = pixelColorPick(pixel,currentColor) + } + else { + // convert the hex of currentColor to rgb and set it as a string + var rgb = currentColor.replace("#","").match(/.{1,2}/g); + for (var i = 0; i < rgb.length; i++) { + rgb[i] = parseInt(rgb[i],16); + } + pixel.color = "rgb(" + rgb.join(",") + ")" + } + delete pixel.origColor; + } + }, + customColor: true, + category: "tools", + canPlace: false, + excludeRandom:true, + desc: "Used to paint pixels other than the one selected." +}