From 4ce0c46d45ec7668bfc104d0abee32e8d332dcf7 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Wed, 5 May 2021 12:54:19 -0700 Subject: [PATCH 1/3] Update dynamic_rulesets_events.dm --- .../gamemodes/dynamic/dynamic_rulesets_events.dm | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm b/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm index 3fb8ac55..715e11a2 100644 --- a/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm +++ b/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm @@ -14,18 +14,15 @@ var/list/dead_players = list() var/list/list_observers = list() -/datum/dynamic_ruleset/event/acceptable(population=0, threat=0) - if(istype(controller, /datum/round_event_control)) - var/datum/round_event_control/R = controller - if(R.map_blacklist.len && (SSmapping.config.map_file in R.map_blacklist)) //Apparently dynamic doesn't call a controller's canSpawnEvent :> - return FALSE - if(R.map_whitelist.len && !(SSmapping.config.map_file in R.map_whitelist)) - return FALSE - return ..() - /datum/dynamic_ruleset/event/ready(forced = 0) if (!forced) var/job_check = 0 + if (istype(controller, /datum/round_event_control)) + var/datum/round_event_control/R = controller + if (R.map_blacklist.len && (SSmapping.config.map_file in R.map_blacklist)) + return FALSE + if (R.map_whitelist.len && !(SSmapping.config.map_file in R.map_whitelist)) + return FALSE if (enemy_roles.len > 0) for (var/mob/M in mode.current_players[CURRENT_LIVING_PLAYERS]) if (M.stat == DEAD) From 9227a3bd1d1f73ead401def39815bdebb9c75c50 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Wed, 5 May 2021 13:03:34 -0700 Subject: [PATCH 2/3] Update dynamic_rulesets_events.dm --- .../dynamic/dynamic_rulesets_events.dm | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm b/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm index 715e11a2..8d8e30a7 100644 --- a/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm +++ b/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm @@ -13,16 +13,16 @@ var/list/living_antags = list() var/list/dead_players = list() var/list/list_observers = list() + var/list/map_blacklist = list() //Determines if a map, "BoxStation.dmm" for example, will spawn. Has to be case-sensitive + var/list/map_whitelist = list() //Blacklist/Whitelist does not check round event controllers, they are separate vars /datum/dynamic_ruleset/event/ready(forced = 0) if (!forced) var/job_check = 0 - if (istype(controller, /datum/round_event_control)) - var/datum/round_event_control/R = controller - if (R.map_blacklist.len && (SSmapping.config.map_file in R.map_blacklist)) - return FALSE - if (R.map_whitelist.len && !(SSmapping.config.map_file in R.map_whitelist)) - return FALSE + if (map_blacklist.len && (SSmapping.config.map_file in map_blacklist)) + return FALSE + if (map_whitelist.len && !(SSmapping.config.map_file in map_whitelist)) + return FALSE if (enemy_roles.len > 0) for (var/mob/M in mode.current_players[CURRENT_LIVING_PLAYERS]) if (M.stat == DEAD) @@ -229,6 +229,7 @@ //property_weights = list("extended" = -2) occurances_max = 2 chaos_min = 1.5 + map_blacklist = list("LayeniaStation.dmm") /datum/dynamic_ruleset/event/meteor_wave/ready() if(world.time-SSticker.round_start_time > 35 MINUTES && mode.threat_level > 40 && mode.threat >= 25 && prob(30)) @@ -405,6 +406,7 @@ //property_weights = list("extended" = 1) occurances_max = 3 chaos_min = 0.5 + map_blacklist = list("LayeniaStation.dmm") /datum/dynamic_ruleset/event/communications_blackout name = "Communications Blackout" @@ -468,6 +470,7 @@ repeatable = TRUE //property_weights = list("extended" = 1) occurances_max = 3 + /datum/dynamic_ruleset/event/electrical_storm name = "Electrical Storm" @@ -541,6 +544,7 @@ //property_weights = list("extended" = 1) occurances_max = 2 chaos_min = 1.0 + map_blacklist = list("LayeniaStation.dmm") /datum/dynamic_ruleset/event/swarmers name = "Swarmers" @@ -626,6 +630,7 @@ cost = 10 repeatable = TRUE occurances_max = 2 + map_blacklist = list("LayeniaStation.dmm") /datum/dynamic_ruleset/event/high_priority_bounty name = "High Priority Bounty" @@ -720,6 +725,7 @@ weight = 4 repeatable_weight_decrease = 3 occurances_max = 2 + map_blacklist = list("LayeniaStation.dmm") /datum/dynamic_ruleset/event/sentience name = "Random Human-level Intelligence" From da64ec70b26cd75a8e61890aed5559dcc1bbc4f0 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Wed, 5 May 2021 13:05:02 -0700 Subject: [PATCH 3/3] Update dynamic_rulesets_events.dm --- code/game/gamemodes/dynamic/dynamic_rulesets_events.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm b/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm index 8d8e30a7..f44991cd 100644 --- a/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm +++ b/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm @@ -605,6 +605,7 @@ repeatable_weight_decrease = 2 chaos_min = 1.5 var/atom/special_target + map_blacklist = list("LayeniaStation.dmm") /* /datum/dynamic_ruleset/event/immovable_rod/execute() //I do not know why this is necessary