From d9a2316825784332924ae91f4c6154b96c6800a4 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sat, 20 Mar 2021 12:13:28 -0700 Subject: [PATCH] fix --- code/__DEFINES/role_preferences.dm | 4 +++- code/game/gamemodes/game_mode.dm | 2 +- code/modules/client/preferences_savefile.dm | 7 ------- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/code/__DEFINES/role_preferences.dm b/code/__DEFINES/role_preferences.dm index 09b5be572f..9cabc16a45 100644 --- a/code/__DEFINES/role_preferences.dm +++ b/code/__DEFINES/role_preferences.dm @@ -41,11 +41,13 @@ #define ROLE_GHOSTCAFE "ghostcafe" #define ROLE_MINOR_ANTAG "minorantag" #define ROLE_RESPAWN "respawnsystem" +/// Not an actual antag. Lets players force all antags off. +#define ROLE_NO_ANTAGONISM "NO_ANTAGS" //Missing assignment means it's not a gamemode specific role, IT'S NOT A BUG OR ERROR. //The gamemode specific ones are just so the gamemodes can query whether a player is old enough //(in game days played) to play that role GLOBAL_LIST_INIT(special_roles, list( - ROLE_SYNDICATE, + ROLE_NO_ANTAGONISM, ROLE_TRAITOR = /datum/game_mode/traitor, ROLE_BROTHER = /datum/game_mode/traitor/bros, ROLE_OPERATIVE = /datum/game_mode/nuclear, diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 610db63b1b..5ea99da479 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -420,7 +420,7 @@ for(var/mob/dead/new_player/player in players) if(player.client && player.ready == PLAYER_READY_TO_PLAY) - if((role in player.client.prefs.be_special) && (ROLE_SYNDICATE in player.client.prefs.be_special)) + if((role in player.client.prefs.be_special) && !(ROLE_NO_ANTAGONISM in player.client.prefs.be_special)) if(!jobban_isbanned(player, ROLE_SYNDICATE) && !QDELETED(player) && !jobban_isbanned(player, role) && !QDELETED(player)) //Nodrak/Carn: Antag Job-bans if(age_check(player.client)) //Must be older than the minimum age candidates += player.mind // Get a list of all the people who want to be the antagonist for this round diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 0b0a200254..492e1eff88 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -288,13 +288,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(current_version < 48) //unlockable loadout items but we need to clear bad data from a mistake S["unlockable_loadout"] = list() - if(current_version < 49) - var/list/L - S["be_special"] >> L - if(islist(L)) - L |= ROLE_SYNDICATE - S["be_special"] << L - /datum/preferences/proc/load_path(ckey,filename="preferences.sav") if(!ckey) return