Files
Bubberstation/code/modules/mining/lavaland/ash_flora.dm
Waterpig bb70889f6e TG Upstream Part 1
3591 individual conflicts

Update build.js

Update install_node.sh

Update byond.js

oh my fucking god

hat

slow

huh

holy shit

we all fall down

2 more I missed

2900 individual conflicts

2700 Individual conflicts

replaces yarn file with tg version, bumping us down to 2200-ish

Down to 2000 individual conflicts

140 down

mmm

aaaaaaaaaaaaaaaaaaa

not yt

575

soon

900 individual conflicts

600 individual conflicts, 121 file conflicts

im not okay

160 across 19 files

29 in 4 files

0 conflicts, compiletime fix time

some minor incap stuff

missed ticks

weird dupe definition stuff

missed ticks 2

incap fixes

undefs and pie fix

Radio update and some extra minor stuff

returns a single override

no more dupe definitions, 175 compiletime errors

Unticked file fix

sound and emote stuff

honk and more radio stuff
2024-10-19 08:04:33 -07:00

423 lines
18 KiB
Plaintext

//*******************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
product_types = list(/obj/item/food/grown/ash_flora/shavings = 1)
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/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"
product_types = list(/obj/item/food/grown/ash_flora/mushroom_leaf = 1)
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/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"
product_types = list(/obj/item/food/grown/ash_flora/mushroom_cap = 1)
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/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
product_types = list(/obj/item/food/grown/ash_flora/mushroom_stem = 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/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"
product_types = list(/obj/item/food/grown/ash_flora/cactus_fruit = 20, /obj/item/seeds/lavaland/cactus = 1)
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/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"
product_types = list(/obj/item/food/grown/ash_flora/seraka = 1)
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/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
product_types = list(/obj/item/food/grown/ash_flora/fireblossom = 1)
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/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"
product_types = list(/obj/item/food/grown/icepepper = 1)
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
//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"
w_class = WEIGHT_CLASS_TINY
resistance_flags = FLAMMABLE
max_integrity = 100
seed = /obj/item/seeds/lavaland/polypore
wine_power = 20
/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
special_desc_requirement = EXAMINE_CHECK_JOB //SKYRAT EDIT
special_desc_jobs = list("Botanist") //SKYRAT EDIT
special_desc = "This flora is very nutritious and medicinal." //SKYRAT EDIT
/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/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/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/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
//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 = 30
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'
/obj/item/reagent_containers/cup/bowl/mushroom_bowl/update_icon_state()
if(!reagents.total_volume)
icon_state = "mushroom_bowl"
return ..()