Consular and Representative Split (#9954)

This commit is contained in:
Geeves
2020-09-19 12:11:57 +02:00
committed by GitHub
parent 2c96d29976
commit b433b66a8a
22 changed files with 2133 additions and 1363 deletions
@@ -56,7 +56,7 @@
/datum/gear/accessory/holster
display_name = "holster selection"
path = /obj/item/clothing/accessory/holster/armpit
allowed_roles = list("Captain", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective", "Forensic Technician", "Security Cadet", "Corporate Liaison")
allowed_roles = list("Captain", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective", "Forensic Technician", "Security Cadet", "Corporate Liaison", "Consular Officer")
/datum/gear/accessory/holster/New()
..()
@@ -192,6 +192,10 @@
if(S.name in job.blacklisted_species)
dat += "<del>[dispRank]</del></td><td><b> \[SPECIES RESTRICTED]</b></td></tr>"
continue
var/datum/citizenship/C = SSrecords.citizenships[pref.citizenship]
if(C.job_species_blacklist[job.title] && (pref.species in C.job_species_blacklist[job.title]))
dat += "<del>[dispRank]</del></td><td><b> \[SPECIES RESTRICTED]</b></td></tr>"
continue
if(job.alt_titles && (LAZYLEN(pref.GetValidTitles(job)) > 1))
dispRank = "<span style='background-color: [hex2cssrgba(lastJob.selection_color, 0.4)];' width='60%' align='center'>&nbsp<a href='?src=\ref[src];select_alt_title=\ref[job]'>\[[pref.GetPlayerAltTitle(job)]\]</a></span>"
if((pref.job_civilian_low & ASSISTANT) && (rank != "Assistant"))
@@ -306,14 +310,14 @@
/datum/category_item/player_setup_item/occupation/proc/SetJob(mob/user, role)
var/datum/job/job = SSjobs.GetJob(role)
if(!job)
return 0
return FALSE
if(role == "Assistant")
if(pref.job_civilian_low & job.flag)
pref.job_civilian_low &= ~job.flag
else
pref.job_civilian_low |= job.flag
return 1
return TRUE
if(pref.GetJobDepartment(job, 1) & job.flag)
SetJobDepartment(job, 1)
@@ -328,7 +332,7 @@
/datum/category_item/player_setup_item/occupation/proc/SetJobDepartment(var/datum/job/job, var/level)
if(!job || !level)
return 0
return FALSE
switch(level)
if(1)//Only one of these should ever be active at once so clear them all here
pref.job_civilian_high = 0
@@ -454,7 +458,8 @@
return choices
/datum/preferences/proc/GetJobDepartment(var/datum/job/job, var/level)
if(!job || !level) return 0
if(!job || !level)
return FALSE
switch(job.department_flag)
if(CIVILIAN)
switch(level)