Merge remote-tracking branch 'upstream/master'
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
//This file also determines the order for the choose your occupation chances screen.
|
||||
|
||||
//Engineering
|
||||
/datum/job/chief_engineer
|
||||
alt_titles = list("Head Engineer", "Construction Coordinator", "Project Manager", "Power Plant Director")
|
||||
|
||||
/datum/job/engineer
|
||||
alt_titles = list("Maintenance Technician", "Engine Technician", "Electrician", "Structural Engineer", "Mechanic", "Station Architect", "Nuclear Plant Operator")
|
||||
|
||||
/datum/job/atmos
|
||||
alt_titles = list("Firefighter", "Life Support Specialist", "Disposals Technician")
|
||||
|
||||
//Service
|
||||
/datum/job/assistant
|
||||
alt_titles = list("Civilian", "Morale Officer", "Off-Duty", "Visitor", "Businessman", "Trader", "Entertainer", "Tourist")
|
||||
|
||||
/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")
|
||||
|
||||
/datum/job/curator
|
||||
alt_titles = list("Journalist", "Librarian", "Keeper")
|
||||
|
||||
/datum/job/chaplain
|
||||
alt_titles = list("Priest", "Priestess", "Prior", "Monk", "Nun", "Counselor")
|
||||
|
||||
/datum/job/janitor
|
||||
alt_titles = list("Custodian", "Sanitation Technician", "Maid", "Trash Can", "Disposal Unit")
|
||||
|
||||
/datum/job/lawyer
|
||||
alt_titles = list("Human Resources Agent", "Internal Affairs Agent", "Attorney")
|
||||
|
||||
/datum/job/clown
|
||||
alt_titles = list("Jester", "Comedian")
|
||||
|
||||
/datum/job/mime
|
||||
alt_titles = list("Performer", "Pantomime", "Mimic")
|
||||
|
||||
/datum/job/bartender
|
||||
alt_titles = list("Mixologist", "Sommelier", "Bar Owner", "Barmaid", "Expediter")
|
||||
|
||||
//Science
|
||||
/datum/job/rd
|
||||
alt_titles = list("Research Manager", "Science Administrator")
|
||||
|
||||
/datum/job/scientist
|
||||
alt_titles = list("Circuitry Designer", "Xenobiologist", "Xenobotanist", "Xenoarcheologist", "Chemical Researcher", "Researcher", "Pyrotechnician")
|
||||
|
||||
/datum/job/roboticist
|
||||
alt_titles = list("Biomechanical Engineer", "Mechatronic Engineer", "Mechanic")
|
||||
|
||||
//Medical
|
||||
/datum/job/cmo
|
||||
alt_titles = list("Medical Director", "Medical Administrator")
|
||||
|
||||
/datum/job/doctor
|
||||
alt_titles = list("Nurse", "Surgeon", "Physician", "Paramedic", "Trophologist", "Nutritionist", "Therapist", "Psychiatrist")
|
||||
|
||||
/datum/job/chemist
|
||||
alt_titles = list("Pharmacist", "Pharmacologist")
|
||||
|
||||
/datum/job/virologist
|
||||
alt_titles = list("Microbiologist", "Biochemist", "Pathologist")
|
||||
|
||||
/datum/job/geneticist
|
||||
alt_titles = list("Gene Therapist", "Genetics Researcher")
|
||||
|
||||
//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")
|
||||
|
||||
/datum/job/officer
|
||||
alt_titles = list("Security Agent", "Probation Officer", "Security Peacekeeper", "Security Guard", "Guardsman", "Security Cadet")
|
||||
|
||||
/datum/job/detective
|
||||
alt_titles = list("Forensics Technician", "Private Investigator", "Gumshoe")
|
||||
|
||||
|
||||
//Supply
|
||||
/datum/job/qm
|
||||
alt_titles = list("Supply Chief")
|
||||
|
||||
/datum/job/cargo_tech
|
||||
alt_titles = list("Mail Man", "Mail Woman", "Mailroom Technician", "Deliveries Officer", "Logistics 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!!!!!!!!!!!!
|
||||
|
||||
//Command
|
||||
/datum/job/captain
|
||||
alt_titles = list("Station Director", "Station Commander", "Station Overseer", "Stationmaster", "Commissar")
|
||||
|
||||
/datum/job/hop
|
||||
alt_titles = list("Personnel Manager", "Staff Administrator", "Records Administrator")
|
||||
@@ -63,6 +63,9 @@
|
||||
var/list/mind_traits // Traits added to the mind of the mob assigned this job
|
||||
var/list/blacklisted_quirks //list of quirk typepaths blacklisted.
|
||||
|
||||
/// What alternate titles does this job currently have?
|
||||
var/list/alt_titles = list()
|
||||
|
||||
/// Should this job be allowed to be picked for the bureaucratic error event?
|
||||
var/allow_bureaucratic_error = TRUE
|
||||
|
||||
@@ -211,7 +214,7 @@
|
||||
/datum/job/proc/announce_head(var/mob/living/carbon/human/H, var/channels) //tells the given channel that the given mob is the new department head. See communications.dm for valid channels.
|
||||
if(H && GLOB.announcement_systems.len)
|
||||
//timer because these should come after the captain announcement
|
||||
SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(_addtimer), CALLBACK(pick(GLOB.announcement_systems), TYPE_PROC_REF(/obj/machinery/announcement_system, announce), "NEWHEAD", H.real_name, H.job, channels), 1))
|
||||
SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(_addtimer), CALLBACK(pick(GLOB.announcement_systems), TYPE_PROC_REF(/obj/machinery/announcement_system, announce), "NEWHEAD", H.real_name, H.job, H.client?.prefs.alt_titles_preferences[H.job], channels), 1))
|
||||
|
||||
//If the configuration option is set to require players to be logged as old enough to play certain jobs, then this proc checks that they are, otherwise it just returns 1
|
||||
/datum/job/proc/player_old_enough(client/C)
|
||||
@@ -314,7 +317,11 @@
|
||||
shuffle_inplace(C.access) // Shuffle access list to make NTNet passkeys less predictable
|
||||
C.registered_name = H.real_name
|
||||
C.assignment = J.title
|
||||
C.update_label()
|
||||
if(preference_source && preference_source.prefs && preference_source.prefs.alt_titles_preferences[J.title])
|
||||
C.update_label(C.registered_name, preference_source.prefs.alt_titles_preferences[J.title])
|
||||
else
|
||||
C.update_label()
|
||||
|
||||
for(var/A in SSeconomy.bank_accounts)
|
||||
var/datum/bank_account/B = A
|
||||
if(B.account_id == H.account_id)
|
||||
@@ -326,6 +333,10 @@
|
||||
var/obj/item/pda/PDA = H.get_item_by_slot(pda_slot)
|
||||
if(istype(PDA))
|
||||
PDA.owner = H.real_name
|
||||
if(preference_source && preference_source.prefs && preference_source.prefs.alt_titles_preferences[J.title])
|
||||
PDA.ownjob = preference_source.prefs.alt_titles_preferences[J.title]
|
||||
else
|
||||
PDA.ownjob = J.title
|
||||
PDA.ownjob = J.title
|
||||
PDA.update_label()
|
||||
if(preference_source && !PDA.equipped) //PDA's screen color, font style and look depend on client preferences.
|
||||
|
||||
@@ -50,7 +50,10 @@
|
||||
|
||||
/datum/job/captain/announce(mob/living/carbon/human/H)
|
||||
..()
|
||||
SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(minor_announce), "Captain [H.nameless ? "" : "[H.real_name] "]on deck!"))
|
||||
var/displayed_rank = H.client?.prefs?.alt_titles_preferences[title]
|
||||
if(!displayed_rank) //Default to Captain
|
||||
displayed_rank = "Captain"
|
||||
SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(minor_announce), "[displayed_rank] [H.nameless ? "" : "[H.real_name] "]on deck!"))
|
||||
|
||||
/datum/outfit/job/captain
|
||||
name = "Captain"
|
||||
|
||||
Reference in New Issue
Block a user