From bfc8c376b911700eccdcc2f645234eef43aee680 Mon Sep 17 00:00:00 2001 From: Mechoid Date: Thu, 7 Nov 2019 20:40:02 -0800 Subject: [PATCH] Fix grown food objects initializing completely before their seed datum is assigned. --- code/modules/hydroponics/grown.dm | 34 +++++++++++++++++-------------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 9b28d6e4e5..57202cbee1 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -52,22 +52,26 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/Initialize() ..() - for(var/rid in seed.chems) - var/list/reagent_data = seed.chems[rid] - if(reagent_data && reagent_data.len) - var/rtotal = reagent_data[1] - var/list/data = list() - if(reagent_data.len > 1 && potency > 0) - rtotal += round(potency/reagent_data[2]) - if(rid == "nutriment") - data[seed.seed_name] = max(1,rtotal) + spawn() + while(!seed) + sleep(0.5 SECONDS) - reagents.add_reagent(rid,max(1,rtotal),data) - update_desc() - if(reagents.total_volume > 0) - bitesize = 1+round(reagents.total_volume / 2, 1) - if(seed.get_trait(TRAIT_STINGS)) - force = 1 + for(var/rid in seed.chems) + var/list/reagent_data = seed.chems[rid] + if(reagent_data && reagent_data.len) + var/rtotal = reagent_data[1] + var/list/data = list() + if(reagent_data.len > 1 && potency > 0) + rtotal += round(potency/reagent_data[2]) + if(rid == "nutriment") + data[seed.seed_name] = max(1,rtotal) + + reagents.add_reagent(rid,max(1,rtotal),data) + update_desc() + if(reagents.total_volume > 0) + bitesize = 1+round(reagents.total_volume / 2, 1) + if(seed.get_trait(TRAIT_STINGS)) + force = 1 /obj/item/weapon/reagent_containers/food/snacks/grown/proc/update_desc()