From 0cb5f139895b7ee1aea2420030b32e57dca02b34 Mon Sep 17 00:00:00 2001 From: Fridge Burns <105668884+FridgeBurns@users.noreply.github.com> Date: Mon, 17 Jul 2023 04:52:26 -0500 Subject: [PATCH] Fix malfunctioning drones failing to GC (#21693) * remove drone from list * signal handler Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com> --------- Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com> --- code/modules/events/rogue_drones.dm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/code/modules/events/rogue_drones.dm b/code/modules/events/rogue_drones.dm index 1505f633fcf..281a085dfe1 100644 --- a/code/modules/events/rogue_drones.dm +++ b/code/modules/events/rogue_drones.dm @@ -11,8 +11,13 @@ var/num = rand(2, 12) for(var/i = 0, i < num, i++) var/mob/living/simple_animal/hostile/malf_drone/D = new(get_turf(pick(possible_spawns))) + RegisterSignal(D, COMSIG_PARENT_QDELETING, PROC_REF(remove_drone)) drones_list.Add(D) +/datum/event/rogue_drone/proc/remove_drone(mob/living/simple_animal/hostile/malf_drone/D) + SIGNAL_HANDLER + drones_list -= D + /datum/event/rogue_drone/announce() var/msg if(prob(33))