"
//standard departments all have identical handling
- var/list/job_lists = list("Security" = GLOB.security_positions,
- "Engineering" = GLOB.engineering_positions,
- "Medical" = GLOB.medical_positions,
- "Science" = GLOB.science_positions,
- "Supply" = GLOB.supply_positions)
+ var/list/job_lists = list("Security" = GLOB.original_security_positions,
+ "Engineering" = GLOB.original_engineering_positions,
+ "Medical" = GLOB.original_medical_positions,
+ "Science" = GLOB.original_science_positions,
+ "Supply" = GLOB.original_supply_positions)
for(var/department in job_lists)
//the first element is the department head so they need the same javascript call as above
output += "
"
//departments/groups that don't have command staff would throw a javascript error since there's no corresponding reference for toggle_head()
- var/list/headless_job_lists = list("Silicon" = GLOB.nonhuman_positions,
+ var/list/headless_job_lists = list("Silicon" = GLOB.original_nonhuman_positions,
"Abstract" = list("Appearance", "Emote", "OOC", "Voice Announcements"))
for(var/department in headless_job_lists)
output += "
"
- var/list/long_job_lists = list("Civilian" = GLOB.civilian_positions,
+ var/list/long_job_lists = list("Civilian" = GLOB.original_civilian_positions,
"Ghost and Other Roles" = list(ROLE_BRAINWASHED, ROLE_DEATHSQUAD, ROLE_DRONE, ROLE_FUGITIVE, ROLE_HOLOPARASITE, ROLE_LAVALAND, ROLE_MIND_TRANSFER, ROLE_POSIBRAIN, ROLE_SENTIENCE),
"Antagonist Positions" = list(ROLE_ABDUCTOR, ROLE_ALIEN, ROLE_BLOB,
ROLE_BROTHER, ROLE_CHANGELING, ROLE_CULTIST,
diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm
index 501f09957775..1a18217549c1 100644
--- a/code/modules/jobs/job_types/_job.dm
+++ b/code/modules/jobs/job_types/_job.dm
@@ -285,7 +285,6 @@
PDA.ownjob = H.mind.role_alt_title
else
PDA.ownjob = J.title
- PDA.ownjob = J.title
PDA.update_label()
/datum/outfit/job/get_chameleon_disguise_info()
diff --git a/code/modules/jobs/jobs.dm b/code/modules/jobs/jobs.dm
index 28b6bdc621be..355a154ffdb9 100644
--- a/code/modules/jobs/jobs.dm
+++ b/code/modules/jobs/jobs.dm
@@ -1,74 +1,137 @@
-GLOBAL_LIST_INIT(command_positions, list(
- "Captain", "Station Commander", "Facility Overseer",
- "Head of Personnel", "Chief of Staff", "Head of Internal Affairs",
- "Head of Security", "Security Commander", "Security Chief",
- "Chief Engineer", "Head of Engineering", "Engineering Director",
- "Research Director", "Chief Science Officer", "Head of Research",
- "Chief Medical Officer", "Medical Director", "Head of Medical"))
-
-
-GLOBAL_LIST_INIT(engineering_positions, list(
- "Chief Engineer", "Head of Engineering", "Engineering Director",
- "Station Engineer", "Engine Technician", "Solar Engineer", "Project Engineer", "Junior Engineer", "Construction Specialist",
- "Atmospheric Technician", "Breach Fixer", "Habitation Technician", "Fire Supression Technician", "Atmospherics Trainee", "Environmental Maintainer",
- "Signal Technician", "NTSL Programmer", "Comms Tech", "Station IT Support"
- ))
-
+GLOBAL_LIST_INIT(original_command_positions, list(
+ "Captain",
+ "Head of Personnel",
+ "Head of Security",
+ "Chief Engineer",
+ "Research Director",
+ "Chief Medical Officer"))
+
+GLOBAL_LIST_INIT(original_engineering_positions, list(
+ "Chief Engineer",
+ "Station Engineer",
+ "Atmospheric Technician",
+ "Signal Technician"))
+
+GLOBAL_LIST_INIT(original_medical_positions, list(
+ "Chief Medical Officer",
+ "Medical Doctor",
+ "Geneticist",
+ "Virologist",
+ "Chemist",
+ "Paramedic",
+ "Psychiatrist",
+ "Mining Medic"))
+
+GLOBAL_LIST_INIT(original_science_positions, list(
+ "Research Director",
+ "Scientist",
+ "Roboticist"))
+
+GLOBAL_LIST_INIT(original_supply_positions, list(
+ "Head of Personnel",
+ "Quartermaster",
+ "Cargo Technician",
+ "Shaft Miner"))
+
+GLOBAL_LIST_INIT(original_civilian_positions, list(
+ "Bartender",
+ "Botanist",
+ "Cook",
+ "Janitor",
+ "Curator",
+ "Lawyer",
+ "Chaplain",
+ "Clown",
+ "Mime",
+ "Assistant",
+ "Clerk",
+ "Tourist",
+ "Artist"))
+
+GLOBAL_LIST_INIT(original_security_positions, list(
+ "Head of Security",
+ "Warden",
+ "Detective",
+ "Security Officer"))
+
+GLOBAL_LIST_INIT(original_nonhuman_positions, list(
+ "AI",
+ "Cyborg",
+ ROLE_PAI))
-GLOBAL_LIST_INIT(medical_positions, list(
- "Chief Medical Officer", "Medical Director", "Head of Medical",
- "Medical Doctor", "Physician", "Surgeon", "Nurse", "Medical Resident", "Attending Physician", "Chief Surgeon", "Attending Physician", "Chief Surgeon", "Medical Subdirector", "General Practitioner",
- "Geneticist", "DNA Mechanic", "Bioengineer", "Junior Geneticist", "Gene Splicer",
- "Virologist", "Microbiologist", "Pathologist", "Junior Disease Researcher", "Epidemiologist",
- "Chemist", "Pharmacist", "Chemical Analyst", "Chemistry Lab Technician", "Chemical Specialist",
- "Paramedic", "EMT", "Paramedic Trainee", "Rapid Response Medic",
- "Psychiatrist", "Councilor", "Therapist", "Mentalist",
- "Mining Medic", "Mining Medical Support", "Lavaland Medical Care Unit", "Junior Mining Medic", "Planetside Health Officer"))
-
-
-GLOBAL_LIST_INIT(science_positions, list(
- "Research Director", "Chief Science Officer", "Head of Research",
- "Scientist", "Researcher", "Toxins Specialist", "Physicist", "Science Intern", "Anomalist", "Quantum Physicist", "Xenobiologist", "Bomb Specialist",
- "Roboticist", "Augmentation Theorist", "Cyborg Maintainer", "Robotics Intern", "Biomechanical Engineer", "Mechatronic Engineer"))
-
-
-GLOBAL_LIST_INIT(supply_positions, list(
- "Head of Personnel", "Chief of Staff", "Head of Internal Affairs",
- "Quartermaster", "Stock Controller", "Cargo Coordinator", "Shipping Overseer",
- "Cargo Technician", "Deliveryperson", "Mail Service", "Exports Handler", "Cargo Trainee", "Crate Pusher",
- "Shaft Miner", "Lavaland Scout", "Prospector", "Junior Miner", "Major Miner"))
-
-
-GLOBAL_LIST_INIT(civilian_positions, list(
- "Bartender", "Barkeep", "Tapster", "Barista", "Mixologist",
- "Botanist", "Ecologist", "Agriculturist", "Botany Greenhorn", "Hydroponicist",
- "Cook", "Chef", "Hash Slinger", "Sous-chef", "Culinary Artist",
- "Janitor", "Custodian", "Sanitation Worker", "Cleaner", "Caretaker",
- "Curator", "Librarian", "Journalist", "Archivist",
- "Lawyer", "Prosecutor", "Defense Attorney", "Paralegal", "Ace Attorney",
- "Chaplain", "Priest", "Preacher", "Cleric",
- "Clown", "Entertainer", "Comedian", "Jester",
- "Mime", "Mute Entertainer", "Silent Jokester", "Pantomimist",
- "Assistant", "Intern", "Apprentice", "Subordinate", "Temporary Worker", "Colleague", "Associate",
- "Clerk", "Salesman", "Gift Shop Attendent", "Retail Worker",
- "Tourist", "Visitor", "Traveler", "Siteseer",
- "Artist", "Composer", "Artisan"
+GLOBAL_LIST_INIT(alt_command_positions, list(
+ "Station Commander", "Facility Overseer",
+ "Chief of Staff", "Head of Internal Affairs",
+ "Security Commander", "Security Chief",
+ "Head of Engineering", "Engineering Director",
+ "Chief Science Officer", "Head of Research",
+ "Medical Director", "Head of Medical"))
+
+GLOBAL_LIST_INIT(alt_engineering_positions, list(
+ "Head of Engineering", "Engineering Director",
+ "Engine Technician", "Solar Engineer", "Project Engineer", "Junior Engineer", "Construction Specialist",
+ "Habitation Technician", "Fire Supression Technician", "Atmospherics Trainee", "Environmental Maintainer",
+ "NTSL Programmer", "Comms Tech", "Station IT Support"
))
-
-GLOBAL_LIST_INIT(security_positions, list(
- "Head of Security", "Security Commander", "Security Chief",
- "Warden", "Security Overseer", "Brig Superintendent", "Security Lt. Commander",
- "Detective", "Investigator", "Forensic Analyst", "Investigative Cadet", "Private Eye", "Inspector",
- "Security Officer", "Security Guard", "Threat Response Officer", "Civilan Protection Officer", "Security Cadet", "Security Staff Sergeant",
+GLOBAL_LIST_INIT(alt_medical_positions, list(
+ "Medical Director", "Head of Medical",
+ "Physician", "Surgeon", "Nurse", "Medical Resident", "Attending Physician", "Chief Surgeon", "Attending Physician", "Chief Surgeon", "Medical Subdirector", "General Practitioner",
+ "DNA Mechanic", "Bioengineer", "Junior Geneticist", "Gene Splicer",
+ "Microbiologist", "Pathologist", "Junior Disease Researcher", "Epidemiologist",
+ "Pharmacist", "Chemical Analyst", "Chemistry Lab Technician", "Chemical Specialist",
+ "EMT", "Paramedic Trainee", "Rapid Response Medic",
+ "Councilor", "Therapist", "Mentalist",
+ "Mining Medical Support", "Lavaland Medical Care Unit", "Junior Mining Medic", "Planetside Health Officer"))
+
+GLOBAL_LIST_INIT(alt_science_positions, list(
+ "Chief Science Officer", "Head of Research",
+ "Researcher", "Toxins Specialist", "Physicist", "Science Intern", "Anomalist", "Quantum Physicist", "Xenobiologist", "Bomb Specialist",
+ "Augmentation Theorist", "Cyborg Maintainer", "Robotics Intern", "Biomechanical Engineer", "Mechatronic Engineer"))
+
+GLOBAL_LIST_INIT(alt_supply_positions, list(
+ "Chief of Staff", "Head of Internal Affairs",
+ "Stock Controller", "Cargo Coordinator", "Shipping Overseer",
+ "Deliveryperson", "Mail Service", "Exports Handler", "Cargo Trainee", "Crate Pusher",
+ "Lavaland Scout", "Prospector", "Junior Miner", "Major Miner"))
+
+GLOBAL_LIST_INIT(alt_civilian_positions, list(
+ "Barkeep", "Tapster", "Barista", "Mixologist",
+ "Ecologist", "Agriculturist", "Botany Greenhorn", "Hydroponicist",
+ "Chef", "Hash Slinger", "Sous-chef", "Culinary Artist",
+ "Custodian", "Sanitation Worker", "Cleaner", "Caretaker",
+ "Librarian", "Journalist", "Archivist",
+ "Prosecutor", "Defense Attorney", "Paralegal", "Ace Attorney",
+ "Priest", "Preacher", "Cleric",
+ "Entertainer", "Comedian", "Jester",
+ "Mute Entertainer", "Silent Jokester", "Pantomimist",
+ "Intern", "Apprentice", "Subordinate", "Temporary Worker", "Colleague", "Associate",
+ "Salesman", "Gift Shop Attendent", "Retail Worker",
+ "Visitor", "Traveler", "Siteseer",
+ "Composer", "Artisan"
))
+GLOBAL_LIST_INIT(alt_security_positions, list(
+ "Security Commander", "Security Chief",
+ "Security Overseer", "Brig Superintendent", "Security Lt. Commander", "Security Dispatcher", "Prison Supervisor",
+ "Investigator", "Forensic Analyst", "Investigative Cadet", "Private Eye", "Inspector",
+ "Security Guard", "Threat Response Officer", "Civilan Protection Officer", "Security Cadet", "Security Staff Sergeant",
+ ))
-GLOBAL_LIST_INIT(nonhuman_positions, list(
- "AI", "Station Central Processor", "Central Silicon Intelligence", "Cyborg Overlord",
- "Cyborg", "Android", "Robot",
+GLOBAL_LIST_INIT(alt_nonhuman_positions, list(
+ "Station Central Processor", "Central Silicon Intelligence", "Station Super Computer",
+ "Android", "Robot",
ROLE_PAI))
+GLOBAL_LIST_INIT(command_positions, original_command_positions | alt_command_positions)
+GLOBAL_LIST_INIT(engineering_positions, original_engineering_positions | alt_engineering_positions)
+GLOBAL_LIST_INIT(medical_positions, original_medical_positions | alt_medical_positions)
+GLOBAL_LIST_INIT(science_positions, original_science_positions | alt_science_positions)
+GLOBAL_LIST_INIT(supply_positions, original_supply_positions | alt_supply_positions)
+GLOBAL_LIST_INIT(security_positions, original_security_positions | alt_security_positions)
+GLOBAL_LIST_INIT(nonhuman_positions, original_nonhuman_positions | alt_nonhuman_positions)
+GLOBAL_LIST_INIT(civilian_positions, original_civilian_positions | alt_civilian_positions)
+
GLOBAL_LIST_INIT(exp_jobsmap, list(
EXP_TYPE_CREW = list("titles" = command_positions | engineering_positions | medical_positions | science_positions | supply_positions | security_positions | civilian_positions | nonhuman_positions), // crew positions
EXP_TYPE_COMMAND = list("titles" = command_positions),
diff --git a/yogstation/code/game/objects/items/cards_ids.dm b/yogstation/code/game/objects/items/cards_ids.dm
index 1bcd88d44b88..24e5b02e1fcc 100644
--- a/yogstation/code/game/objects/items/cards_ids.dm
+++ b/yogstation/code/game/objects/items/cards_ids.dm
@@ -7,7 +7,7 @@
ID_fluff()
/obj/item/card/id/proc/ID_fluff()
- var/job = assignment
+ var/job = originalassignment
var/list/idfluff = list(
"Assistant" = list("civillian","green"),
"Captain" = list("captain","gold"),
From eea1afce5b47509cb923a802ee17f9d2da276e38 Mon Sep 17 00:00:00 2001
From: Jamie D <993128+JamieD1@users.noreply.github.com>
Date: Tue, 17 Aug 2021 01:41:35 +0100
Subject: [PATCH 10/10] Bugfix 2
---
.../modules/jobs/job_types/atmospheric_technician.dm | 2 +-
code/modules/jobs/job_types/warden.dm | 2 +-
code/modules/jobs/jobs.dm | 4 ++--
.../modular_computers/file_system/programs/card.dm | 12 ++++++------
4 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/code/modules/jobs/job_types/atmospheric_technician.dm b/code/modules/jobs/job_types/atmospheric_technician.dm
index 7e9c3d13f628..8c46a483bbcf 100644
--- a/code/modules/jobs/job_types/atmospheric_technician.dm
+++ b/code/modules/jobs/job_types/atmospheric_technician.dm
@@ -10,7 +10,7 @@
selection_color = "#fff5cc"
exp_requirements = 180
exp_type = EXP_TYPE_CREW
- alt_titles = list("Breach Fixer", "Radiation Creator", "Habitation Technician", "Fire Supression Technician", "Atmospherics Trainee", "Environmental Maintainer")
+ alt_titles = list("Breach Fixer", "Radiation Creator", "Habitation Technician", "Fire Suppression Technician", "Atmospherics Trainee", "Environmental Maintainer")
outfit = /datum/outfit/job/atmos
diff --git a/code/modules/jobs/job_types/warden.dm b/code/modules/jobs/job_types/warden.dm
index 2ff370631e9f..301c2549b1bd 100644
--- a/code/modules/jobs/job_types/warden.dm
+++ b/code/modules/jobs/job_types/warden.dm
@@ -16,7 +16,7 @@
outfit = /datum/outfit/job/warden
- alt_titles = list("Security Overseer", "Brig Superintendent", "Security Lt. Commander")
+ alt_titles = list("Brig Watchman", "Brig Superintendent", "Security Lt. Commander", "Security Dispatcher", "Prison Supervisor")
access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_MECH_SECURITY, ACCESS_MAINT_TUNNELS, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_FORENSICS_LOCKERS, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_MECH_SECURITY, ACCESS_COURT, ACCESS_WEAPONS, ACCESS_MINERAL_STOREROOM) // See /datum/job/warden/get_access()
diff --git a/code/modules/jobs/jobs.dm b/code/modules/jobs/jobs.dm
index 355a154ffdb9..9c7f5b4abc03 100644
--- a/code/modules/jobs/jobs.dm
+++ b/code/modules/jobs/jobs.dm
@@ -70,7 +70,7 @@ GLOBAL_LIST_INIT(alt_command_positions, list(
GLOBAL_LIST_INIT(alt_engineering_positions, list(
"Head of Engineering", "Engineering Director",
"Engine Technician", "Solar Engineer", "Project Engineer", "Junior Engineer", "Construction Specialist",
- "Habitation Technician", "Fire Supression Technician", "Atmospherics Trainee", "Environmental Maintainer",
+ "Habitation Technician", "Fire Suppression Technician", "Atmospherics Trainee", "Environmental Maintainer",
"NTSL Programmer", "Comms Tech", "Station IT Support"
))
@@ -113,7 +113,7 @@ GLOBAL_LIST_INIT(alt_civilian_positions, list(
GLOBAL_LIST_INIT(alt_security_positions, list(
"Security Commander", "Security Chief",
- "Security Overseer", "Brig Superintendent", "Security Lt. Commander", "Security Dispatcher", "Prison Supervisor",
+ "Brig Watchman", "Brig Superintendent", "Security Lt. Commander", "Security Dispatcher", "Prison Supervisor",
"Investigator", "Forensic Analyst", "Investigative Cadet", "Private Eye", "Inspector",
"Security Guard", "Threat Response Officer", "Civilan Protection Officer", "Security Cadet", "Security Staff Sergeant",
))
diff --git a/code/modules/modular_computers/file_system/programs/card.dm b/code/modules/modular_computers/file_system/programs/card.dm
index 49f65d2d6535..a31a300e7ad1 100644
--- a/code/modules/modular_computers/file_system/programs/card.dm
+++ b/code/modules/modular_computers/file_system/programs/card.dm
@@ -274,12 +274,12 @@
else if(isnull(departments))
departments = list(
CARDCON_DEPARTMENT_COMMAND = list("Captain"),//lol
- CARDCON_DEPARTMENT_ENGINEERING = GLOB.engineering_positions,
- CARDCON_DEPARTMENT_MEDICAL = GLOB.medical_positions,
- CARDCON_DEPARTMENT_SCIENCE = GLOB.science_positions,
- CARDCON_DEPARTMENT_SECURITY = GLOB.security_positions,
- CARDCON_DEPARTMENT_SUPPLY = GLOB.supply_positions,
- CARDCON_DEPARTMENT_SERVICE = GLOB.civilian_positions
+ CARDCON_DEPARTMENT_ENGINEERING = GLOB.original_engineering_positions,
+ CARDCON_DEPARTMENT_MEDICAL = GLOB.original_medical_positions,
+ CARDCON_DEPARTMENT_SCIENCE = GLOB.original_science_positions,
+ CARDCON_DEPARTMENT_SECURITY = GLOB.original_security_positions,
+ CARDCON_DEPARTMENT_SUPPLY = GLOB.original_supply_positions,
+ CARDCON_DEPARTMENT_SERVICE = GLOB.original_civilian_positions
)
data["jobs"] = list()
for(var/department in departments)