From 20089a34e826b63fc412f45ad3277027bb10c059 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 24 May 2017 08:25:49 -0500 Subject: [PATCH 1/2] 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" From 5fe7f7083a82e7d0cc4b8562b4243f4fb59d4733 Mon Sep 17 00:00:00 2001 From: LetterJay Date: Mon, 29 May 2017 01:59:49 -0500 Subject: [PATCH 2/2] woo --- code/controllers/subsystem/ticker.dm | 13 +++++++++++-- code/controllers/subsystem/ticker.dm.rej | 16 ---------------- 2 files changed, 11 insertions(+), 18 deletions(-) delete mode 100644 code/controllers/subsystem/ticker.dm.rej diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index a54c74966a..c839c7c33d 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -744,6 +744,15 @@ 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) + + modevoted = SSticker.modevoted /datum/controller/subsystem/ticker/proc/send_news_report() @@ -844,7 +853,7 @@ SUBSYSTEM_DEF(ticker) if(delay_end) to_chat(world, "An admin has delayed the round end.") return - + to_chat(world, "Rebooting World in [delay/10] [(delay >= 10 && delay < 20) ? "second" : "seconds"]. [reason]") var/start_wait = world.time @@ -854,7 +863,7 @@ SUBSYSTEM_DEF(ticker) if(delay_end) to_chat(world, "Reboot was cancelled by an admin.") return - + SSblackbox.set_details("[feedback_c]","[feedback_r]") log_game("Rebooting World. [reason]") diff --git a/code/controllers/subsystem/ticker.dm.rej b/code/controllers/subsystem/ticker.dm.rej deleted file mode 100644 index 019d7cf3cd..0000000000 --- a/code/controllers/subsystem/ticker.dm.rej +++ /dev/null @@ -1,16 +0,0 @@ -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"