//*******************Contains everything related to the flora on lavaland.******************************* //This includes: The structures, their produce, their seeds and the crafting recipe for the mushroom bowl /obj/structure/flora/ash name = "large mushrooms" desc = "A number of large mushrooms, covered in a faint layer of ash and what can only be spores." icon = 'icons/obj/mining_zones/ash_flora.dmi' icon_state = "l_mushroom1" base_icon_state = "l_mushroom" resistance_flags = LAVA_PROOF gender = PLURAL layer = PROJECTILE_HIT_THRESHHOLD_LAYER //sporangiums up don't shoot harvest_with_hands = TRUE harvested_name = "shortened mushrooms" harvested_desc = "Some quickly regrowing mushrooms, formerly known to be quite large." harvest_message_low = "You pick a mushroom, but fail to collect many shavings from its cap." harvest_message_med = "You pick a mushroom, carefully collecting the shavings from its cap." harvest_message_high = "You harvest and collect shavings from several mushroom caps." harvest_message_true_thresholds = TRUE harvest_verb = "pluck" flora_flags = FLORA_HERBAL //not really accurate but what sound do hit mushrooms make anyway var/number_of_variants = 4 /obj/structure/flora/ash/Initialize(mapload) . = ..() base_icon_state = "[base_icon_state][rand(1, number_of_variants)]" icon_state = base_icon_state /obj/structure/flora/ash/get_potential_products() return list(/obj/item/food/grown/ash_flora/shavings = 1) /obj/structure/flora/ash/harvest(user, product_amount_multiplier) if(!..()) return FALSE icon_state = "[base_icon_state]p" return TRUE /obj/structure/flora/ash/regrow() ..() icon_state = base_icon_state /obj/structure/flora/ash/tall_shroom //exists only so that the spawning check doesn't allow these spawning near other things regrowth_time_low = 4200 /obj/structure/flora/ash/leaf_shroom name = "leafy mushrooms" desc = "A number of mushrooms, each of which surrounds a greenish sporangium with a number of leaf-like structures." icon_state = "s_mushroom1" base_icon_state = "s_mushroom" harvested_name = "leafless mushrooms" harvested_desc = "A bunch of formerly-leafed mushrooms, with their sporangiums exposed. Scandalous?" harvest_amount_high = 4 harvest_message_low = "You pluck a single, suitable leaf." harvest_message_med = "You pluck a number of leaves, leaving a few unsuitable ones." harvest_message_high = "You pluck quite a lot of suitable leaves." harvest_time = 20 regrowth_time_low = 2400 regrowth_time_high = 6000 /obj/structure/flora/ash/leaf_shroom/get_potential_products() return list(/obj/item/food/grown/ash_flora/mushroom_leaf = 1) /obj/structure/flora/ash/cap_shroom name = "tall mushrooms" desc = "Several mushrooms, the larger of which have a ring of conks at the midpoint of their stems." icon_state = "r_mushroom1" base_icon_state = "r_mushroom" harvested_name = "small mushrooms" harvested_desc = "Several small mushrooms near the stumps of what likely were larger mushrooms." harvest_amount_high = 4 harvest_message_low = "You slice the cap off a mushroom." harvest_message_med = "You slice off a few conks from the larger mushrooms." harvest_message_high = "You slice off a number of caps and conks from these mushrooms." harvest_time = 50 regrowth_time_low = 3000 regrowth_time_high = 5400 /obj/structure/flora/ash/cap_shroom/get_potential_products() return list(/obj/item/food/grown/ash_flora/mushroom_cap = 1) /obj/structure/flora/ash/stem_shroom name = "numerous mushrooms" desc = "A large number of mushrooms, some of which have long, fleshy stems. They're radiating light!" icon_state = "t_mushroom1" base_icon_state = "t_mushroom" light_range = 1.5 light_power = 2.1 harvested_name = "tiny mushrooms" harvested_desc = "A few tiny mushrooms around larger stumps. You can already see them growing back." harvest_amount_high = 4 harvest_message_low = "You pick and slice the cap off a mushroom, leaving the stem." harvest_message_med = "You pick and decapitate several mushrooms for their stems." harvest_message_high = "You acquire a number of stems from these mushrooms." harvest_time = 40 regrowth_time_low = 3000 regrowth_time_high = 6000 /obj/structure/flora/ash/stem_shroom/get_potential_products() return list(/obj/item/food/grown/ash_flora/mushroom_stem = 1) /obj/structure/flora/ash/cacti name = "fruiting cacti" desc = "Several prickly cacti, brimming with ripe fruit and covered in a thin layer of ash." icon_state = "cactus1" base_icon_state = "cactus" harvested_name = "cacti" harvested_desc = "A bunch of prickly cacti. You can see fruits slowly growing beneath the covering of ash." harvest_amount_high = 2 harvest_message_low = "You pick a cactus fruit." harvest_message_med = "You pick several cactus fruit." //shouldn't show up, because you can't get more than two harvest_message_high = "You pick a pair of cactus fruit." harvest_time = 10 regrowth_time_low = 4800 regrowth_time_high = 7200 can_uproot = FALSE //Don't want 50 in one tile to decimate whoever dare step on the mass of cacti /obj/structure/flora/ash/cacti/Initialize(mapload) . = ..() AddComponent(/datum/component/caltrop, min_damage = 3, max_damage = 6, probability = 70) /obj/structure/flora/ash/cacti/get_potential_products() return list(/obj/item/food/grown/ash_flora/cactus_fruit = 20, /obj/item/seeds/lavaland/cactus = 1) /obj/structure/flora/ash/seraka name = "seraka mushrooms" desc = "A small cluster of seraka mushrooms. These must have come with the ashlizards." icon_state = "seraka_mushroom1" base_icon_state = "seraka_mushroom" harvested_name = "harvested seraka mushrooms" harvested_desc = "A couple of small seraka mushrooms, with the larger ones clearly having been recently removed. They'll grow back... eventually." harvest_amount_high = 6 harvest_message_low = "You pluck a few choice tasty mushrooms." harvest_message_med = "You grab a good haul of mushrooms." harvest_message_high = "You hit the mushroom motherlode and make off with a bunch of tasty mushrooms." harvest_time = 25 regrowth_time_low = 3000 regrowth_time_high = 5400 number_of_variants = 2 harvest_message_true_thresholds = FALSE /obj/structure/flora/ash/seraka/get_potential_products() return list(/obj/item/food/grown/ash_flora/seraka = 1) /obj/structure/flora/ash/fireblossom name = "fire blossom" desc = "An odd flower that grows commonly near bodies of lava." icon_state = "fireblossom1" base_icon_state = "fireblossom" light_range = LIGHT_FIRE_BLOSSOM light_power = LIGHT_FIRE_BLOSSOM light_color = COLOR_BIOLUMINESCENCE_YELLOW harvested_name = "fire blossom stems" harvested_desc = "A few fire blossom stems, missing their flowers." harvest_amount_high = 3 harvest_message_low = "You pluck a single, suitable flower." harvest_message_med = "You pluck a number of flowers, leaving a few unsuitable ones." harvest_message_high = "You pluck quite a lot of suitable flowers." regrowth_time_low = 2500 regrowth_time_high = 4000 number_of_variants = 2 /obj/structure/flora/ash/fireblossom/get_potential_products() return list(/obj/item/food/grown/ash_flora/fireblossom = 1) /obj/structure/flora/ash/fireblossom/after_harvest() set_light_power(LIGHT_RANGE_FIRE_BLOSSOM_HARVESTED) set_light_range(LIGHT_POWER_FIRE_BLOSSOM_HARVESTED) update_light() return ..() /obj/structure/flora/ash/fireblossom/regrow() set_light_power(initial(light_power)) set_light_range(initial(light_range)) update_light() return ..() ///Snow flora to exist on icebox. /obj/structure/flora/ash/chilly name = "springy grassy fruit" desc = "A number of bright, springy blue fruiting plants. They seem to be unconcerned with the hardy, cold environment." icon_state = "chilly_pepper1" base_icon_state = "chilly_pepper" harvested_name = "springy grass" harvested_desc = "A bunch of springy, bouncy fruiting grass, all picked. Or maybe they were never fruiting at all?" harvest_amount_high = 3 harvest_message_low = "You pluck a single, curved fruit." harvest_message_med = "You pluck a number of curved fruit." harvest_message_high = "You pluck quite a lot of curved fruit." harvest_time = 15 regrowth_time_low = 2400 regrowth_time_high = 5500 number_of_variants = 2 /obj/structure/flora/ash/chilly/get_potential_products() return list(/obj/item/food/grown/icepepper = 1) //SNACKS /obj/item/food/grown/ash_flora name = "mushroom shavings" desc = "Some shavings from a tall mushroom. With enough, might serve as a bowl." icon = 'icons/obj/mining_zones/ash_flora.dmi' icon_state = "mushroom_shavings" abstract_type = /obj/item/food/grown/ash_flora w_class = WEIGHT_CLASS_TINY resistance_flags = FLAMMABLE max_integrity = 100 seed = /obj/item/seeds/lavaland/polypore wine_power = 20 foodtypes = VEGETABLES /obj/item/food/grown/ash_flora/Initialize(mapload) . = ..() pixel_x = base_pixel_x + rand(-4, 4) pixel_y = base_pixel_y + rand(-4, 4) /obj/item/food/grown/ash_flora/shavings //So we can't craft bowls from everything. special_desc_requirement = EXAMINE_CHECK_JOB //SKYRAT EDIT special_desc_jobs = list("Botanist") //SKYRAT EDIT special_desc = "You feel this flora would be unwise to consume while already full." //SKYRAT EDIT grind_results = list(/datum/reagent/toxin/mushroom_powder = 5) /obj/item/food/grown/ash_flora/mushroom_leaf name = "mushroom leaf" desc = "A leaf, from a mushroom." icon_state = "mushroom_leaf" seed = /obj/item/seeds/lavaland/porcini wine_power = 40 special_desc_requirement = EXAMINE_CHECK_JOB //SKYRAT EDIT special_desc_jobs = list("Botanist") //SKYRAT EDIT special_desc = "This flora is nutritious and healthy to eat, though slightly laced with nicotine." //SKYRAT EDIT /obj/item/food/grown/ash_flora/mushroom_cap name = "mushroom cap" desc = "The cap of a large mushroom." icon_state = "mushroom_cap" seed = /obj/item/seeds/lavaland/inocybe wine_power = 70 special_desc_requirement = EXAMINE_CHECK_JOB //SKYRAT EDIT special_desc_jobs = list("Botanist") //SKYRAT EDIT special_desc = "This flora is poisonous and hallucinogenic." //SKYRAT EDIT /obj/item/food/grown/ash_flora/mushroom_stem name = "mushroom stem" desc = "A long mushroom stem. It's slightly glowing." icon_state = "mushroom_stem" seed = /obj/item/seeds/lavaland/ember wine_power = 60 special_desc_requirement = EXAMINE_CHECK_JOB //SKYRAT EDIT special_desc_jobs = list("Botanist") //SKYRAT EDIT special_desc = "This flora contains psychoactive drugs and will also make you glow." //SKYRAT EDIT /obj/item/food/grown/ash_flora/cactus_fruit name = "cactus fruit" desc = "A cactus fruit covered in a thick, reddish skin. And some ash." icon_state = "cactus_fruit" seed = /obj/item/seeds/lavaland/cactus wine_power = 50 foodtypes = FRUIT /obj/item/food/grown/ash_flora/cactus_fruit/Initialize(mapload) . = ..() AddElement(/datum/element/raptor_food, growth_modifier = 0.1, ability_modifier = -0.05) /obj/item/food/grown/ash_flora/seraka name = "seraka cap" desc = "Small, deeply flavourful mushrooms originally native to Tizira." icon_state = "seraka_cap" seed = /obj/item/seeds/lavaland/seraka wine_power = 40 /obj/item/food/grown/ash_flora/seraka/Initialize(mapload) . = ..() AddElement(/datum/element/raptor_food, ability_modifier = 0.1) /obj/item/food/grown/ash_flora/fireblossom name = "fire blossom" desc = "A flower from a fire blossom." icon_state = "fireblossom" slot_flags = ITEM_SLOT_HEAD seed = /obj/item/seeds/lavaland/fireblossom wine_power = 40 /obj/item/food/grown/ash_flora/fireblossom/Initialize(mapload) . = ..() // Fire flowers make fireproof raptors AddElement(/datum/element/raptor_food, color_chances = string_list(list(/datum/raptor_color/blue = 5))) // SEEDS /obj/item/seeds/lavaland name = "lavaland seeds" desc = "You should never see this." lifespan = 50 endurance = 25 maturation = 7 production = 4 yield = 4 potency = 15 growthstages = 3 rarity = PLANT_MODERATELY_RARE reagents_add = list(/datum/reagent/consumable/nutriment = 0.1) species = "polypore" // silence unit test genes = list(/datum/plant_gene/trait/fire_resistance) graft_gene = /datum/plant_gene/trait/fire_resistance /obj/item/seeds/lavaland/cactus name = "fruiting cactus seed pack" desc = "These seeds grow into fruiting cacti." icon_state = "seed-cactus" species = "cactus" plantname = "Fruiting Cactus" product = /obj/item/food/grown/ash_flora/cactus_fruit mutatelist = list(/obj/item/seeds/star_cactus) genes = list(/datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/service/hydroponics/growing_fruits.dmi' growthstages = 2 reagents_add = list(/datum/reagent/consumable/nutriment/vitamin = 0.04, /datum/reagent/consumable/nutriment = 0.04, /datum/reagent/consumable/vitfro = 0.08) ///Star Cactus seeds, mutation of lavaland cactus. /obj/item/seeds/star_cactus name = "star cacti seed pack" desc = "These seeds grow into star cacti." icon_state = "seed-starcactus" species = "starcactus" plantname = "Star Cactus Cluster" product = /obj/item/food/grown/star_cactus lifespan = 60 endurance = 30 maturation = 7 production = 6 yield = 3 growthstages = 4 genes = list(/datum/plant_gene/trait/sticky, /datum/plant_gene/trait/stinging) graft_gene = /datum/plant_gene/trait/sticky growing_icon = 'icons/obj/service/hydroponics/growing_vegetables.dmi' reagents_add = list(/datum/reagent/water = 0.08, /datum/reagent/consumable/nutriment = 0.05, /datum/reagent/medicine/c2/helbital = 0.05) ///Star Cactus Plants. /obj/item/food/grown/star_cactus seed = /obj/item/seeds/star_cactus name = "star cacti" desc = "A spikey, round cluster of prickly star cacti. And no, it's not called a star cactus because it's in space." icon_state = "starcactus" filling_color = "#1c801c" foodtypes = VEGETABLES distill_reagent = /datum/reagent/consumable/ethanol/tequila /obj/item/seeds/lavaland/polypore name = "polypore mycelium pack" desc = "This mycelium grows into bracket mushrooms, also known as polypores. Woody and firm, shaft miners often use them for makeshift crafts." icon_state = "mycelium-polypore" species = "polypore" plantname = "Polypore Mushrooms" product = /obj/item/food/grown/ash_flora/shavings genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/service/hydroponics/growing_mushrooms.dmi' reagents_add = list(/datum/reagent/consumable/nutriment = 0.04, /datum/reagent/consumable/ethanol = 0.04, /datum/reagent/stabilizing_agent = 0.06, /datum/reagent/consumable/mintextract = 0.02) /obj/item/seeds/lavaland/porcini name = "porcini mycelium pack" desc = "This mycelium grows into Boletus edulus, also known as porcini. Native to the late Earth, but discovered on Lavaland. Has culinary, medicinal and relaxant effects." icon_state = "mycelium-porcini" species = "porcini" plantname = "Porcini Mushrooms" product = /obj/item/food/grown/ash_flora/mushroom_leaf genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/service/hydroponics/growing_mushrooms.dmi' reagents_add = list(/datum/reagent/consumable/nutriment = 0.06, /datum/reagent/consumable/sugar = 0.06, /datum/reagent/consumable/vitfro = 0.04, /datum/reagent/drug/nicotine = 0.04) /obj/item/seeds/lavaland/inocybe name = "inocybe mycelium pack" desc = "This mycelium grows into an inocybe mushroom, a species of Lavaland origin with hallucinatory and toxic effects." icon_state = "mycelium-inocybe" species = "inocybe" plantname = "Inocybe Mushrooms" product = /obj/item/food/grown/ash_flora/mushroom_cap genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/service/hydroponics/growing_mushrooms.dmi' reagents_add = list(/datum/reagent/toxin/mindbreaker = 0.04, /datum/reagent/consumable/entpoly = 0.08, /datum/reagent/drug/mushroomhallucinogen = 0.04) /obj/item/seeds/lavaland/ember name = "embershroom mycelium pack" desc = "This mycelium grows into embershrooms, a species of bioluminescent mushrooms native to Lavaland." icon_state = "mycelium-ember" species = "ember" plantname = "Embershroom Mushrooms" product = /obj/item/food/grown/ash_flora/mushroom_stem genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/glow, /datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/service/hydroponics/growing_mushrooms.dmi' reagents_add = list(/datum/reagent/consumable/tinlux = 0.04, /datum/reagent/consumable/nutriment/vitamin = 0.02, /datum/reagent/drug/space_drugs = 0.02) /obj/item/seeds/lavaland/seraka name = "seraka mycelium pack" desc = "This mycelium grows into seraka mushrooms, a species of savoury mushrooms originally native to Tizira used in food and traditional medicine." icon_state = "mycelium-seraka" species = "seraka" plantname = "Seraka Mushrooms" product = /obj/item/food/grown/ash_flora/seraka genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/trait/fire_resistance) growing_icon = 'icons/obj/service/hydroponics/growing_mushrooms.dmi' reagents_add = list(/datum/reagent/toxin/mushroom_powder = 0.1, /datum/reagent/medicine/coagulant/seraka_extract = 0.02) /obj/item/seeds/lavaland/fireblossom name = "fire blossom seed pack" desc = "These seeds grow into fire blossoms." plantname = "Fire Blossom" icon_state = "seed-fireblossom" species = "fireblossom" growthstages = 3 product = /obj/item/food/grown/ash_flora/fireblossom genes = list(/datum/plant_gene/trait/fire_resistance, /datum/plant_gene/trait/glow/yellow) growing_icon = 'icons/obj/service/hydroponics/growing_flowers.dmi' reagents_add = list(/datum/reagent/consumable/tinlux = 0.04, /datum/reagent/consumable/nutriment = 0.03, /datum/reagent/carbon = 0.05) //CRAFTING /datum/crafting_recipe/mushroom_bowl name = "Mushroom Bowl" result = /obj/item/reagent_containers/cup/bowl/mushroom_bowl reqs = list(/obj/item/food/grown/ash_flora/shavings = 5) time = 3 SECONDS category = CAT_CONTAINERS /obj/item/reagent_containers/cup/bowl/mushroom_bowl name = "mushroom bowl" desc = "A bowl made out of mushrooms. Not food, though it might have contained some at some point." icon = 'icons/obj/mining_zones/ash_flora.dmi' icon_state = "mushroom_bowl" fill_icon_state = "fullbowl" fill_icon = 'icons/obj/mining_zones/ash_flora.dmi' custom_materials = null /obj/item/reagent_containers/cup/bowl/mushroom_bowl/update_icon_state() if(!reagents.total_volume) icon_state = "mushroom_bowl" return ..()