Return of the Trainee Roles (plus additional alt job titles)

This commit is contained in:
Belaya
2025-04-07 16:57:33 -05:00
parent 780bdf08b3
commit 2480a3466e
21 changed files with 428 additions and 44 deletions
+2 -2
View File
@@ -1570,7 +1570,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
popup.open(FALSE)
onclose(user, "capturekeypress", src)
/datum/preferences/proc/SetChoices(mob/user, limit = 17, list/splitJobs = list("Chief Engineer"), widthPerColumn = 295, height = 620)
/datum/preferences/proc/SetChoices(mob/user, limit = 22, list/splitJobs = list("Chief Engineer"), widthPerColumn = 295, height = 620) //GS13 Edit: Expanding out the pref window for new job additions
if(!SSjob)
return
@@ -3025,7 +3025,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
var/new_wl_rate = input(user, "Choose your weight loss rate from 0.1 (10%) to 2 (200%).\n Decimals such as 0.2 indicate 20% rate.\nDefault recommended rate is 0.5 (50%)", "Character Preference", wl_rate) as num|null
if (new_wl_rate)
wl_rate = max(min(round(text2num(new_wl_rate),0.01),2),0)
if("stuckage_chance")
var/new_stuckage_chance = input(user, "Choose your chance to get stuck in doors from 0.1 (10%) to 1 (100%).\nDecimals such as 0.2 indicate 20% chance.\nSetting this to 0 restores default values.", "Character Preference", stuckage_chance) as num|null
if(new_stuckage_chance)
+3 -3
View File
@@ -353,9 +353,9 @@
/proc/get_all_jobs()
return list("Assistant", "Captain", "Head of Personnel", "Bartender", "Cook", "Botanist", "Quartermaster", "Cargo Technician",
"Shaft Miner", "Clown", "Mime", "Janitor", "Curator", "Lawyer", "Chaplain", "Chief Engineer", "Station Engineer",
"Atmospheric Technician", "Chief Medical Officer", "Medical Doctor", "Chemist", "Geneticist", "Virologist", "Paramedic",
"Research Director", "Scientist", "Roboticist", "Head of Security", "Warden", "Detective", "Security Officer", "Prisoner")
"Shaft Miner", "Clown", "Mime", "Janitor", "Curator", "Lawyer", "Chaplain", "Chief Engineer", "Station Engineer", "Engineering Intern",
"Atmospheric Technician", "Chief Medical Officer", "Medical Doctor", "Chemist", "Geneticist", "Virologist", "Paramedic", "Medical Resident",
"Research Director", "Scientist", "Roboticist", "Research Student", "Head of Security", "Warden", "Detective", "Security Officer", "Security Cadet", "Prisoner") //Rookie roles
/proc/get_all_job_icons() //For all existing HUD icons
return get_all_jobs() + list("Prisoner")
+37 -23
View File
@@ -2,7 +2,7 @@
//Engineering
/datum/job/chief_engineer
alt_titles = list("Head Engineer", "Construction Coordinator", "Project Manager", "Power Plant Director")
alt_titles = list("Head Engineer", "Construction Coordinator", "Project Manager", "Power Plant Director", "Engineering Foreman")
/datum/job/engineer
alt_titles = list("Maintenance Technician", "Engine Technician", "Electrician", "Structural Engineer", "Mechanic", "Station Architect", "Nuclear Plant Operator")
@@ -10,27 +10,30 @@
/datum/job/atmos
alt_titles = list("Firefighter", "Life Support Specialist", "Disposals Technician")
/datum/job/junior_engineer
alt_titles = list("Atmospheric Intern", "Apprentice Engineer")
//Service
/datum/job/assistant
alt_titles = list("Civilian", "Morale Officer", "Off-Duty", "Visitor", "Businessman", "Trader", "Entertainer", "Tourist")
alt_titles = list("Civilian", "Morale Officer", "Off-Duty", "Visitor", "Businessman", "Trader", "Entertainer", "Tourist", "Artist", "Businesswoman", "Butler", "Contractor", "Entertainer", "Freelancer", "Fitness Instructor", "Hobbyist", "Performer")
/datum/job/cook
alt_titles = list("Cook", "Culinary Artist", "Butcher", "Chef de partie", "Poissonier", "Baker", "Taste Tester")
/datum/job/hydro
alt_titles = list("Gardener", "Herbalist", "Botanical Researcher", "Hydroponicist", "Farmer", "Beekeeper", "Vintner")
alt_titles = list("Gardener", "Herbalist", "Botanical Researcher", "Hydroponicist", "Apiarist", "Apiculturist", "Farmer", "Beekeeper", "Vintner", "Junior Botanist")
/datum/job/curator
alt_titles = list("Journalist", "Librarian", "Keeper")
alt_titles = list("Journalist", "Librarian", "Keeper", "Historian", "Professor", "Archivist")
/datum/job/chaplain
alt_titles = list("Priest", "Priestess", "Prior", "Monk", "Nun", "Counselor")
alt_titles = list("Priest", "Priestess", "Prior", "Monk", "Nun", "Counselor", "Cleric", "High Priest", "High Priestess", "Imam", "Oracle", "Preacher", "Pastor", "Pontifex", "Guru", "Rabbi", "Reverend", "Shrine Maiden", "Shrine Guardian")
/datum/job/janitor
alt_titles = list("Custodian", "Sanitation Technician", "Maid", "Trash Can", "Disposal Unit")
alt_titles = list("Custodian", "Custodial Technician", "Sanitation Technician", "Maintenance Technician", "Maid", "Trash Can", "Disposal Unit", "Groundskeeper")
/datum/job/lawyer
alt_titles = list("Human Resources Agent", "Internal Affairs Agent", "Attorney")
alt_titles = list("Human Resources Agent", "Internal Affairs Agent", "Attorney", "Defense Attorney", "Legal Clerk", "Public Defender")
/datum/job/clown
alt_titles = list("Jester", "Comedian")
@@ -39,61 +42,72 @@
alt_titles = list("Performer", "Pantomime", "Mimic")
/datum/job/bartender
alt_titles = list("Mixologist", "Sommelier", "Bar Owner", "Barmaid", "Expediter")
alt_titles = list("Mixologist", "Sommelier", "Bar Owner", "Barmaid", "Expediter", "Barista", "Tavernkeeper")
//Science
/datum/job/rd
alt_titles = list("Research Manager", "Science Administrator")
alt_titles = list("Research Manager", "Science Administrator", "Chief Science Officer", "Lead Researcher", "Science Director", "Head of Science")
/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", "Pyrotechnician", "Lab Technician", "Theoretical Physicist")
/datum/job/roboticist
alt_titles = list("Biomechanical Engineer", "Mechatronic Engineer", "Mechanic")
alt_titles = list("Biomechanical Engineer", "Mechatronic Engineer", "Mechanic", "Machinist")
/datum/job/junior_scientist
alt_titles = list("Research Intern", "Apprentice Roboticist", "Research Assistant")
//Medical
/datum/job/cmo
alt_titles = list("Medical Director", "Medical Administrator")
alt_titles = list("Medical Director", "Medical Administrator", "Chief Physician", "Head of Medical", "Head Physician")
/datum/job/doctor
alt_titles = list("Nurse", "Surgeon", "Physician", "Paramedic", "Trophologist", "Nutritionist", "Therapist", "Psychiatrist")
alt_titles = list("Nurse", "Surgeon", "Physician", "Trophologist", "Nutritionist", "Therapist", "Psychiatrist")
/datum/job/chemist
alt_titles = list("Pharmacist", "Pharmacologist")
alt_titles = list("Pharmacist", "Pharmacologist", "Pharmacy Technician")
/datum/job/virologist
alt_titles = list("Microbiologist", "Biochemist", "Pathologist")
alt_titles = list("Microbiologist", "Biochemist", "Pathologist", "Epidemiologist")
/datum/job/geneticist
alt_titles = list("Gene Therapist", "Genetics Researcher")
alt_titles = list("Gene Therapist", "Genetics Researcher", "Mutation Researcher", "Gene Tailor")
/datum/job/paramedic
alt_titles = list ("Emergency Medical Technician", "Search and Rescue Technician", "Trauma Team Responder")
/datum/job/junior_doctor
alt_titles = list("Medical Student", "Fellow", "Trainee Pharmacy Technician", "Trainee Pharmacist", "Junior Pathologist")
//Security
/datum/job/hos
alt_titles = list("Chief of Security", "Security Commander", "Sheriff")
/datum/job/warden
alt_titles = list("Prison Chief", "Armory Manager", "Prison Administrator", "Brig Superintendent")
alt_titles = list("Prison Chief", "Armory Manager", "Prison Administrator", "Brig Superintendent", "Deputy Commissioner of Security")
/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", "Security Constable", "Security Operative", "Guardsman")
/datum/job/detective
alt_titles = list("Forensics Technician", "Private Investigator", "Gumshoe")
/datum/job/junior_officer
alt_titles = list("Security Assistant","Rookie", "Brig Deputy", "Junior Officer")
//Supply
/datum/job/qm
alt_titles = list("Supply Chief")
alt_titles = list("Supply Chief", "Head of Supply", "Logistics Coordinator", "Warehouse Supervisor")
/datum/job/cargo_tech
alt_titles = list("Mail Man", "Mail Woman", "Mailroom Technician", "Deliveries Officer", "Logistics Technician")
alt_titles = list("Mail Man", "Mail Woman", "Mailroom Technician", "Deliveries Officer", "Logistics Technician", "Warehouse 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", "Fauna Hunter", "Explorer", "Digger", "Apprentice Miner") //Just because you're a hunter does not excuse you from rock collecting!!!!!!!!!!!!
//Command
/datum/job/captain
alt_titles = list("Station Director", "Station Commander", "Station Overseer", "Stationmaster", "Commissar")
alt_titles = list("Station Director", "Station Commander", "Station Overseer", "Stationmaster", "Commissar", "Facility Director", "Commanding Officer")
/datum/job/hop
alt_titles = list("Personnel Manager", "Staff Administrator", "Records Administrator")
alt_titles = list("Personnel Manager", "Staff Administrator", "Records Administrator", "Crew Supervisor", "Employment Officer", "Executive Officer")
@@ -0,0 +1,79 @@
/datum/job/junior_engineer
title = "Engineering Intern"
flag = JR_ENGINEER
department_head = list("Chief Engineer")
department_flag = ENGSEC
faction = "Station"
total_positions = 2
spawn_positions = 2
supervisors = "the chief engineer, and any other more experienced engineers"
selection_color = "#ff9b3d"
exp_requirements = 60
exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/engineer/junior
plasma_outfit = /datum/outfit/plasmaman/engineering
access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS,
ACCESS_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_ATMOSPHERICS, ACCESS_TCOMSAT, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS,
ACCESS_EXTERNAL_AIRLOCKS, ACCESS_CONSTRUCTION, ACCESS_TCOMSAT, ACCESS_MINERAL_STOREROOM)
paycheck = PAYCHECK_EASY
paycheck_department = ACCOUNT_ENG
bounty_types = CIV_JOB_ENG
departments = DEPARTMENT_BITFLAG_ENGINEERING
starting_modifiers = list(/datum/skill_modifier/job/level/wiring, /datum/skill_modifier/job/affinity/wiring)
display_order = JOB_DISPLAY_ORDER_STATION_ENGINEER
threat = 1
family_heirlooms = list(
/obj/item/clothing/head/hardhat,
/obj/item/screwdriver/brass/family,
/obj/item/wrench/brass/family,
/obj/item/weldingtool/mini, // No brass family variant
/obj/item/crowbar/brass/family,
/obj/item/wirecutters/brass/family
)
mail_goodies = list(
/obj/item/storage/box/lights/mixed = 20,
/obj/item/lightreplacer = 10,
/obj/item/holosign_creator/engineering = 8,
/obj/item/clothing/head/hardhat/red/upgraded = 1
)
/datum/outfit/job/engineer/junior
name = "Engineering Intern"
jobtype = /datum/job/junior_engineer
belt = /obj/item/storage/belt/utility/full/engi
l_pocket = /obj/item/pda/engineering
ears = /obj/item/radio/headset/headset_eng
uniform = /obj/item/clothing/under/rank/engineering/engineer
shoes = /obj/item/clothing/shoes/workboots
head = /obj/item/clothing/head/hardhat
r_pocket = /obj/item/t_scanner
backpack = /obj/item/storage/backpack/industrial
satchel = /obj/item/storage/backpack/satchel/eng
duffelbag = /obj/item/storage/backpack/duffelbag/engineering
box = /obj/item/storage/box/survival/engineer
pda_slot = ITEM_SLOT_LPOCKET
backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1)
/datum/outfit/job/engineer/gloved
name = "Station Engineer (Gloves)"
gloves = /obj/item/clothing/gloves/color/yellow
/datum/outfit/job/engineer/gloved/rig
name = "Station Engineer (Hardsuit)"
mask = /obj/item/clothing/mask/breath
suit = /obj/item/clothing/suit/space/hardsuit/engine
suit_store = /obj/item/tank/internals/oxygen
head = null
internals_slot = ITEM_SLOT_SUITSTORE
@@ -0,0 +1,52 @@
/datum/job/junior_doctor
title = "Medical Resident"
flag = JR_DOCTOR
department_head = list("Chief Medical Officer")
department_flag = MEDSCI
faction = "Station"
total_positions = 2
spawn_positions = 2
supervisors = "the chief medical officer, and any other senior medical staff"
selection_color = "#74b5e0"
outfit = /datum/outfit/job/doctor/junior
departments = DEPARTMENT_BITFLAG_MEDICAL
plasma_outfit = /datum/outfit/plasmaman/medical
access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CHEMISTRY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_VIROLOGY, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CLONING, ACCESS_MINERAL_STOREROOM)
paycheck = PAYCHECK_EASY
paycheck_department = ACCOUNT_MED
bounty_types = CIV_JOB_MED
display_order = JOB_DISPLAY_ORDER_MEDICAL_DOCTOR
threat = 0.5
starting_modifiers = list(/datum/skill_modifier/job/surgery, /datum/skill_modifier/job/affinity/surgery)
family_heirlooms = list(
/obj/item/storage/firstaid/ancient/heirloom
)
mail_goodies = list(
/obj/effect/spawner/lootdrop/organ_spawner = 5,
// /obj/effect/spawner/lootdrop/memeorgans = 1
)
/datum/outfit/job/doctor/junior
name = "Medical Resident"
jobtype = /datum/job/junior_doctor
belt = /obj/item/pda/medical
ears = /obj/item/radio/headset/headset_med
uniform = /obj/item/clothing/under/rank/medical/doctor
shoes = /obj/item/clothing/shoes/sneakers/white
suit = /obj/item/clothing/suit/toggle/labcoat
l_hand = /obj/item/storage/firstaid/regular
suit_store = /obj/item/flashlight/pen
backpack = /obj/item/storage/backpack/medic
satchel = /obj/item/storage/backpack/satchel/med
duffelbag = /obj/item/storage/backpack/duffelbag/med
chameleon_extras = /obj/item/gun/syringe
@@ -0,0 +1,49 @@
/datum/job/junior_scientist
title = "Research Student"
flag = SCIENTIST
department_head = list("Research Director")
department_flag = MEDSCI
faction = "Station"
total_positions = 2
spawn_positions = 1
supervisors = "the research director, and any other senior science staff"
selection_color = "#9574cd"
exp_requirements = 60
exp_type = EXP_TYPE_CREW
outfit = /datum/outfit/job/scientist/junior
plasma_outfit = /datum/outfit/plasmaman/science
access = list(ACCESS_ROBOTICS, ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_MINERAL_STOREROOM, ACCESS_TECH_STORAGE, ACCESS_GENETICS)
minimal_access = list(ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_MINERAL_STOREROOM)
paycheck = PAYCHECK_EASY
paycheck_department = ACCOUNT_SCI
bounty_types = CIV_JOB_SCI
departments = DEPARTMENT_BITFLAG_SCIENCE
starting_modifiers = list(/datum/skill_modifier/job/level/wiring/basic)
display_order = JOB_DISPLAY_ORDER_SCIENTIST
threat = 1.2
family_heirlooms = list(
/obj/item/toy/plush/slimeplushie
)
mail_goodies = list(
// /obj/item/raw_anomaly_core/random = 10, no free cores for probies
// /obj/item/disk/tech_disk/spaceloot = 2,
/obj/item/camera_bug = 1
)
/datum/outfit/job/scientist/junior
name = "Research Student"
jobtype = /datum/job/junior_scientist
belt = /obj/item/pda/toxins
ears = /obj/item/radio/headset/headset_sci
uniform = /obj/item/clothing/under/rank/rnd/scientist
shoes = /obj/item/clothing/shoes/sneakers/white
suit = /obj/item/clothing/suit/toggle/labcoat/science
backpack = /obj/item/storage/backpack/science
satchel = /obj/item/storage/backpack/satchel/tox
@@ -0,0 +1,178 @@
/datum/job/junior_officer
title = "Security Cadet"
flag = JR_OFFICER
auto_deadmin_role_flags = DEADMIN_POSITION_SECURITY
department_head = list("Head of Security")
department_flag = ENGSEC
faction = "Station"
total_positions = 5 //Handled in /datum/controller/occupations/proc/setup_officer_positions()
spawn_positions = 5 //Handled in /datum/controller/occupations/proc/setup_officer_positions()
supervisors = "the head of security, and the head of your assigned department (if applicable), and any other senior officer"
selection_color = "#c02f2f"
minimal_player_age = 3
exp_requirements = 300
exp_type = EXP_TYPE_CREW
considered_combat_role = TRUE
outfit = /datum/outfit/job/security/junior
plasma_outfit = /datum/outfit/plasmaman/security
access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_COURT, ACCESS_MAINT_TUNNELS, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_FORENSICS_LOCKERS, ACCESS_MINERAL_STOREROOM)
minimal_access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_COURT, ACCESS_WEAPONS, ACCESS_ENTER_GENPOP, ACCESS_LEAVE_GENPOP, ACCESS_MINERAL_STOREROOM) // See /datum/job/officer/get_access()
paycheck = PAYCHECK_MEDIUM
paycheck_department = ACCOUNT_SEC
bounty_types = CIV_JOB_SEC
departments = DEPARTMENT_BITFLAG_SECURITY
mind_traits = list(TRAIT_LAW_ENFORCEMENT_METABOLISM)
display_order = JOB_DISPLAY_ORDER_SECURITY_OFFICER
blacklisted_quirks = list(/datum/quirk/mute, /datum/quirk/brainproblems, /datum/quirk/nonviolent, /datum/quirk/paraplegic, /datum/quirk/blindness, /datum/quirk/monophobia)
threat = 2
family_heirlooms = list(
/obj/item/book/manual/gato_spacelaw
)
mail_goodies = list(
/obj/item/reagent_containers/food/snacks/donut/caramel = 10,
/obj/item/reagent_containers/food/snacks/donut/matcha = 10,
/obj/item/reagent_containers/food/snacks/donut/blumpkin = 5,
// /obj/item/clothing/mask/whistle = 5,
// /obj/item/melee/baton/boomerang/loaded = 1
)
/datum/job/junior_officer/get_access()
var/list/L = list()
L |= ..() | check_config_for_sec_maint()
return L
/datum/job/junior_officer/after_spawn(mob/living/spawned, client/player_client, latejoin = FALSE)
. = ..()
if(!ishuman(spawned))
return
var/mob/living/carbon/human/H = spawned
// Assign department security
var/department
if(player_client?.prefs)
department = player_client.prefs.prefered_security_department
if(!LAZYLEN(GLOB.available_depts) || department == "None")
return
else if(department in GLOB.available_depts)
LAZYREMOVE(GLOB.available_depts, department)
else
department = pick_n_take(GLOB.available_depts)
var/ears = null
var/accessory = null
var/list/dep_access = null
var/destination = null
var/spawn_point = null
switch(department)
if(SEC_DEPT_SUPPLY)
ears = /obj/item/radio/headset/headset_sec/alt/department/supply
dep_access = list(ACCESS_MAILSORTING, ACCESS_MINING, ACCESS_MINING_STATION, ACCESS_CARGO)
destination = /area/security/checkpoint/supply
spawn_point = locate(/obj/effect/landmark/start/depsec/supply) in GLOB.department_security_spawns
accessory = /obj/item/clothing/accessory/armband/cargo
if(SEC_DEPT_ENGINEERING)
ears = /obj/item/radio/headset/headset_sec/alt/department/engi
dep_access = list(ACCESS_CONSTRUCTION, ACCESS_ENGINE, ACCESS_ATMOSPHERICS)
destination = /area/security/checkpoint/engineering
spawn_point = locate(/obj/effect/landmark/start/depsec/engineering) in GLOB.department_security_spawns
accessory = /obj/item/clothing/accessory/armband/engine
if(SEC_DEPT_MEDICAL)
ears = /obj/item/radio/headset/headset_sec/alt/department/med
dep_access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CLONING)
destination = /area/security/checkpoint/medical
spawn_point = locate(/obj/effect/landmark/start/depsec/medical) in GLOB.department_security_spawns
accessory = /obj/item/clothing/accessory/armband/medblue
if(SEC_DEPT_SCIENCE)
ears = /obj/item/radio/headset/headset_sec/alt/department/sci
dep_access = list(ACCESS_RESEARCH, ACCESS_TOX)
destination = /area/security/checkpoint/science
spawn_point = locate(/obj/effect/landmark/start/depsec/science) in GLOB.department_security_spawns
accessory = /obj/item/clothing/accessory/armband/science
if(accessory)
var/obj/item/clothing/under/U = H.w_uniform
U.attach_accessory(new accessory)
if(ears)
if(H.ears)
qdel(H.ears)
H.equip_to_slot_or_del(new ears(H),ITEM_SLOT_EARS)
var/obj/item/card/id/W = H.wear_id
W.access |= dep_access
var/teleport = 0
if(!CONFIG_GET(flag/sec_start_brig))
if(destination || spawn_point)
teleport = 1
if(teleport)
var/turf/T
if(spawn_point)
T = get_turf(spawn_point)
H.Move(T)
else
var/safety = 0
while(safety < 25)
T = safepick(get_area_turfs(destination))
if(T && !H.Move(T))
safety += 1
continue
else
break
if(department)
to_chat(H, "<b>You have been assigned to [department]!</b>")
else
to_chat(H, "<b>You have not been assigned to any department. Patrol the halls and help where needed.</b>")
/datum/outfit/job/security/junior
name = "Security Cadet"
jobtype = /datum/job/junior_officer
belt = /obj/item/pda/security
ears = /obj/item/radio/headset/headset_sec/alt
uniform = /obj/item/clothing/under/rank/security/officer
gloves = /obj/item/clothing/gloves/color/black
head = /obj/item/clothing/head/helmet/sec
suit = /obj/item/clothing/suit/armor/vest/alt
shoes = /obj/item/clothing/shoes/jackboots/sec
l_pocket = /obj/item/restraints/handcuffs
r_pocket = /obj/item/assembly/flash/handheld
suit_store = /obj/item/gun/energy/e_gun/advtaser
backpack_contents = list(/obj/item/melee/baton/loaded=1)
backpack = /obj/item/storage/backpack/security
satchel = /obj/item/storage/backpack/satchel/sec
duffelbag = /obj/item/storage/backpack/duffelbag/sec
box = /obj/item/storage/box/survival/security
implants = list(/obj/item/implant/mindshield)
chameleon_extras = list(/obj/item/gun/energy/disabler, /obj/item/clothing/glasses/hud/security/sunglasses, /obj/item/clothing/head/helmet)
//The helmet is necessary because /obj/item/clothing/head/helmet/sec is overwritten in the chameleon list by the standard helmet, which has the same name and icon state
/obj/item/radio/headset/headset_sec/alt/department/Initialize(mapload)
. = ..()
wires = new/datum/wires/radio(src)
secure_radio_connections = new
recalculateChannels()
/obj/item/radio/headset/headset_sec/alt/department/engi
keyslot = new /obj/item/encryptionkey/headset_sec
keyslot2 = new /obj/item/encryptionkey/headset_eng
/obj/item/radio/headset/headset_sec/alt/department/supply
keyslot = new /obj/item/encryptionkey/headset_sec
keyslot2 = new /obj/item/encryptionkey/headset_cargo
/obj/item/radio/headset/headset_sec/alt/department/med
keyslot = new /obj/item/encryptionkey/headset_sec
keyslot2 = new /obj/item/encryptionkey/headset_med
/obj/item/radio/headset/headset_sec/alt/department/sci
keyslot = new /obj/item/encryptionkey/headset_sec
keyslot2 = new /obj/item/encryptionkey/headset_sci
+10 -6
View File
@@ -6,11 +6,12 @@ GLOBAL_LIST_INIT(command_positions, list(
"Research Director",
"Chief Medical Officer",
"Quartermaster"))
//GS13 edit: Trainee roles
GLOBAL_LIST_INIT(engineering_positions, list(
"Chief Engineer",
"Station Engineer",
"Atmospheric Technician"))
"Atmospheric Technician",
"Engineering Intern"))
GLOBAL_LIST_INIT(medical_positions, list(
@@ -19,13 +20,15 @@ GLOBAL_LIST_INIT(medical_positions, list(
"Geneticist",
"Virologist",
"Paramedic",
"Chemist"))
"Chemist",
"Medical Resident"))
GLOBAL_LIST_INIT(science_positions, list(
"Research Director",
"Scientist",
"Roboticist"))
"Roboticist",
"Research Student"))
GLOBAL_LIST_INIT(supply_positions, list(
"Quartermaster",
@@ -50,8 +53,9 @@ GLOBAL_LIST_INIT(security_positions, list(
"Head of Security",
"Warden",
"Detective",
"Security Officer"))
"Security Officer",
"Security Cadet"))
//End Edits
GLOBAL_LIST_INIT(nonhuman_positions, list(
"AI",