From 2075b3875baffc38059aa78e359d3d8cadd3b089 Mon Sep 17 00:00:00 2001 From: FalloutFalcon Date: Fri, 7 Aug 2026 11:54:10 -0500 Subject: [PATCH 1/3] tweaks --- code/controllers/configuration/entries/general.dm | 2 +- code/controllers/subsystem/ticker.dm | 7 ++++++- config/apoc_config.txt | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/code/controllers/configuration/entries/general.dm b/code/controllers/configuration/entries/general.dm index db0b2dfa1b16..5614cc266bd8 100644 --- a/code/controllers/configuration/entries/general.dm +++ b/code/controllers/configuration/entries/general.dm @@ -39,7 +39,7 @@ /// station name (the name of the station in-game) /datum/config_entry/string/stationname -/datum/config_entry/flag/delay_if_no_admins // APOC EDIT ADD - (delay if no admins) +/datum/config_entry/number/delay_if_no_admins // APOC EDIT ADD - (delay if no admins) /// Countdown between lobby and the round starting. /datum/config_entry/number/lobby_countdown diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 00a7fd0fccd6..3dcd2f2441e1 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -155,7 +155,12 @@ SUBSYSTEM_DEF(ticker) // APOC EDIT ADD START - (delay if no admins) if(CONFIG_GET(flag/delay_if_no_admins)) if(timeLeft <= 600 && timeLeft > -1) - if(length(GLOB.admins) <= 0) + var/important_admins_on = 0 + for(var/client/online_admin as anything in GLOB.admins) + if(online_admin.is_afk() || !check_rights_for(online_admin, R_BAN)) + continue + important_admins_on++ + if(important_admins_on < CONFIG_GET(flag/delay_if_no_admins)) SetTimeLeft(-1) start_immediately = FALSE to_chat(world, span_infoplain("The game start has been delayed due to no admins connected."), confidential = TRUE) diff --git a/config/apoc_config.txt b/config/apoc_config.txt index 1d571a8c4787..a1376cfe28e4 100644 --- a/config/apoc_config.txt +++ b/config/apoc_config.txt @@ -1,5 +1,5 @@ ## NICE images for COOL discord users, seperated by commas i.e. BITE_IMG_LIST http://url/image.gif, http://url/image.png #BITE_IMG_LIST -## Delay the round from starting if no admins are connected. -#DELAY_IF_NO_ADMINS +## Amount of admins required to prevent round delay. +#DELAY_IF_NO_ADMINS 1 From da945fa5c50410ceb0cb0193add6ed6922fe00cc Mon Sep 17 00:00:00 2001 From: FalloutFalcon Date: Fri, 7 Aug 2026 11:56:14 -0500 Subject: [PATCH 2/3] yea --- code/controllers/subsystem/ticker.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 3dcd2f2441e1..694aeaf7a9f3 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -163,7 +163,7 @@ SUBSYSTEM_DEF(ticker) if(important_admins_on < CONFIG_GET(flag/delay_if_no_admins)) SetTimeLeft(-1) start_immediately = FALSE - to_chat(world, span_infoplain("The game start has been delayed due to no admins connected."), confidential = TRUE) + to_chat(world, span_infoplain("The game start has been delayed due to not enough important admins connected."), confidential = TRUE) return // APOC EDIT ADD END From be1279f0d57f4bda7363822bf43073e2ccfaad91 Mon Sep 17 00:00:00 2001 From: FalloutFalcon Date: Fri, 7 Aug 2026 12:02:56 -0500 Subject: [PATCH 3/3] I can code --- code/controllers/subsystem/ticker.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 694aeaf7a9f3..49ee2f93adbb 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -153,14 +153,14 @@ SUBSYSTEM_DEF(ticker) ++total_admins_ready // APOC EDIT ADD START - (delay if no admins) - if(CONFIG_GET(flag/delay_if_no_admins)) + if(CONFIG_GET(number/delay_if_no_admins)) if(timeLeft <= 600 && timeLeft > -1) var/important_admins_on = 0 for(var/client/online_admin as anything in GLOB.admins) if(online_admin.is_afk() || !check_rights_for(online_admin, R_BAN)) continue important_admins_on++ - if(important_admins_on < CONFIG_GET(flag/delay_if_no_admins)) + if(important_admins_on < CONFIG_GET(number/delay_if_no_admins)) SetTimeLeft(-1) start_immediately = FALSE to_chat(world, span_infoplain("The game start has been delayed due to not enough important admins connected."), confidential = TRUE)