From 1c95f34e27a3b2ba3ca4e9a6337bdad650d3651a Mon Sep 17 00:00:00 2001 From: ShizCalev Date: Wed, 27 Jul 2022 16:36:50 -0400 Subject: [PATCH] Fixes immortal anomalies having a death timer overlay (#68694) Fixes immortal anomalies having a death timer countdown overlay --- code/game/objects/effects/anomalies.dm | 10 ++++++++++ code/game/objects/effects/countdown.dm | 2 ++ 2 files changed, 12 insertions(+) diff --git a/code/game/objects/effects/anomalies.dm b/code/game/objects/effects/anomalies.dm index d856dd4fd16..3c67059522c 100644 --- a/code/game/objects/effects/anomalies.dm +++ b/code/game/objects/effects/anomalies.dm @@ -53,8 +53,18 @@ countdown = new(src) if(countdown_colour) countdown.color = countdown_colour + if(immortal) + return countdown.start() +/obj/effect/anomaly/vv_edit_var(vname, vval) + . = ..() + if(vname == NAMEOF(src, immortal)) + if(vval) + countdown.stop() + else + countdown.start() + /obj/effect/anomaly/process(delta_time) anomalyEffect(delta_time) if(death_time < world.time && !immortal) diff --git a/code/game/objects/effects/countdown.dm b/code/game/objects/effects/countdown.dm index e5be8ffc0c0..95509006a6f 100644 --- a/code/game/objects/effects/countdown.dm +++ b/code/game/objects/effects/countdown.dm @@ -127,6 +127,8 @@ var/obj/effect/anomaly/A = attached_to if(!istype(A)) return + else if(A.immortal) //we can't die, why are we still here? just to suffer? + stop() else var/time_left = max(0, (A.death_time - world.time) / 10) return round(time_left)