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)