diff --git a/code/modules/bitrunning/components/netpod_healing.dm b/code/modules/bitrunning/components/netpod_healing.dm index 03cdbc000be..86f80e854e0 100644 --- a/code/modules/bitrunning/components/netpod_healing.dm +++ b/code/modules/bitrunning/components/netpod_healing.dm @@ -6,7 +6,13 @@ if (!iscarbon(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(pod, COMSIG_BITRUNNER_NETPOD_OPENED, PROC_REF(on_opened)) + RegisterSignals( + pod, + list(COMSIG_MACHINERY_BROKEN, COMSIG_QDELETING, COMSIG_BITRUNNER_NETPOD_OPENED), + PROC_REF(on_remove), + ) + + RegisterSignal(parent, COMSIG_MOVABLE_MOVED, PROC_REF(on_remove)) var/mob/living/carbon/player = parent player.apply_status_effect(/datum/status_effect/embryonic, STASIS_NETPOD_EFFECT) @@ -39,7 +45,7 @@ owner.updatehealth() /// Deletes itself when the machine was opened -/datum/component/netpod_healing/proc/on_opened() +/datum/component/netpod_healing/proc/on_remove() SIGNAL_HANDLER qdel(src)