diff --git a/code/game/jobs/jobs.dm b/code/game/jobs/jobs.dm index 395b46e934..63aafe48f0 100644 --- a/code/game/jobs/jobs.dm +++ b/code/game/jobs/jobs.dm @@ -118,6 +118,21 @@ var/list/security_positions = list( ) +var/list/whitelisted_positions = list( + "Colony Director", + "Head of Personnel", + "Head of Security", + "Chief Engineer", + "Research Director", + "Chief Medical Officer", + "Command Secretary", + "Warden", + "AI", + "Cyborg", + "pAI" +) + + var/list/planet_positions = list( // "Explorer", // VOREStation Edit - Moved Explorer from planetary -> science // "Pilot", // VOREStation Edit - Moved Pilot from planetary -> civ @@ -133,7 +148,8 @@ var/list/nonhuman_positions = list( /proc/guest_jobbans(var/job) - return ((job in command_positions) || (job in nonhuman_positions) || (job in security_positions)) + return ((job in whitelisted_positions)) + /proc/get_job_datums() var/list/occupations = list() diff --git a/code/modules/client/preference_setup/occupation/occupation.dm b/code/modules/client/preference_setup/occupation/occupation.dm index 70381ee123..34e270fa2b 100644 --- a/code/modules/client/preference_setup/occupation/occupation.dm +++ b/code/modules/client/preference_setup/occupation/occupation.dm @@ -85,8 +85,12 @@ var/rank = job.title lastJob = job if(jobban_isbanned(user, rank)) - . += "[rank] \[BANNED]" - continue + if(config.usewhitelist && !check_whitelist(user)) + . += "[rank] \[WHITELISTED]" + continue + else + . += "[rank] \[BANNED]" + continue if(!job.player_old_enough(user.client)) var/available_in_days = job.available_in_days(user.client) . += "[rank] \[IN [(available_in_days)] DAYS]"