diff --git a/modular_chomp/code/modules/hydro/plants.dm b/modular_chomp/code/modules/hydro/plants.dm new file mode 100644 index 0000000000..7d3d5263e3 --- /dev/null +++ b/modular_chomp/code/modules/hydro/plants.dm @@ -0,0 +1,52 @@ +/datum/seed/flower/sunflower + mutants = list("solarflower", "soulflower") + +/datum/seed/cherries + mutants = list("cherrybomb") + +/datum/seed/citrus/orange + mutants = list("nuclearorange", "livewireorange" ) + +/datum/seed/flower/sunflower/soulflower + name = "soulflower" + seed_name = "soulflower" + display_name = "soulflowers" + chems = list("nutriment" = list(1,10), "souldew" = list(1,13)) + mutants = null + +/datum/seed/flower/sunflower/soulflower/New() + ..() + set_trait(TRAIT_PRODUCT_COLOUR,"#00FFFF") + set_trait(TRAIT_BIOLUM,1) + set_trait(TRAIT_BIOLUM_COLOUR,"#00FFFF") + set_trait(TRAIT_POTENCY,25) + set_trait(TRAIT_MATURATION,10) + set_trait(TRAIT_YIELD,1) + set_trait(TRAIT_SPREAD,1) + +/datum/seed/cherries/cherrybomb + name = "cherrybomb" + seed_name = "cherrybomb" + seed_noun = "pits" + display_name = "cherry bomb tree" + chems = list("nutriment" = list(1,15), "neoliquidfire" = list(1,15), "cherryjelly" = list(10,15)) + +/datum/seed/cherries/cherrybomb/New() + ..() + set_trait(TRAIT_PRODUCT_COLOUR,"#993399") + set_trait(TRAIT_BIOLUM,1) + set_trait(TRAIT_BIOLUM_COLOUR,"#993399") + +/datum/seed/citrus/orange/livewireorange + name = "livewireorange" + seed_name = "livewireorange" + seed_noun = "livewireorange" + display_name = "livewire orange tree" + chems = list("nutriment" = list(1,15), "liquidlife" = list(1,15), "orangejuice" = list(10,15)) + +/datum/seed/citrus/orange/nuclearorange + name = "nuclearorange" + seed_name = "nuclearorange" + seed_noun = "nuclearorange" + display_name = "nuclear orange tree" + chems = list("nutriment" = list(1,15), "deathblood" = list(1,15), "lemonjuice" = list(10,15)) \ No newline at end of file diff --git a/modular_chomp/code/modules/hydro/plantsstorage.dm b/modular_chomp/code/modules/hydro/plantsstorage.dm new file mode 100644 index 0000000000..ae4ed9ed0b --- /dev/null +++ b/modular_chomp/code/modules/hydro/plantsstorage.dm @@ -0,0 +1,110 @@ +/obj/machinery/seed_storage/garden + name = "Garden seed storage" + scanner = list("stats") + starting_seeds = list( + /obj/item/seeds/appleseed = 3, + /obj/item/seeds/bananaseed = 3, + /obj/item/seeds/berryseed = 3, + /obj/item/seeds/cabbageseed = 3, + /obj/item/seeds/carrotseed = 3, + /obj/item/seeds/celery = 3, + /obj/item/seeds/chantermycelium = 3, + /obj/item/seeds/cherryseed = 3, + /obj/item/seeds/chiliseed = 3, + /obj/item/seeds/cocoapodseed = 3, + /obj/item/seeds/cinnamon = 3, + /obj/item/seeds/cornseed = 3, + /obj/item/seeds/durian = 3, + /obj/item/seeds/eggplantseed = 3, + /obj/item/seeds/grapeseed = 3, + /obj/item/seeds/grassseed = 3, + /obj/item/seeds/replicapod = 3, + /obj/item/seeds/lavenderseed = 3, + /obj/item/seeds/lemonseed = 3, + /obj/item/seeds/lettuce = 3, + /obj/item/seeds/limeseed = 3, + /obj/item/seeds/mtearseed = 2, + /obj/item/seeds/orangeseed = 3, + /obj/item/seeds/onionseed = 3, + /obj/item/seeds/peanutseed = 3, + /obj/item/seeds/plumpmycelium = 3, + /obj/item/seeds/poppyseed = 3, + /obj/item/seeds/potatoseed = 3, + /obj/item/seeds/pumpkinseed = 3, + /obj/item/seeds/rhubarb = 3, + /obj/item/seeds/riceseed = 3, + /obj/item/seeds/rose = 3, + /obj/item/seeds/soyaseed = 3, + /obj/item/seeds/pineapple = 3, + /obj/item/seeds/sugarcaneseed = 3, + /obj/item/seeds/sunflowerseed = 3, + /obj/item/seeds/shandseed = 2, + /obj/item/seeds/tobaccoseed = 3, + /obj/item/seeds/tomatoseed = 3, + /obj/item/seeds/towermycelium = 3, + /obj/item/seeds/vanilla = 3, + /obj/item/seeds/wabback = 2, + /obj/item/seeds/watermelonseed = 3, + /obj/item/seeds/wheatseed = 3, + /obj/item/seeds/whitebeetseed = 3, + /obj/item/seeds/wurmwoad = 3 + ) + +/obj/machinery/seed_storage/xenobotany + name = "Xenobotany seed storage" + scanner = list("stats", "produce", "soil", "temperature", "light", "pressure") + smart = 1 + starting_seeds = list( + /obj/item/seeds/ambrosiavulgarisseed = 3, + /obj/item/seeds/appleseed = 3, + /obj/item/seeds/amanitamycelium = 2, + /obj/item/seeds/bananaseed = 3, + /obj/item/seeds/berryseed = 3, + /obj/item/seeds/cabbageseed = 3, + /obj/item/seeds/carrotseed = 3, + /obj/item/seeds/celery = 3, + /obj/item/seeds/chantermycelium = 3, + /obj/item/seeds/cherryseed = 3, + /obj/item/seeds/chiliseed = 3, + /obj/item/seeds/cocoapodseed = 3, + /obj/item/seeds/cinnamon = 3, + /obj/item/seeds/cornseed = 3, + /obj/item/seeds/durian = 3, + /obj/item/seeds/replicapod = 3, + /obj/item/seeds/eggplantseed = 3, + /obj/item/seeds/glowshroom = 2, + /obj/item/seeds/grapeseed = 3, + /obj/item/seeds/grassseed = 3, + /obj/item/seeds/lavenderseed = 3, + /obj/item/seeds/lemonseed = 3, + /obj/item/seeds/lettuce = 3, + /obj/item/seeds/libertymycelium = 2, + /obj/item/seeds/limeseed = 3, + /obj/item/seeds/mtearseed = 2, + /obj/item/seeds/nettleseed = 2, + /obj/item/seeds/orangeseed = 3, + /obj/item/seeds/peanutseed = 3, + /obj/item/seeds/plastiseed = 3, + /obj/item/seeds/plumpmycelium = 3, + /obj/item/seeds/poppyseed = 3, + /obj/item/seeds/potatoseed = 3, + /obj/item/seeds/pumpkinseed = 3, + /obj/item/seeds/reishimycelium = 2, + /obj/item/seeds/rhubarb = 3, + /obj/item/seeds/riceseed = 3, + /obj/item/seeds/rose = 3, + /obj/item/seeds/soyaseed = 3, + /obj/item/seeds/pineapple = 3, + /obj/item/seeds/sugarcaneseed = 3, + /obj/item/seeds/sunflowerseed = 3, + /obj/item/seeds/shandseed = 2, + /obj/item/seeds/tobaccoseed = 3, + /obj/item/seeds/tomatoseed = 3, + /obj/item/seeds/towermycelium = 3, + /obj/item/seeds/vanilla = 3, + /obj/item/seeds/wabback = 2, + /obj/item/seeds/watermelonseed = 3, + /obj/item/seeds/wheatseed = 3, + /obj/item/seeds/whitebeetseed = 3, + /obj/item/seeds/wurmwoad = 3 + ) \ No newline at end of file diff --git a/modular_chomp/game/machinery/traptiles.dm b/modular_chomp/game/machinery/traptiles.dm new file mode 100644 index 0000000000..98921216b5 --- /dev/null +++ b/modular_chomp/game/machinery/traptiles.dm @@ -0,0 +1,33 @@ +/obj/machinery/traptile + icon = 'modular_chomp/icons/obj/machines/defense.dmi' + icon_state = "traptile" + anchored = 1 + use_power = USE_POWER_IDLE + idle_power_usage = 200 + +/obj/machinery/traptile/proc/attack_mob(mob/living/L) + var/target_zone + if(L.lying) + target_zone = ran_zone() + else + target_zone = pick("l_foot", "r_foot", "l_leg", "r_leg") + + //armour + var/blocked = L.run_armor_check(target_zone, "melee") + var/soaked = L.get_armor_soak(target_zone, "melee") + + if(blocked >= 100) + return + + if(soaked >= 30) + return + + if(L.buckled) //wheelchairs, office chairs, rollerbeds + return + + if(!L.apply_damage(30, BURN, target_zone, blocked, soaked, used_weapon=src)) + return 0 + + shock(L, 100, target_zone) + + L.add_modifier(/datum/modifier/entangled, 3 SECONDS) \ No newline at end of file diff --git a/modular_chomp/icons/obj/machines/defense.dmi b/modular_chomp/icons/obj/machines/defense.dmi new file mode 100644 index 0000000000..150c69271b Binary files /dev/null and b/modular_chomp/icons/obj/machines/defense.dmi differ diff --git a/vorestation.dme b/vorestation.dme index 72e02430db..6e1ac581af 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -4677,6 +4677,8 @@ #include "modular_chomp\code\modules\food\drinkgglass\metaglass.dm" #include "modular_chomp\code\modules\food\food\drinks\bottle.dm" #include "modular_chomp\code\modules\food\food\snacks\meat.dm" +#include "modular_chomp\code\modules\hydro\plants.dm" +#include "modular_chomp\code\modules\hydro\plantsstorage.dm" #include "modular_chomp\code\modules\living\carbon\human\ai_controlled\ai_controlled.dm" #include "modular_chomp\code\modules\lore_codex\codex.dm" #include "modular_chomp\code\modules\lore_codex\codex_tree.dm" @@ -4845,6 +4847,7 @@ #include "modular_chomp\code\modules\xenobio\machinery\monkey_processor.dm" #include "modular_chomp\game\effects\spawner.dm" #include "modular_chomp\game\machinery\buttons.dm" +#include "modular_chomp\game\machinery\traptiles.dm" #include "modular_chomp\game\machinery\turrets.dm" #include "modular_chomp\game\objects\effects\spiders.dm" #include "modular_chomp\game\turfs\shuttlewall_types.dm"