From be30713a2ac2234b43884dc2a7e48c3466f6366e Mon Sep 17 00:00:00 2001 From: SandPoot <43283559+SandPoot@users.noreply.github.com> Date: Fri, 19 Nov 2021 19:20:19 -0300 Subject: [PATCH] Fixes circuit harvesting (#198) --- code/modules/hydroponics/hydroponics.dm | 7 +------ .../integrated_electronics/subtypes/manipulation.dm | 9 ++++++++- modular_sand/code/modules/hydroponics/hydroponics.dm | 8 ++++++++ tgstation.dme | 1 + 4 files changed, 18 insertions(+), 7 deletions(-) create mode 100644 modular_sand/code/modules/hydroponics/hydroponics.dm diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index c197b57935..74dfd9eaf9 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -656,12 +656,7 @@ return else if(dead) - dead = FALSE - to_chat(user, "You remove the dead plant from [src].") - qdel(myseed) - myseed = null - update_icon() - TRAY_NAME_UPDATE + harvest_dead(user) else if(user) examine(user) diff --git a/code/modules/integrated_electronics/subtypes/manipulation.dm b/code/modules/integrated_electronics/subtypes/manipulation.dm index 35b5a70ff0..8be909163d 100644 --- a/code/modules/integrated_electronics/subtypes/manipulation.dm +++ b/code/modules/integrated_electronics/subtypes/manipulation.dm @@ -74,7 +74,7 @@ if(istype(TR)) switch(get_pin_data(IC_INPUT, 2)) if(0) - var/list/harvest_output = TR.myseed.harvest_userless() + var/list/harvest_output = harvest(TR) for(var/i in 1 to length(harvest_output)) harvest_output[i] = WEAKREF(harvest_output[i]) @@ -114,6 +114,13 @@ TR.update_icon() activate_pin(2) +/obj/item/integrated_circuit/manipulation/plant_module/proc/harvest(obj/machinery/hydroponics/TR) + if(TR.dead) + TR.harvest_dead() + return list() + else + return TR.myseed.harvest_userless() + /obj/item/integrated_circuit/manipulation/seed_extractor name = "seed extractor module" desc = "Used to extract seeds from grown produce." diff --git a/modular_sand/code/modules/hydroponics/hydroponics.dm b/modular_sand/code/modules/hydroponics/hydroponics.dm new file mode 100644 index 0000000000..fbe22b96ea --- /dev/null +++ b/modular_sand/code/modules/hydroponics/hydroponics.dm @@ -0,0 +1,8 @@ +/obj/machinery/hydroponics/proc/harvest_dead(mob/user) + dead = FALSE + if(user) + to_chat(user, "You remove the dead plant from [src].") + qdel(myseed) + myseed = null + update_icon() + TRAY_NAME_UPDATE diff --git a/tgstation.dme b/tgstation.dme index fcb18114fa..4fd9e0a04c 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3950,6 +3950,7 @@ #include "modular_sand\code\modules\clothing\wrists\_wrists.dm" #include "modular_sand\code\modules\clothing\wrists\watches.dm" #include "modular_sand\code\modules\crafting\recipes\recipes_misc.dm" +#include "modular_sand\code\modules\hydroponics\hydroponics.dm" #include "modular_sand\code\modules\hydroponics\grown\misc.dm" #include "modular_sand\code\modules\integrated_electronics\subtypes\input.dm" #include "modular_sand\code\modules\integrated_electronics\subtypes\manipulation.dm"