From 8f715046e2eccff35df70e2783423dea9576dc1f Mon Sep 17 00:00:00 2001 From: Majkl-J <49160555+Majkl-J@users.noreply.github.com> Date: Thu, 5 Dec 2024 04:27:46 -0800 Subject: [PATCH] prevents the overcharged smes from runtiming when SSprocessing falls behind --- code/modules/mapfluff/ruins/spaceruin_code/meatderelict.dm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/code/modules/mapfluff/ruins/spaceruin_code/meatderelict.dm b/code/modules/mapfluff/ruins/spaceruin_code/meatderelict.dm index 2b221664148..440f7ad0578 100644 --- a/code/modules/mapfluff/ruins/spaceruin_code/meatderelict.dm +++ b/code/modules/mapfluff/ruins/spaceruin_code/meatderelict.dm @@ -125,6 +125,7 @@ /obj/lightning_thrower/Destroy() . = ..() + clear_signals() signal_turfs = null STOP_PROCESSING(SSprocessing, src) @@ -132,6 +133,8 @@ var/list/dirs = throw_diagonals ? GLOB.diagonals : GLOB.cardinals throw_diagonals = !throw_diagonals playsound(src, 'sound/effects/magic/lightningbolt.ogg', 25, TRUE, SHORT_RANGE_SOUND_EXTRARANGE, ignore_walls = FALSE) + if(length(signal_turfs)) + clear_signals() for(var/direction in dirs) var/victim_turf = get_step(src, direction) if(isclosedturf(victim_turf)) @@ -143,8 +146,7 @@ shock_victim(null, victim) addtimer(CALLBACK(src, PROC_REF(clear_signals)), shock_duration) -/obj/lightning_thrower/proc/clear_signals(datum/source) - SIGNAL_HANDLER +/obj/lightning_thrower/proc/clear_signals() for(var/turf in signal_turfs) UnregisterSignal(turf, COMSIG_ATOM_ENTERED) signal_turfs -= turf