diff --git a/code/modules/client/preference_setup/loadout/gear_tweaks.dm b/code/modules/client/preference_setup/loadout/gear_tweaks.dm
index 5190f177835..9d198763154 100644
--- a/code/modules/client/preference_setup/loadout/gear_tweaks.dm
+++ b/code/modules/client/preference_setup/loadout/gear_tweaks.dm
@@ -160,6 +160,7 @@
var/list/choices = jobs_to_paths[job.type]
if(!(job.type in jobs_to_paths) || length(choices) < 2)
continue
+
var/choice = text2path(metadata["[job.type]"]) || choices[1]
.["[job.title]: [get_initial_name(choice)]"] = job.type
@@ -184,6 +185,7 @@
var/datum/job/job = get_valid_current_job()
if(!istype(job))
return
+
var/text_path = metadata["[job.type]"]
gear_data.path = text2path(text_path)
if(!gear_data.path)
@@ -192,8 +194,10 @@
/datum/gear_tweak/departmental/proc/get_valid_current_job()
if(current_job && (current_job.type in jobs_to_paths))
return current_job
+
if(!length(selected_jobs))
return
+
for(var/datum/job/job in selected_jobs)
if(!istype(job))
CRASH("Expected /datum/job, got [job]")
diff --git a/code/modules/client/preference_setup/loadout/loadout.dm b/code/modules/client/preference_setup/loadout/loadout.dm
index c4234d02f8d..24dcd8e269b 100644
--- a/code/modules/client/preference_setup/loadout/loadout.dm
+++ b/code/modules/client/preference_setup/loadout/loadout.dm
@@ -377,6 +377,7 @@ var/list/hash_to_gear = list()
. += " [name]"
. += "
"
continue
+
if(tweak_contents)
. += " [tweak_contents]"
. += "
"
@@ -744,6 +745,7 @@ var/list/hash_to_gear = list()
for(var/datum/gear_tweak/gt in gear_tweaks)
if(istype(gt, /datum/gear_tweak/departmental))
return TRUE
+
return FALSE
/datum/gear/proc/set_selected_jobs(job_high, selected_jobs)
@@ -754,6 +756,7 @@ var/list/hash_to_gear = list()
for(var/datum/gear_tweak/departmental/gt in gear_tweaks)
if(!istype(gt, /datum/gear_tweak/departmental))
continue
+
gt.set_selected_jobs(job_high, selected_jobs)
/datum/gear_data