[MIRROR] Supermatter cascade subsystems fire when it needs to [MDB IGNORE] (#16085)

* Supermatter cascade subsystems fire when it needs to (#69686)

Supermatter cascade by default is offline, and will fire when a supermatter cascade occurs.

* Supermatter cascade subsystems fire when it needs to

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
This commit is contained in:
SkyratBot
2022-09-06 16:27:07 +01:00
committed by GitHub
co-authored by John Willard
parent 91ce69abfe
commit 11df5ea999
2 changed files with 5 additions and 3 deletions
@@ -2,6 +2,7 @@ PROCESSING_SUBSYSTEM_DEF(supermatter_cascade)
name = "Supermatter Cascade"
wait = 0.5 SECONDS
stat_tag = "SC"
can_fire = FALSE
///Is a cascade happening right now?
var/cascade_initiated = FALSE
@@ -11,14 +11,14 @@
if(!percent || percent < 0.4)
return FALSE
return TRUE
/datum/sm_delam/cascade/delam_progress(obj/machinery/power/supermatter_crystal/sm)
/datum/sm_delam/cascade/delam_progress(obj/machinery/power/supermatter_crystal/sm)
. = ..()
if(!.)
return FALSE
sm.radio.talk_into(
sm,
"DANGER: HYPERSTRUCTURE OSCILLATION FREQUENCY OUT OF BOUNDS.",
"DANGER: HYPERSTRUCTURE OSCILLATION FREQUENCY OUT OF BOUNDS.",
sm.damage >= sm.emergency_point ? sm.emergency_channel : sm.warning_channel
)
var/list/messages = list(
@@ -64,6 +64,7 @@
var/obj/cascade_portal/rift = effect_evac_rift_start()
RegisterSignal(rift, COMSIG_PARENT_QDELETING, .proc/end_round_holder)
effect_crystal_mass(sm, rift)
SSsupermatter_cascade.can_fire = TRUE
SSsupermatter_cascade.cascade_initiated = TRUE
qdel(sm)