Merge pull request #1427 from Chemlight/No-longer-as-random

Sillyroles now require the whitelist
This commit is contained in:
Dahlular
2021-10-20 04:20:15 -06:00
committed by GitHub
2 changed files with 23 additions and 5 deletions
+18
View File
@@ -82,6 +82,8 @@ SUBSYSTEM_DEF(job)
return FALSE
if(jobban_isbanned(player, rank) || QDELETED(player))
return FALSE
if((job.title in GLOB.silly_positions) && player.client.prefs.sillyroles == FALSE)
return FALSE
if(!job.player_old_enough(player.client))
return FALSE
if(job.required_playtime_remaining(player.client))
@@ -105,6 +107,9 @@ SUBSYSTEM_DEF(job)
if(jobban_isbanned(player, job.title) || QDELETED(player))
JobDebug("FOC isbanned failed, Player: [player]")
continue
if((job.title in GLOB.silly_positions) && (player.client.prefs.sillyroles == FALSE))
JobDebug("FOC is not whitelisted, Player: [player]")
continue
if(!job.player_old_enough(player.client))
JobDebug("FOC player not old enough, Player: [player]")
continue
@@ -142,6 +147,10 @@ SUBSYSTEM_DEF(job)
JobDebug("GRJ isbanned failed, Player: [player], Job: [job.title]")
continue
if((job.title in GLOB.silly_positions) && (player.client.prefs.sillyroles == FALSE))
JobDebug("GRJ is not whitelisted, Player: [player], Job: [job.title]")
continue
if(!job.player_old_enough(player.client))
JobDebug("GRJ player not old enough, Player: [player]")
continue
@@ -320,6 +329,10 @@ SUBSYSTEM_DEF(job)
JobDebug("DO player deleted during job ban check")
break
if((job.title in GLOB.silly_positions) && (player.client.prefs.sillyroles == FALSE))
JobDebug("DO is not whitelisted, Player: [player], Job:[job.title]")
continue
if(!job.player_old_enough(player.client))
JobDebug("DO player not old enough, Player: [player], Job:[job.title]")
continue
@@ -510,12 +523,16 @@ SUBSYSTEM_DEF(job)
var/never = 0 //never
var/banned = 0 //banned
var/young = 0 //account too young
var/silly = 0 //Silly whitelist required
for(var/mob/dead/new_player/player in GLOB.player_list)
if(!(player.ready == PLAYER_READY_TO_PLAY && player.mind && !player.mind.assigned_role))
continue //This player is not ready
if(jobban_isbanned(player, job.title) || QDELETED(player))
banned++
continue
if((job.title in GLOB.silly_positions) && (player.client.prefs.sillyroles == FALSE))
silly++
continue
if(!job.player_old_enough(player.client))
young++
continue
@@ -535,6 +552,7 @@ SUBSYSTEM_DEF(job)
SSblackbox.record_feedback("nested tally", "job_preferences", never, list("[job.title]", "never"))
SSblackbox.record_feedback("nested tally", "job_preferences", banned, list("[job.title]", "banned"))
SSblackbox.record_feedback("nested tally", "job_preferences", young, list("[job.title]", "young"))
SSblackbox.record_feedback("nested tally", "job_preferences", silly, list("[job.title]", "silly"))
/datum/controller/subsystem/job/proc/PopcapReached()
var/hpc = CONFIG_GET(number/hard_popcap)
@@ -14,7 +14,7 @@
//Service
/datum/job/assistant
alt_titles = list("Civilian", "Morale Officer", "Stripper", "Off-Duty", "Escort", "Visitor", "Businessman", "Trader", "Entertainer", "Tourist")
alt_titles = list("Civilian", "Morale Officer", "Stripper", "Off-Duty", "Escort", "Visitor", "Businessman", "Trader", "Entertainer", "Tourist", "Clerk")
/datum/job/cook
alt_titles = list("Cook", "Culinary Artist", "Butcher", "Chef de partie", "Poissonier")
@@ -23,7 +23,7 @@
alt_titles = list("Gardener", "Herbalist", "Botanical Researcher", "Hydroponicist", "Farmer", "Beekeeper", "Vintner")
/datum/job/curator
alt_titles = list("Journalist", "Librarian", "Keeper")
alt_titles = list("Journalist", "Librarian", "Keeper", "Artist") // Curator has it's own art window section
/datum/job/chaplain
alt_titles = list("Priest", "Priestess", "Bishop", "Prior", "Monk", "Nun", "Counselor")
@@ -48,7 +48,7 @@
alt_titles = list("Research Manager", "Science Administrator")
/datum/job/scientist
alt_titles = list("Circuitry Designer", "Xenobiologist", "Xenobotanist", "Xenoarcheologist", "Chemical Researcher", "Researcher", "Pyrotechnician")
alt_titles = list("Circuitry Designer", "Xenobiologist", "Xenobotanist", "Xenoarcheologist", "Chemical Researcher", "Researcher", "Toxins Researcher")
/datum/job/roboticist
alt_titles = list("Biomechanical Engineer", "Mechatronic Engineer", "Mechanic")
@@ -84,7 +84,7 @@
alt_titles = list("Prison Chief", "Armory Manager", "Prison Administrator", "Brig Superintendent")
/datum/job/officer
alt_titles = list("Security Agent", "Probation Officer", "Security Peacekeeper", "Security Guard", "Guardsman", "Security Cadet")
alt_titles = list("Security Agent", "Probation Officer", "Security Peacekeeper", "Security Guard", "Guardsman", "Security Cadet", "Police Officer")
/datum/job/detective
alt_titles = list("Forensics Technician", "Private Investigator", "Gumshoe")
@@ -99,7 +99,7 @@
alt_titles = list("Mail Man", "Mail Woman", "Mailroom Technician", "Deliveries Officer", "Logistics Technician")
/datum/job/mining
alt_titles = list("Exotic Ore Miner", "Fauna Hunter", "Explorer", "Digger") //Just because you're a hunter does not excuse you from rock collecting!!!!!!!!!!!!
alt_titles = list("Exotic Ore Miner", "Digger") //Fauna Hunters and Explorers have lost their privileges
//Command
/datum/job/captain