From 20089a34e826b63fc412f45ad3277027bb10c059 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 24 May 2017 08:25:49 -0500 Subject: [PATCH] Fixes full controller recovery not restoring appropriate runlevel --- code/controllers/master.dm | 3 ++- code/controllers/subsystem/ticker.dm.rej | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 code/controllers/subsystem/ticker.dm.rej diff --git a/code/controllers/master.dm b/code/controllers/master.dm index 0f4ae021ad..74847ed88c 100644 --- a/code/controllers/master.dm +++ b/code/controllers/master.dm @@ -177,7 +177,8 @@ GLOBAL_REAL(Master, /datum/controller/master) = new to_chat(world, "[msg]") log_world(msg) - SetRunLevel(1) + if (!current_runlevel) + SetRunLevel(1) // Sort subsystems by display setting for easy access. sortTim(subsystems, /proc/cmp_subsystem_display) diff --git a/code/controllers/subsystem/ticker.dm.rej b/code/controllers/subsystem/ticker.dm.rej new file mode 100644 index 0000000000..019d7cf3cd --- /dev/null +++ b/code/controllers/subsystem/ticker.dm.rej @@ -0,0 +1,16 @@ +diff a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm (rejected hunks) +@@ -719,6 +719,14 @@ SUBSYSTEM_DEF(ticker) + cinematic = SSticker.cinematic + maprotatechecked = SSticker.maprotatechecked + ++ switch (current_state) ++ if(GAME_STATE_SETTING_UP) ++ Master.SetRunLevel(RUNLEVEL_SETUP) ++ if(GAME_STATE_PLAYING) ++ Master.SetRunLevel(RUNLEVEL_GAME) ++ if(GAME_STATE_FINISHED) ++ Master.SetRunLevel(RUNLEVEL_POSTGAME) ++ + /datum/controller/subsystem/ticker/proc/send_news_report() + var/news_message + var/news_source = "Nanotrasen News Network"