diff --git a/code/modules/hydroponics/grown/flowers.dm b/code/modules/hydroponics/grown/flowers.dm index cbfd3a04a53..38ae6fec7b7 100644 --- a/code/modules/hydroponics/grown/flowers.dm +++ b/code/modules/hydroponics/grown/flowers.dm @@ -70,10 +70,10 @@ icon_grow = "spacemanstrumpet-grow" icon_dead = "spacemanstrumpet-dead" mutatelist = null - genes = list(/datum/plant_gene/reagent/polypyr, /datum/plant_gene/trait/preserved) + genes = list(/datum/plant_gene/reagent/preset/polypyr, /datum/plant_gene/trait/preserved) reagents_add = list(/datum/reagent/consumable/nutriment = 0.05) rarity = 30 - graft_gene = /datum/plant_gene/reagent/polypyr + graft_gene = /datum/plant_gene/reagent/preset/polypyr /obj/item/food/grown/trumpet seed = /obj/item/seeds/poppy/lily/trumpet @@ -307,13 +307,13 @@ potency = 15 instability = 3 growthstages = 3 - genes = list(/datum/plant_gene/reagent/carbon, /datum/plant_gene/trait/preserved) + genes = list(/datum/plant_gene/reagent/preset/carbon, /datum/plant_gene/trait/preserved) growing_icon = 'icons/obj/hydroponics/growing_flowers.dmi' icon_grow = "carbonrose-grow" icon_dead = "carbonrose-dead" reagents_add = list(/datum/reagent/plastic_polymers = 0.05) rarity = 10 - graft_gene = /datum/plant_gene/reagent/carbon + graft_gene = /datum/plant_gene/reagent/preset/carbon /obj/item/grown/carbon_rose seed = /obj/item/seeds/carbon_rose diff --git a/code/modules/hydroponics/grown/mushrooms.dm b/code/modules/hydroponics/grown/mushrooms.dm index 8e88b652c4d..388cb4c086e 100644 --- a/code/modules/hydroponics/grown/mushrooms.dm +++ b/code/modules/hydroponics/grown/mushrooms.dm @@ -205,7 +205,7 @@ endurance = 8 yield = 4 growthstages = 2 - genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/reagent/liquidelectricity, /datum/plant_gene/trait/carnivory/jupitercup) + genes = list(/datum/plant_gene/trait/plant_type/fungal_metabolism, /datum/plant_gene/reagent/preset/liquidelectricity, /datum/plant_gene/trait/carnivory/jupitercup) growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' reagents_add = list(/datum/reagent/consumable/nutriment = 0.1) mutatelist = null diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index a5d233b0bb8..8d1a70e476e 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -48,9 +48,9 @@ /// Reagent genes store a reagent ID and reagent ratio. /datum/plant_gene/reagent - name = "Nutriment" + name = "UNKNOWN" mutability_flags = PLANT_GENE_REMOVABLE - /// The actual reagent that this gene is tied to. + /// The typepath of the actual reagent that this gene is tied to. var/reagent_id = /datum/reagent/consumable/nutriment /// The amount of reagent generated by the plant. The equation is [1 + ((max_volume*(potency/100)) * rate)] var/rate = 0.04 @@ -69,17 +69,16 @@ */ /datum/plant_gene/reagent/proc/set_reagent(new_reagent_id) reagent_id = new_reagent_id - name = "UNKNOWN" var/datum/reagent/found_reagent = GLOB.chemical_reagents_list[new_reagent_id] if(found_reagent?.type == reagent_id) name = found_reagent.name -/datum/plant_gene/reagent/New(initial_reagent_id, initial_reagent_rate = 0) +/datum/plant_gene/reagent/New(new_reagent_id, new_reagent_rate = 0.04) . = ..() - if(initial_reagent_id && initial_reagent_rate) - set_reagent(initial_reagent_id) - rate = initial_reagent_rate + if(new_reagent_id) + set_reagent(new_reagent_id) + rate = new_reagent_rate /datum/plant_gene/reagent/Copy() . = ..() diff --git a/code/modules/hydroponics/unique_plant_genes.dm b/code/modules/hydroponics/unique_plant_genes.dm index 8401ff6c1ea..f90329f7fbe 100644 --- a/code/modules/hydroponics/unique_plant_genes.dm +++ b/code/modules/hydroponics/unique_plant_genes.dm @@ -644,20 +644,25 @@ /datum/plant_gene/trait/carnivory/jupitercup mutability_flags = PLANT_GENE_GRAFTABLE +/// Preset plant reagent genes that are unremovable from a plant. +/datum/plant_gene/reagent/preset + mutability_flags = PLANT_GENE_GRAFTABLE + +/datum/plant_gene/reagent/preset/New(new_reagent_id, new_reagent_rate = 0.04) + . = ..() + set_reagent(reagent_id) + /// Spaceman's Trumpet fragile Polypyrylium Oligomers -/datum/plant_gene/reagent/polypyr +/datum/plant_gene/reagent/preset/polypyr reagent_id = /datum/reagent/medicine/polypyr rate = 0.15 - mutability_flags = PLANT_GENE_GRAFTABLE /// Jupitercup's fragile Liquid Electricity -/datum/plant_gene/reagent/liquidelectricity +/datum/plant_gene/reagent/preset/liquidelectricity reagent_id = /datum/reagent/consumable/liquidelectricity/enriched rate = 0.1 - mutability_flags = PLANT_GENE_GRAFTABLE /// Carbon Roses's fragile Carbon -/datum/plant_gene/reagent/carbon +/datum/plant_gene/reagent/preset/carbon reagent_id = /datum/reagent/carbon rate = 0.1 - mutability_flags = PLANT_GENE_GRAFTABLE