diff --git a/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm b/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm index f44991cd..851dc856 100644 --- a/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm +++ b/code/game/gamemodes/dynamic/dynamic_rulesets_events.dm @@ -16,13 +16,16 @@ 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/acceptable(population=0, threat_level=0) + if (map_blacklist.len && (map_blacklist.Find(SSmapping.config.map_file))) + return FALSE + if (map_whitelist.len && !(map_whitelist.Find(SSmapping.config.map_file))) + return FALSE + return ..() + /datum/dynamic_ruleset/event/ready(forced = 0) if (!forced) var/job_check = 0 - 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) diff --git a/code/modules/events/_event.dm b/code/modules/events/_event.dm index 50a3a38b..b48c78d8 100644 --- a/code/modules/events/_event.dm +++ b/code/modules/events/_event.dm @@ -48,9 +48,9 @@ return FALSE if(players_amt < min_players) return FALSE - if(gamemode_blacklist.len && (gamemode in gamemode_blacklist)) + if(gamemode_blacklist.len && (gamemode_blacklist.Find(gamemode))) return FALSE - if(gamemode_whitelist.len && !(gamemode in gamemode_whitelist)) + if(gamemode_whitelist.len && !(gamemode_whitelist.Find(gamemode))) return FALSE if(map_blacklist.len && (SSmapping.config.map_file in map_blacklist)) //HYPER EDIT: certain maps will get special events return FALSE