diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 5983fa3ae5..cc46d35c25 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -116,7 +116,7 @@ SUBSYSTEM_DEF(job) if(player.mind && job.title in player.mind.restricted_roles) JobDebug("FOC incompatible with antagonist role, Player: [player]") continue - if(player.client.prefs.job_preferences[job.title] == level) + if(player.client.prefs.job_preferences["[job.title]"] == level) JobDebug("FOC pass, Player: [player], Level:[level]") candidates += player return candidates @@ -246,7 +246,7 @@ SUBSYSTEM_DEF(job) initial_players_to_assign = unassigned.len - JobDebug("DO, Len: [unassigned.len]") + JobDebug("DO, Len: [unassigned?.len]") if(unassigned.len == 0) return validate_required_jobs(required_jobs) @@ -270,7 +270,7 @@ SUBSYSTEM_DEF(job) JobDebug("DO, Running Overflow Check 1") var/datum/job/overflow = GetJob(SSjob.overflow_role) var/list/overflow_candidates = FindOccupationCandidates(overflow, JP_LOW) - JobDebug("AC1, Candidates: [overflow_candidates.len]") + JobDebug("AC1, Candidates: [overflow_candidates?.len]") for(var/mob/dead/new_player/player in overflow_candidates) JobDebug("AC1 pass, Player: [player]") AssignRole(player, SSjob.overflow_role) @@ -333,7 +333,7 @@ SUBSYSTEM_DEF(job) continue // If the player wants that job on this level, then try give it to him. - if(player.client.prefs.job_preferences[job.title] == level) + if(player.client.prefs.job_preferences["[job.title]"] == level) // If the job isn't filled if((job.current_positions < job.spawn_positions) || job.spawn_positions == -1) JobDebug("DO pass, Player: [player], Level:[level], Job:[job.title]") @@ -540,7 +540,7 @@ SUBSYSTEM_DEF(job) if(job.required_playtime_remaining(player.client)) young++ continue - switch(player.client.prefs.job_preferences[job.title]) + switch(player.client.prefs.job_preferences["[job.title]"]) if(JP_HIGH) high++ if(JP_MEDIUM) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 686d5d3572..f9fc7b9221 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -1039,7 +1039,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/available_in_days = job.available_in_days(user.client) HTML += "[rank] \[IN [(available_in_days)] DAYS\]" continue - if((job_preferences[SSjob.overflow_role] == JP_LOW) && (rank != SSjob.overflow_role) && !jobban_isbanned(user, SSjob.overflow_role)) + if((job_preferences["[SSjob.overflow_role]"] == JP_LOW) && (rank != SSjob.overflow_role) && !jobban_isbanned(user, SSjob.overflow_role)) HTML += "[rank]" continue if((rank in GLOB.command_positions) || (rank == "AI"))//Bold head jobs @@ -1054,7 +1054,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/prefUpperLevel = -1 // level to assign on left click var/prefLowerLevel = -1 // level to assign on right click - switch(job_preferences[job.title]) + switch(job_preferences["[job.title]"]) if(JP_HIGH) prefLevelLabel = "High" prefLevelColor = "slateblue" @@ -1079,7 +1079,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) HTML += "" if(rank == SSjob.overflow_role)//Overflow is special - if(job_preferences[SSjob.overflow_role] == JP_LOW) + if(job_preferences["[SSjob.overflow_role]"] == JP_LOW) HTML += "Yes" else HTML += "No" @@ -1115,11 +1115,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) if (level == JP_HIGH) // to high //Set all other high to medium for(var/j in job_preferences) - if(job_preferences[j] == JP_HIGH) - job_preferences[j] = JP_MEDIUM + if(job_preferences["[j]"] == JP_HIGH) + job_preferences["[j]"] = JP_MEDIUM //technically break here - job_preferences[job.title] = level + job_preferences["[job.title]"] = level return TRUE /datum/preferences/proc/UpdateJobPreference(mob/user, role, desiredLvl) @@ -1147,7 +1147,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) jpval = JP_HIGH if(role == SSjob.overflow_role) - if(job_preferences[job.title] == JP_LOW) + if(job_preferences["[job.title]"] == JP_LOW) jpval = null else jpval = JP_LOW diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index c900349843..7da8017f56 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -101,7 +101,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car else if(job_engsec_low & fval) new_value = JP_LOW if(new_value) - job_preferences[initial(J.title)] = new_value + job_preferences["[initial(J.title)]"] = new_value if((current_version < 22) && features["meat_type"] && (features["meat_type"] == null)) features["meat_type"] = "Mammalian" @@ -485,7 +485,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car joblessrole = sanitize_integer(joblessrole, 1, 3, initial(joblessrole)) //Validate job prefs for(var/j in job_preferences) - if(job_preferences[j] != JP_LOW && job_preferences[j] != JP_MEDIUM && job_preferences[j] != JP_HIGH) + if(job_preferences["[j]"] != JP_LOW && job_preferences["[j]"] != JP_MEDIUM && job_preferences["[j]"] != JP_HIGH) job_preferences -= j all_quirks = SANITIZE_LIST(all_quirks) diff --git a/code/modules/mob/dead/new_player/preferences_setup.dm b/code/modules/mob/dead/new_player/preferences_setup.dm index b08fadefcb..994d082585 100644 --- a/code/modules/mob/dead/new_player/preferences_setup.dm +++ b/code/modules/mob/dead/new_player/preferences_setup.dm @@ -28,9 +28,9 @@ var/datum/job/previewJob var/highest_pref = 0 for(var/job in job_preferences) - if(job_preferences[job] > highest_pref) + if(job_preferences["[job]"] > highest_pref) previewJob = SSjob.GetJob(job) - highest_pref = job_preferences[job] + highest_pref = job_preferences["[job]"] if(previewJob) // Silicons only need a very basic preview since there is no customization for them.