From 0b22d3cbd3ea1e112e36bcf1494a4c9d4d541c8a Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Wed, 11 May 2022 01:04:00 +0200 Subject: [PATCH] [MIRROR] improve speed of cascade walls, better description for them + CL for cascade antag [MDB IGNORE] (#13512) * improve speed of cascade walls, better description for them + CL for cascade antag (#66800) Cascade walls were processing on object subsystem, they are now in their own subsystem that ticks once per second and should be more reliable even in case of high td better description for the walls to be more interesting * improve speed of cascade walls, better description for them + CL for cascade antag Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com> --- .../subsystem/processing/supermatter_cascade.dm | 4 ++++ .../power/supermatter/supermatter_cascade_components.dm | 8 ++++---- .../modules/power/supermatter/supermatter_delamination.dm | 1 - tgstation.dme | 1 + 4 files changed, 9 insertions(+), 5 deletions(-) create mode 100644 code/controllers/subsystem/processing/supermatter_cascade.dm diff --git a/code/controllers/subsystem/processing/supermatter_cascade.dm b/code/controllers/subsystem/processing/supermatter_cascade.dm new file mode 100644 index 00000000000..91d6d3b4624 --- /dev/null +++ b/code/controllers/subsystem/processing/supermatter_cascade.dm @@ -0,0 +1,4 @@ +PROCESSING_SUBSYSTEM_DEF(supermatter_cascade) + name = "Supermatter Cascade" + wait = 1 SECONDS + stat_tag = "SC" diff --git a/code/modules/power/supermatter/supermatter_cascade_components.dm b/code/modules/power/supermatter/supermatter_cascade_components.dm index 1d61a4358b9..9f6275a038a 100644 --- a/code/modules/power/supermatter/supermatter_cascade_components.dm +++ b/code/modules/power/supermatter/supermatter_cascade_components.dm @@ -1,6 +1,6 @@ /turf/closed/indestructible/supermatter_wall - name = "wall" - desc = "Effectively impervious any methods of destruction." + name = "crystal mass" + desc = "You see this massive crystal mass looming towards you, cracking and screeching at every seemingly random movement." icon = 'icons/turf/walls.dmi' icon_state = "crystal_cascade_1" layer = AREA_LAYER @@ -17,11 +17,11 @@ /turf/closed/indestructible/supermatter_wall/Initialize(mapload) . = ..() icon_state = "crystal_cascade_[rand(1,6)]" - START_PROCESSING(SSmachines, src) + START_PROCESSING(SSsupermatter_cascade, src) AddComponent(/datum/component/supermatter_crystal, null, null) - playsound(src, 'sound/misc/cracking_crystal.ogg', 20, TRUE) + playsound(src, 'sound/misc/cracking_crystal.ogg', 45, TRUE) /turf/closed/indestructible/supermatter_wall/process() diff --git a/code/modules/power/supermatter/supermatter_delamination.dm b/code/modules/power/supermatter/supermatter_delamination.dm index 6e012232ff3..3c7acc34e37 100644 --- a/code/modules/power/supermatter/supermatter_delamination.dm +++ b/code/modules/power/supermatter/supermatter_delamination.dm @@ -172,7 +172,6 @@ /datum/supermatter_delamination/proc/start_supermatter_cascade() SSshuttle.registerHostileEnvironment(src) SSshuttle.supermatter_cascade = TRUE - SSair.can_fire = FALSE call_explosion() pick_rift_location() warn_crew() diff --git a/tgstation.dme b/tgstation.dme index bf7e20cdf85..d05ddc156cc 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -602,6 +602,7 @@ #include "code\controllers\subsystem\processing\reagents.dm" #include "code\controllers\subsystem\processing\singulo.dm" #include "code\controllers\subsystem\processing\station.dm" +#include "code\controllers\subsystem\processing\supermatter_cascade.dm" #include "code\controllers\subsystem\processing\tramprocess.dm" #include "code\controllers\subsystem\processing\wet_floors.dm" #include "code\datums\action.dm"