Merge pull request #16642 from KillianKirilenko/kk-vrjobs

Jobs _vr files crunch
This commit is contained in:
Heroman3003
2024-11-28 05:30:08 +10:00
committed by GitHub
26 changed files with 1045 additions and 1251 deletions
+115
View File
@@ -57,3 +57,118 @@
title_blurb = "A " + JOB_ALT_RESIDENT + " is an individual who resides on the station, frequently in a different part of the station than what is seen. \
They are considered to be part of the crew for most purposes, but have no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/resident
//////////////////////////////////
// Intern
//////////////////////////////////
/datum/job/intern
title = JOB_INTERN
flag = INTERN
departments = list(DEPARTMENT_CIVILIAN)
department_flag = ENGSEC // Ran out of bits
faction = FACTION_STATION
total_positions = -1
spawn_positions = -1
supervisors = "the staff from the department you're interning in"
selection_color = "#555555"
economic_modifier = 2
access = list() //See /datum/job/intern/get_access()
minimal_access = list() //See /datum/job/intern/get_access()
outfit_type = /decl/hierarchy/outfit/job/assistant/intern
alt_titles = list(JOB_ALT_APPRENTICE_ENGINEER = /datum/alt_title/intern_eng,
JOB_ALT_MEDICAL_INTERN = /datum/alt_title/intern_med,
JOB_ALT_RESEARCH_INTERN = /datum/alt_title/intern_sci,
JOB_ALT_SECURITY_CADET = /datum/alt_title/intern_sec,
JOB_ALT_JR_CARGO_TECH = /datum/alt_title/intern_crg,
JOB_ALT_SERVER = /datum/alt_title/server,
JOB_ALT_ASSISTANT = /datum/alt_title/assistant)
job_description = "An " + JOB_INTERN + " does whatever is requested of them, often doing so in process of learning \
another job. Though they are part of the crew, they have no real authority."
timeoff_factor = 0 // Interns, noh
requestable = FALSE
/datum/alt_title/intern_eng
title = JOB_ALT_APPRENTICE_ENGINEER
title_blurb = "An " + JOB_ALT_APPRENTICE_ENGINEER + " attempts to provide whatever the Engineering department needs. They are not proper Engineers, and are \
often in training to become an Engineer. An " + JOB_ALT_APPRENTICE_ENGINEER + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/engineer
/datum/alt_title/intern_med
title = JOB_ALT_MEDICAL_INTERN
title_blurb = "A " + JOB_ALT_MEDICAL_INTERN + " attempts to provide whatever the Medical department needs. They are not proper Doctors, and are \
often in training to become a Doctor. A " + JOB_ALT_MEDICAL_INTERN + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/medic
/datum/alt_title/intern_sci
title = JOB_ALT_RESEARCH_INTERN
title_blurb = "A " + JOB_ALT_RESEARCH_INTERN + " attempts to provide whatever the Research department needs. They are not proper " + JOB_SCIENTIST + "s, and are \
often in training to become a " + JOB_SCIENTIST + ". A " + JOB_ALT_RESEARCH_INTERN + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/scientist
/datum/alt_title/intern_sec
title = JOB_ALT_SECURITY_CADET
title_blurb = "A " + JOB_ALT_SECURITY_CADET + " attempts to provide whatever the Security department needs. They are not proper Officers, and are \
often in training to become an Officer. A " + JOB_ALT_SECURITY_CADET + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/officer
/datum/alt_title/intern_crg
title = JOB_ALT_JR_CARGO_TECH
title_blurb = "A " + JOB_ALT_JR_CARGO_TECH + " attempts to provide whatever the Cargo department needs. They are not proper Cargo Technicians, and are \
often in training to become a " + JOB_CARGO_TECHNICIAN + ". A " + JOB_ALT_JR_CARGO_TECH + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/cargo
/*
/datum/alt_title/intern_exp
title = "Jr. " + JOB_EXPLORER + ""
title_blurb = "A Jr. " + JOB_EXPLORER + " attempts to provide whatever the Exploration department needs. They are not proper " + JOB_EXPLORER + "s, and are \
often in training to become an " + JOB_EXPLORER + ". A Jr. " + JOB_EXPLORER + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/explorer
*/
/datum/alt_title/server
title = JOB_ALT_SERVER
title_blurb = "A " + JOB_ALT_SERVER + " helps out kitchen and diner staff with various tasks, primarily food delivery. A " + JOB_ALT_SERVER + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/service/server
/datum/alt_title/assistant
title = JOB_ALT_ASSISTANT
title_blurb = "An " + JOB_ALT_ASSISTANT + " helps out wherever they might be needed. They have no authority, but can volunteer to help if help is needed."
title_outfit = /decl/hierarchy/outfit/job/service/server
/datum/job/intern/New()
..()
if(config)
total_positions = CONFIG_GET(number/limit_interns)
spawn_positions = CONFIG_GET(number/limit_interns)
/datum/job/intern/get_access()
if(CONFIG_GET(flag/assistant_maint))
return list(access_maint_tunnels)
else
return list()
//////////////////////////////////
// Visitor
//////////////////////////////////
/datum/job/assistant // Visitor
title = JOB_ALT_VISITOR
supervisors = "nobody! You don't work here"
job_description = "A " + JOB_ALT_VISITOR + " is just there to visit the place. They have no real authority or responsibility."
timeoff_factor = 0
requestable = FALSE
alt_titles = list("Guest" = /datum/alt_title/guest, "Traveler" = /datum/alt_title/traveler)
/datum/job/assistant/New()
..()
if(config)
total_positions = CONFIG_GET(number/limit_visitors)
spawn_positions = CONFIG_GET(number/limit_visitors)
/datum/job/assistant/get_access()
return list()
/datum/alt_title/guest
title = "Guest"
/datum/alt_title/traveler
title = "Traveler"
-115
View File
@@ -1,115 +0,0 @@
//////////////////////////////////
// Intern
//////////////////////////////////
/datum/job/intern
title = JOB_INTERN
flag = INTERN
departments = list(DEPARTMENT_CIVILIAN)
department_flag = ENGSEC // Ran out of bits
faction = FACTION_STATION
total_positions = -1
spawn_positions = -1
supervisors = "the staff from the department you're interning in"
selection_color = "#555555"
economic_modifier = 2
access = list() //See /datum/job/intern/get_access()
minimal_access = list() //See /datum/job/intern/get_access()
outfit_type = /decl/hierarchy/outfit/job/assistant/intern
alt_titles = list(JOB_ALT_APPRENTICE_ENGINEER = /datum/alt_title/intern_eng,
JOB_ALT_MEDICAL_INTERN = /datum/alt_title/intern_med,
JOB_ALT_RESEARCH_INTERN = /datum/alt_title/intern_sci,
JOB_ALT_SECURITY_CADET = /datum/alt_title/intern_sec,
JOB_ALT_JR_CARGO_TECH = /datum/alt_title/intern_crg,
JOB_ALT_SERVER = /datum/alt_title/server,
JOB_ALT_ASSISTANT = /datum/alt_title/assistant)
job_description = "An " + JOB_INTERN + " does whatever is requested of them, often doing so in process of learning \
another job. Though they are part of the crew, they have no real authority."
timeoff_factor = 0 // Interns, noh
requestable = FALSE
/datum/alt_title/intern_eng
title = JOB_ALT_APPRENTICE_ENGINEER
title_blurb = "An " + JOB_ALT_APPRENTICE_ENGINEER + " attempts to provide whatever the Engineering department needs. They are not proper Engineers, and are \
often in training to become an Engineer. An " + JOB_ALT_APPRENTICE_ENGINEER + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/engineer
/datum/alt_title/intern_med
title = JOB_ALT_MEDICAL_INTERN
title_blurb = "A " + JOB_ALT_MEDICAL_INTERN + " attempts to provide whatever the Medical department needs. They are not proper Doctors, and are \
often in training to become a Doctor. A " + JOB_ALT_MEDICAL_INTERN + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/medic
/datum/alt_title/intern_sci
title = JOB_ALT_RESEARCH_INTERN
title_blurb = "A " + JOB_ALT_RESEARCH_INTERN + " attempts to provide whatever the Research department needs. They are not proper " + JOB_SCIENTIST + "s, and are \
often in training to become a " + JOB_SCIENTIST + ". A " + JOB_ALT_RESEARCH_INTERN + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/scientist
/datum/alt_title/intern_sec
title = JOB_ALT_SECURITY_CADET
title_blurb = "A " + JOB_ALT_SECURITY_CADET + " attempts to provide whatever the Security department needs. They are not proper Officers, and are \
often in training to become an Officer. A " + JOB_ALT_SECURITY_CADET + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/officer
/datum/alt_title/intern_crg
title = JOB_ALT_JR_CARGO_TECH
title_blurb = "A " + JOB_ALT_JR_CARGO_TECH + " attempts to provide whatever the Cargo department needs. They are not proper Cargo Technicians, and are \
often in training to become a " + JOB_CARGO_TECHNICIAN + ". A " + JOB_ALT_JR_CARGO_TECH + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/cargo
/*
/datum/alt_title/intern_exp
title = "Jr. " + JOB_EXPLORER + ""
title_blurb = "A Jr. " + JOB_EXPLORER + " attempts to provide whatever the Exploration department needs. They are not proper " + JOB_EXPLORER + "s, and are \
often in training to become an " + JOB_EXPLORER + ". A Jr. " + JOB_EXPLORER + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/assistant/explorer
*/
/datum/alt_title/server
title = JOB_ALT_SERVER
title_blurb = "A " + JOB_ALT_SERVER + " helps out kitchen and diner staff with various tasks, primarily food delivery. A " + JOB_ALT_SERVER + " has no real authority."
title_outfit = /decl/hierarchy/outfit/job/service/server
/datum/alt_title/assistant
title = JOB_ALT_ASSISTANT
title_blurb = "An " + JOB_ALT_ASSISTANT + " helps out wherever they might be needed. They have no authority, but can volunteer to help if help is needed."
title_outfit = /decl/hierarchy/outfit/job/service/server
/datum/job/intern/New()
..()
if(config)
total_positions = CONFIG_GET(number/limit_interns)
spawn_positions = CONFIG_GET(number/limit_interns)
/datum/job/intern/get_access()
if(CONFIG_GET(flag/assistant_maint))
return list(access_maint_tunnels)
else
return list()
//////////////////////////////////
// Visitor
//////////////////////////////////
/datum/job/assistant // Visitor
title = JOB_ALT_VISITOR
supervisors = "nobody! You don't work here"
job_description = "A " + JOB_ALT_VISITOR + " is just there to visit the place. They have no real authority or responsibility."
timeoff_factor = 0
requestable = FALSE
alt_titles = list("Guest" = /datum/alt_title/guest, "Traveler" = /datum/alt_title/traveler)
/datum/job/assistant/New()
..()
if(config)
total_positions = CONFIG_GET(number/limit_visitors)
spawn_positions = CONFIG_GET(number/limit_visitors)
/datum/job/assistant/get_access()
return list()
/datum/alt_title/guest
title = "Guest"
/datum/alt_title/traveler
title = "Traveler"
+63 -14
View File
@@ -28,11 +28,16 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1)
ideal_age_by_species = list(SPECIES_HUMAN_VATBORN = 55) /// Vatborn live shorter, no other race eligible for captain besides human/skrell
banned_job_species = list(SPECIES_UNATHI, SPECIES_TAJ, SPECIES_DIONA, SPECIES_PROMETHEAN, SPECIES_ZADDAT, "mechanical", "digital")
disallow_jobhop = TRUE
pto_type = PTO_CIVILIAN
dept_time_required = 80 //Pending something more complicated
outfit_type = /decl/hierarchy/outfit/job/captain
job_description = "The " + JOB_SITE_MANAGER + " manages the other Command Staff, and through them the rest of the station. Though they have access to everything, \
they do not understand everything, and are expected to delegate tasks to the appropriate crew member. The " + JOB_SITE_MANAGER + " is expected to \
have an understanding of Standard Operating Procedure, and is subject to it, and legal action, in the same way as every other crew member."
alt_titles = list(JOB_ALT_OVERSEER= /datum/alt_title/overseer)
alt_titles = list(JOB_ALT_OVERSEER= /datum/alt_title/overseer, JOB_ALT_FACILITY_DIRECTOR = /datum/alt_title/facility_director, JOB_ALT_CHIEF_SUPERVISOR = /datum/alt_title/chief_supervisor,
JOB_ALT_CAPTAIN = /datum/alt_title/captain)
/*
@@ -45,11 +50,22 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1)
/datum/job/captain/get_access()
return get_all_station_access().Copy()
/datum/job/captain/get_request_reasons()
return list("Training crew", "Assembling expedition team")
// Captain Alt Titles
/datum/alt_title/overseer
title = JOB_ALT_OVERSEER
/datum/alt_title/facility_director
title = JOB_ALT_FACILITY_DIRECTOR
/datum/alt_title/chief_supervisor
title = JOB_ALT_CHIEF_SUPERVISOR
/datum/alt_title/captain
title = JOB_ALT_CAPTAIN
//////////////////////////////////
// Head of Personnel
//////////////////////////////////
@@ -75,29 +91,42 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1)
ideal_age_by_species = list(SPECIES_UNATHI = 140, SPECIES_TESHARI = 27, "mechanical" = 20, SPECIES_HUMAN_VATBORN = 20)
banned_job_species = list(SPECIES_PROMETHEAN, SPECIES_ZADDAT, "digital", SPECIES_DIONA)
disallow_jobhop = TRUE
pto_type = PTO_CIVILIAN
departments = list(DEPARTMENT_COMMAND, DEPARTMENT_CIVILIAN)
departments_managed = list(DEPARTMENT_CIVILIAN, DEPARTMENT_CARGO, DEPARTMENT_PLANET)
dept_time_required = 60
outfit_type = /decl/hierarchy/outfit/job/hop
job_description = "The " + JOB_HEAD_OF_PERSONNEL + " manages the Service department, the Exploration team, and most other civilians. They also \
manage the Supply department, through the " + JOB_QUARTERMASTER + ". In addition, the " + JOB_HEAD_OF_PERSONNEL + " oversees the personal accounts \
of the crew, including their money and access. If necessary, the " + JOB_HEAD_OF_PERSONNEL + " is first in line to assume Acting Command."
alt_titles = list(JOB_ALT_CREW_RESOURCE_OFFICER = /datum/alt_title/cro)
access = list(access_security, access_sec_doors, access_brig, access_forensics_lockers,
access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads,
access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue,
access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer,
access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station,
access_hop, access_RC_announce, access_keycard_auth, access_gateway)
minimal_access = list(access_security, access_sec_doors, access_brig, access_forensics_lockers,
access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads,
access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue,
access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer,
access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station,
access_hop, access_RC_announce, access_keycard_auth, access_gateway)
access = list(access_security, access_sec_doors, access_brig, access_forensics_lockers, access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads, access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue, access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer, access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station, access_hop, access_RC_announce, access_clown, access_tomfoolery, access_mime, access_keycard_auth, access_gateway, access_entertainment)
minimal_access = list(access_security, access_sec_doors, access_brig, access_forensics_lockers,access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads,access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue, access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer,access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station, access_hop, access_RC_announce, access_clown, access_tomfoolery, access_mime, access_keycard_auth, access_gateway, access_entertainment)
alt_titles = list(JOB_ALT_CREW_RESOURCE_OFFICER = /datum/alt_title/cro, JOB_ALT_DEPUTY_MANAGER = /datum/alt_title/deputy_manager, JOB_ALT_STAFF_MANAGER = /datum/alt_title/staff_manager,
JOB_ALT_FACILITY_STEWARD = /datum/alt_title/facility_steward, JOB_ALT_FIRST_MATE = /datum/alt_title/first_mate)
/datum/job/hop/get_request_reasons()
return list("ID modification", "Training crew", "Assembling expedition team")
// HOP Alt Titles
/datum/alt_title/cro
title = JOB_ALT_CREW_RESOURCE_OFFICER
/datum/alt_title/deputy_manager
title = JOB_ALT_DEPUTY_MANAGER
/datum/alt_title/staff_manager
title = JOB_ALT_STAFF_MANAGER
/datum/alt_title/facility_steward
title = JOB_ALT_FACILITY_STEWARD
/datum/alt_title/first_mate
title = JOB_ALT_FIRST_MATE
//////////////////////////////////
// Command Secretary
//////////////////////////////////
@@ -116,9 +145,29 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1)
minimal_player_age = 5
economic_modifier = 7
disallow_jobhop = TRUE
pto_type = PTO_CIVILIAN
alt_titles = list(JOB_ALT_COMMAND_LIAISON = /datum/alt_title/command_liaison, JOB_ALT_COMMAND_ASSISTANT = /datum/alt_title/command_assistant, JOB_ALT_COMMAND_INTERN = /datum/alt_title/command_intern,
JOB_ALT_BRIDGE_SECRETARY = /datum/alt_title/bridge_secretary, JOB_ALT_BRIDGE_ASSISTANT = /datum/alt_title/bridge_assistant)
access = list(access_heads, access_keycard_auth)
minimal_access = list(access_heads, access_keycard_auth)
outfit_type = /decl/hierarchy/outfit/job/secretary
job_description = "A " + JOB_COMMAND_SECRETARY + " handles paperwork duty for the Heads of Staff, so they can better focus on managing their departments. \
They are not Heads of Staff, and have no real authority."
/datum/alt_title/command_liaison
title = JOB_ALT_COMMAND_LIAISON
/datum/alt_title/command_assistant
title = JOB_ALT_COMMAND_ASSISTANT
/datum/alt_title/command_intern
title = JOB_ALT_COMMAND_INTERN
/datum/alt_title/bridge_secretary
title = JOB_ALT_BRIDGE_SECRETARY
/datum/alt_title/bridge_assistant
title = JOB_ALT_BRIDGE_ASSISTANT
-78
View File
@@ -1,78 +0,0 @@
/datum/job/captain
disallow_jobhop = TRUE
pto_type = PTO_CIVILIAN
dept_time_required = 80 //Pending something more complicated
alt_titles = list(JOB_ALT_OVERSEER= /datum/alt_title/overseer, JOB_ALT_FACILITY_DIRECTOR = /datum/alt_title/facility_director, JOB_ALT_CHIEF_SUPERVISOR = /datum/alt_title/chief_supervisor,
JOB_ALT_CAPTAIN = /datum/alt_title/captain)
/datum/alt_title/facility_director
title = JOB_ALT_FACILITY_DIRECTOR
/datum/alt_title/chief_supervisor
title = JOB_ALT_CHIEF_SUPERVISOR
/datum/alt_title/captain
title = JOB_ALT_CAPTAIN
/datum/job/captain/get_request_reasons()
return list("Training crew", "Assembling expedition team")
/datum/job/hop
disallow_jobhop = TRUE
pto_type = PTO_CIVILIAN
departments = list(DEPARTMENT_COMMAND, DEPARTMENT_CIVILIAN)
departments_managed = list(DEPARTMENT_CIVILIAN, DEPARTMENT_CARGO, DEPARTMENT_PLANET)
dept_time_required = 60
alt_titles = list(JOB_ALT_CREW_RESOURCE_OFFICER = /datum/alt_title/cro, JOB_ALT_DEPUTY_MANAGER = /datum/alt_title/deputy_manager, JOB_ALT_STAFF_MANAGER = /datum/alt_title/staff_manager,
JOB_ALT_FACILITY_STEWARD = /datum/alt_title/facility_steward, JOB_ALT_FIRST_MATE = /datum/alt_title/first_mate)
access = list(access_security, access_sec_doors, access_brig, access_forensics_lockers,
access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads,
access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue,
access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer,
access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station,
access_hop, access_RC_announce, access_clown, access_tomfoolery, access_mime, access_keycard_auth, access_gateway, access_entertainment)
minimal_access = list(access_security, access_sec_doors, access_brig, access_forensics_lockers,
access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads,
access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue,
access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer,
access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station,
access_hop, access_RC_announce, access_clown, access_tomfoolery, access_mime, access_keycard_auth, access_gateway, access_entertainment)
/datum/alt_title/deputy_manager
title = JOB_ALT_DEPUTY_MANAGER
/datum/alt_title/staff_manager
title = JOB_ALT_STAFF_MANAGER
/datum/alt_title/facility_steward
title = JOB_ALT_FACILITY_STEWARD
/datum/alt_title/first_mate
title = JOB_ALT_FIRST_MATE
/datum/job/hop/get_request_reasons()
return list("ID modification", "Training crew", "Assembling expedition team")
/datum/job/secretary
disallow_jobhop = TRUE
pto_type = PTO_CIVILIAN
alt_titles = list(JOB_ALT_COMMAND_LIAISON = /datum/alt_title/command_liaison, JOB_ALT_COMMAND_ASSISTANT = /datum/alt_title/command_assistant, JOB_ALT_COMMAND_INTERN = /datum/alt_title/command_intern,
JOB_ALT_BRIDGE_SECRETARY = /datum/alt_title/bridge_secretary, JOB_ALT_BRIDGE_ASSISTANT = /datum/alt_title/bridge_assistant)
/datum/alt_title/command_liaison
title = JOB_ALT_COMMAND_LIAISON
/datum/alt_title/command_assistant
title = JOB_ALT_COMMAND_ASSISTANT
/datum/alt_title/command_intern
title = JOB_ALT_COMMAND_INTERN
/datum/alt_title/bridge_secretary
title = JOB_ALT_BRIDGE_SECRETARY
/datum/alt_title/bridge_assistant
title = JOB_ALT_BRIDGE_ASSISTANT
+122
View File
@@ -0,0 +1,122 @@
//Cargo
//////////////////////////////////
// Quartermaster
//////////////////////////////////
/datum/job/qm
title = JOB_QUARTERMASTER
flag = QUARTERMASTER
departments = list(DEPARTMENT_CARGO)
sorting_order = 1 // QM is above the cargo techs, but below the HoP.
departments_managed = list(DEPARTMENT_CARGO)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 1
spawn_positions = 1
pto_type = PTO_CARGO
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#9b633e"
economic_modifier = 5
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station, access_RC_announce)
minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station, access_RC_announce)
banned_job_species = list("digital", SPECIES_PROMETHEAN)
ideal_character_age = 40
dept_time_required = 20
outfit_type = /decl/hierarchy/outfit/job/cargo/qm
job_description = "The " + JOB_QUARTERMASTER + " manages the Supply department, checking cargo orders and ensuring supplies get to where they are needed."
alt_titles = list(JOB_ALT_SUPPLY_CHIEF = /datum/alt_title/supply_chief, JOB_ALT_LOGISTICS_MANAGER = /datum/alt_title/logistics_manager, JOB_ALT_CARGO_SUPERVISOR = /datum/alt_title/cargo_supervisor)
/datum/job/qm/get_request_reasons()
return list("Training crew")
// Quartermaster Alt Titles
/datum/alt_title/supply_chief
title = JOB_ALT_SUPPLY_CHIEF
/datum/alt_title/logistics_manager
title = JOB_ALT_LOGISTICS_MANAGER
/datum/alt_title/cargo_supervisor
title = JOB_ALT_CARGO_SUPERVISOR
//////////////////////////////////
// Cargo Tech
//////////////////////////////////
/datum/job/cargo_tech
title = JOB_CARGO_TECHNICIAN
flag = CARGOTECH
departments = list(DEPARTMENT_CARGO)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 3
spawn_positions = 3
pto_type = PTO_CARGO
supervisors = "the " + JOB_QUARTERMASTER + " and the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#7a4f33"
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_mining, access_mining_station)
minimal_access = list(access_maint_tunnels, access_cargo, access_cargo_bot, access_mailsorting)
outfit_type = /decl/hierarchy/outfit/job/cargo/cargo_tech
job_description = "A " + JOB_CARGO_TECHNICIAN + " fills and delivers cargo orders. They are encouraged to return delivered crates to the Cargo Shuttle, \
because Central Command gives a partial refund."
alt_titles = list(JOB_ALT_CARGO_LOADER = /datum/alt_title/cargo_loader, JOB_ALT_CARGO_HANDLER = /datum/alt_title/cargo_handler, JOB_ALT_SUPPLY_COURIER = /datum/alt_title/supply_courier,
JOB_ALT_DISPOSALS_SORTER = /datum/alt_title/disposal_sorter)
/datum/alt_title/supply_courier
title = JOB_ALT_SUPPLY_COURIER
title_blurb = "A " + JOB_ALT_SUPPLY_COURIER + " is usually tasked with delivering packages or cargo directly to whoever requires it."
/datum/alt_title/cargo_loader
title = JOB_ALT_CARGO_LOADER
title_blurb = "A " + JOB_ALT_CARGO_LOADER + " is usually tasked with more menial labor within Supply department, such as loading and unloading supply shuttle."
/datum/alt_title/cargo_handler
title = JOB_ALT_CARGO_HANDLER
title_blurb = "A " + JOB_ALT_CARGO_HANDLER + " is usually tasked with more menial labor within Supply department, such as loading and unloading supply shuttle."
/datum/alt_title/disposal_sorter
title = JOB_ALT_DISPOSALS_SORTER
title_blurb = "A " + JOB_ALT_DISPOSALS_SORTER + " is usually tasked with operating disposals delivery system, sorting the trash and tagging parcels for delivery."
//////////////////////////////////
// Shaft Miner
//////////////////////////////////
/datum/job/mining
title = JOB_SHAFT_MINER
flag = MINER
departments = list(DEPARTMENT_CARGO)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 4
spawn_positions = 4
pto_type = PTO_CARGO
supervisors = "the " + JOB_QUARTERMASTER + " and the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#7a4f33"
economic_modifier = 5
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_mining, access_mining_station)
minimal_access = list(access_mining, access_mining_station, access_mailsorting)
outfit_type = /decl/hierarchy/outfit/job/cargo/mining
job_description = "A " + JOB_SHAFT_MINER + " mines and processes minerals to be delivered to departments that need them."
alt_titles = list(JOB_ALT_DEEP_SPACE_MINER = /datum/alt_title/deep_space_miner, JOB_ALT_DRILL_TECHNICIAN = /datum/alt_title/drill_tech, JOB_ALT_PROSPECTOR = /datum/alt_title/prospector,
JOB_ALT_EXCAVATOR = /datum/alt_title/excavator)
/datum/job/mining/get_request_reasons()
return list("Assembling expedition team")
/datum/alt_title/drill_tech
title = JOB_ALT_DRILL_TECHNICIAN
title_blurb = "A " + JOB_ALT_DRILL_TECHNICIAN + " specializes in operating and maintaining the machinery needed to extract ore from veins deep below the surface."
/datum/alt_title/deep_space_miner
title = JOB_ALT_DEEP_SPACE_MINER
title_blurb = "A " + JOB_ALT_DEEP_SPACE_MINER + " specializes primarily in mining operations in zero-g environments, mostly in asteroid and debris fields."
/datum/alt_title/prospector
title = JOB_ALT_PROSPECTOR
/datum/alt_title/excavator
title = JOB_ALT_EXCAVATOR
+315 -87
View File
@@ -12,6 +12,7 @@
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
pto_type = PTO_CIVILIAN
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list(access_hydroponics, access_bar, access_kitchen)
@@ -19,7 +20,7 @@
outfit_type = /decl/hierarchy/outfit/job/service/bartender
job_description = "A " + JOB_BARTENDER + " mixes drinks for the crew. They generally have permission to charge for drinks or deny service to unruly patrons."
alt_titles = list(JOB_ALT_BARISTA = /datum/alt_title/barista)
alt_titles = list(JOB_ALT_BARKEEPR = /datum/alt_title/barkeeper, JOB_ALT_BARMAID = /datum/alt_title/barmaid, JOB_ALT_BARISTA = /datum/alt_title/barista, JOB_ALT_MIXOLOGIST = /datum/alt_title/mixologist)
// Bartender Alt Titles
/datum/alt_title/barista
@@ -28,6 +29,15 @@
or deny service to unruly patrons."
title_outfit = /decl/hierarchy/outfit/job/service/bartender/barista
/datum/alt_title/barkeeper
title = JOB_ALT_BARKEEPR
/datum/alt_title/barmaid
title = JOB_ALT_BARMAID
/datum/alt_title/mixologist
title = JOB_ALT_MIXOLOGIST
//////////////////////////////////
// Chef
//////////////////////////////////
@@ -40,6 +50,7 @@
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
pto_type = PTO_CIVILIAN
supervisors = "the "+ JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list(access_hydroponics, access_bar, access_kitchen)
@@ -47,13 +58,20 @@
outfit_type = /decl/hierarchy/outfit/job/service/chef
job_description = "A " + JOB_CHEF + " cooks food for the crew. They generally have permission to charge for food or deny service to unruly diners."
alt_titles = list(JOB_ALT_COOK = /datum/alt_title/cook)
alt_titles = list(JOB_ALT_SOUSCHEF = /datum/alt_title/souschef, JOB_ALT_COOK = /datum/alt_title/cook, JOB_ALT_KITCHEN_WORKER = /datum/alt_title/kitchen_worker)
// Chef Alt Titles
/datum/alt_title/cook
title = JOB_ALT_COOK
title_blurb = "A " + JOB_ALT_COOK + " has the same duties, though they may be less experienced."
/datum/alt_title/souschef
title = JOB_ALT_SOUSCHEF
/datum/alt_title/kitchen_worker
title = JOB_ALT_KITCHEN_WORKER
title_blurb = "A " + JOB_ALT_KITCHEN_WORKER + " has the same duties, though they may be less experienced."
//////////////////////////////////
// Botanist
//////////////////////////////////
@@ -66,6 +84,7 @@
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
pto_type = PTO_CIVILIAN
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list(access_hydroponics, access_bar, access_kitchen)
@@ -73,89 +92,30 @@
outfit_type = /decl/hierarchy/outfit/job/service/gardener
job_description = "A " + JOB_BOTANIST+ " grows plants for the " + JOB_CHEF + " and " + JOB_BARTENDER + "."
alt_titles = list(JOB_ALT_GARDENER = /datum/alt_title/gardener)
alt_titles = list(JOB_ALT_HYDROPONICIST = /datum/alt_title/hydroponicist, JOB_ALT_CULTIVATOR = /datum/alt_title/cultivator, JOB_ALT_FARMER = /datum/alt_title/farmer,
JOB_ALT_GARDENER = /datum/alt_title/gardener, JOB_ALT_FLORIST = /datum/alt_title/florsit, JOB_ALT_RANCHER = /datum/alt_title/rancher)
//Botanist Alt Titles
/datum/alt_title/gardener
title = JOB_ALT_GARDENER
title_blurb = "A " + JOB_ALT_GARDENER + " may be less professional than their counterparts, and are more likely to tend to the public gardens if they aren't needed elsewhere."
//Cargo
//////////////////////////////////
// Quartermaster
//////////////////////////////////
/datum/job/qm
title = JOB_QUARTERMASTER
flag = QUARTERMASTER
departments = list(DEPARTMENT_CARGO)
sorting_order = 1 // QM is above the cargo techs, but below the HoP.
departments_managed = list(DEPARTMENT_CARGO)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 1
spawn_positions = 1
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#9b633e"
economic_modifier = 5
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station, access_RC_announce)
minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station, access_RC_announce)
banned_job_species = list("digital", SPECIES_PROMETHEAN)
/datum/alt_title/hydroponicist
title = JOB_ALT_HYDROPONICIST
ideal_character_age = 40
/datum/alt_title/cultivator
title = JOB_ALT_CULTIVATOR
outfit_type = /decl/hierarchy/outfit/job/cargo/qm
job_description = "The " + JOB_QUARTERMASTER + " manages the Supply department, checking cargo orders and ensuring supplies get to where they are needed."
alt_titles = list(JOB_ALT_SUPPLY_CHIEF = /datum/alt_title/supply_chief)
/datum/alt_title/farmer
title = JOB_ALT_FARMER
// Quartermaster Alt Titles
/datum/alt_title/supply_chief
title = JOB_ALT_SUPPLY_CHIEF
/datum/alt_title/florsit
title = JOB_ALT_FLORIST
title_blurb = "A " + JOB_ALT_FLORIST + " may be less professional than their counterparts, and are more likely to tend to the public gardens if they aren't needed elsewhere."
//////////////////////////////////
// Cargo Tech
//////////////////////////////////
/datum/job/cargo_tech
title = JOB_CARGO_TECHNICIAN
flag = CARGOTECH
departments = list(DEPARTMENT_CARGO)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
supervisors = "the " + JOB_QUARTERMASTER + " and the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#7a4f33"
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_mining, access_mining_station)
minimal_access = list(access_maint_tunnels, access_cargo, access_cargo_bot, access_mailsorting)
outfit_type = /decl/hierarchy/outfit/job/cargo/cargo_tech
job_description = "A " + JOB_CARGO_TECHNICIAN + " fills and delivers cargo orders. They are encouraged to return delivered crates to the Cargo Shuttle, \
because Central Command gives a partial refund."
//////////////////////////////////
// Shaft Miner
//////////////////////////////////
/datum/job/mining
title = JOB_SHAFT_MINER
flag = MINER
departments = list(DEPARTMENT_CARGO)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 3
spawn_positions = 3
supervisors = "the " + JOB_QUARTERMASTER + " and the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#7a4f33"
economic_modifier = 5
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_mining, access_mining_station)
minimal_access = list(access_mining, access_mining_station, access_mailsorting)
outfit_type = /decl/hierarchy/outfit/job/cargo/mining
job_description = "A " + JOB_SHAFT_MINER + " mines and processes minerals to be delivered to departments that need them."
alt_titles = list(JOB_ALT_DRILL_TECHNICIAN = /datum/alt_title/drill_tech)
/datum/alt_title/drill_tech
title = JOB_ALT_DRILL_TECHNICIAN
title_blurb = "A " + JOB_ALT_DRILL_TECHNICIAN + " specializes in operating and maintaining the machinery needed to extract ore from veins deep below the surface."
/datum/alt_title/rancher
title = JOB_ALT_RANCHER
title_blurb = "A " + JOB_ALT_RANCHER + " is tasked with the care, feeding, raising, and harvesting of livestock."
//Service
//////////////////////////////////
@@ -167,8 +127,9 @@
departments = list(DEPARTMENT_CIVILIAN)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
total_positions = 3
spawn_positions = 3
pto_type = PTO_CIVILIAN
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list(access_janitor, access_maint_tunnels)
@@ -176,12 +137,23 @@
outfit_type = /decl/hierarchy/outfit/job/service/janitor
job_description = "A " + JOB_JANITOR + " keeps the station clean, as long as it doesn't interfere with active crime scenes."
alt_titles = list(JOB_ALT_CUSTODIAN = /datum/alt_title/custodian)
alt_titles = list(JOB_ALT_CUSTODIAN = /datum/alt_title/custodian, JOB_ALT_SANITATION_TECHNICIAN = /datum/alt_title/sanitation_tech,
JOB_ALT_MAID = /datum/alt_title/maid, JOB_ALT_GARBAGE_COLLECTOR = /datum/alt_title/garbage_collector)
// Janitor Alt Titles
/datum/alt_title/custodian
title = JOB_ALT_CUSTODIAN
/datum/alt_title/sanitation_tech
title = JOB_ALT_SANITATION_TECHNICIAN
/datum/alt_title/maid
title = JOB_ALT_MAID
/datum/alt_title/garbage_collector
title = JOB_ALT_GARBAGE_COLLECTOR
title_blurb = "A " + JOB_ALT_GARBAGE_COLLECTOR + " keeps the station clean, though focuses moreso on collecting larger trash, with wet cleaning being secondary task."
//More or less assistants
//////////////////////////////////
// Librarian
@@ -192,8 +164,9 @@
departments = list(DEPARTMENT_CIVILIAN)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 1
spawn_positions = 1
total_positions = 2
spawn_positions = 2
pto_type = PTO_CIVILIAN
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list(access_library, access_maint_tunnels)
@@ -201,7 +174,9 @@
outfit_type = /decl/hierarchy/outfit/job/librarian
job_description = "The " + JOB_LIBRARIAN + " curates the book selection in the Library, so the crew might enjoy it."
alt_titles = list(JOB_ALT_JOURNALIST = /datum/alt_title/journalist, JOB_ALT_WRITER = /datum/alt_title/writer)
alt_titles = list(JOB_ALT_JOURNALIST = /datum/alt_title/journalist, JOB_ALT_REPORTER = /datum/alt_title/reporter, JOB_ALT_WRITER = /datum/alt_title/writer,
JOB_ALT_HISTORIAN = /datum/alt_title/historian, JOB_ALT_ARCHIVIST = /datum/alt_title/archivist, JOB_ALT_PROFESSOR = /datum/alt_title/professor,
JOB_ALT_ACADEMIC = /datum/alt_title/academic, JOB_ALT_PHILOSOPHER = /datum/alt_title/philosopher, JOB_ALT_CURATOR = /datum/alt_title/curator)
// Librarian Alt Titles
/datum/alt_title/journalist
@@ -213,6 +188,34 @@
title = JOB_ALT_WRITER
title_blurb = "The " + JOB_ALT_WRITER + " uses the Library as a quiet place to write whatever it is they choose to write."
/datum/alt_title/reporter
title = JOB_ALT_REPORTER
title_blurb = "The " + JOB_ALT_REPORTER + " uses the Library as a base of operations, from which they can report the news and goings-on on the station with their camera."
/datum/alt_title/historian
title = JOB_ALT_HISTORIAN
title_blurb = "The " + JOB_ALT_HISTORIAN + " uses the Library as a base of operation to record any important events occurring on station."
/datum/alt_title/archivist
title = JOB_ALT_ARCHIVIST
title_blurb = "The " + JOB_ALT_ARCHIVIST + " uses the Library as a base of operation to record any important events occurring on station."
/datum/alt_title/professor
title = JOB_ALT_PROFESSOR
title_blurb = "The " + JOB_ALT_PROFESSOR + " uses the Library as a base of operations to share their vast knowledge with the crew."
/datum/alt_title/academic
title = JOB_ALT_ACADEMIC
title_blurb = "The " + JOB_ALT_ACADEMIC + " uses the Library as a base of operations to share their vast knowledge with the crew."
/datum/alt_title/philosopher
title = JOB_ALT_PHILOSOPHER
title_blurb = "The " + JOB_ALT_PHILOSOPHER + " uses the Library as a base of operation to ruminate on nature of life and other great questions, and share their opinions with the crew."
/datum/alt_title/curator
title = JOB_ALT_CURATOR
title_blurb = "The " + JOB_ALT_CURATOR + " uses the Library as a base of operation to gather the finest of art for display and preservation."
//////////////////////////////////
// Internal Affairs Agent
//////////////////////////////////
@@ -226,6 +229,8 @@
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
pto_type = PTO_CIVILIAN
disallow_jobhop = TRUE
supervisors = "company officials and Corporate Regulations"
selection_color = "#515151"
economic_modifier = 7
@@ -238,10 +243,233 @@
job_description = "An " + JOB_INTERNAL_AFFAIRS_AGENT + " makes sure that the crew is following Standard Operating Procedure. They also \
handle complaints against crew members, and can have issues brought to the attention of Central Command, \
assuming their paperwork is in order."
alt_titles = list(JOB_ALT_INTERNAL_AFFAIRS_LIAISON = /datum/alt_title/ia_liaison, JOB_ALT_INTERNAL_AFFAIRS_DELEGATE = /datum/alt_title/ia_delegate,
JOB_ALT_INTERNAL_AFFAIRS_INVESTIGATOR = /datum/alt_title/ia_investigator)
/*
/datum/job/lawyer/equip(var/mob/living/carbon/human/H)
. = ..()
if(.)
H.implant_loyalty(H)
*/
/datum/alt_title/ia_liaison
title = JOB_ALT_INTERNAL_AFFAIRS_LIAISON
/datum/alt_title/ia_delegate
title = JOB_ALT_INTERNAL_AFFAIRS_DELEGATE
/datum/alt_title/ia_investigator
title = JOB_ALT_INTERNAL_AFFAIRS_INVESTIGATOR
//////////////////////////////////
// Pilot
//////////////////////////////////
/datum/job/pilot
title = JOB_PILOT
flag = PILOT
departments = list(DEPARTMENT_CIVILIAN)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
economic_modifier = 5
minimal_player_age = 3
pto_type = PTO_CIVILIAN
access = list(access_eva, access_maint_tunnels, access_external_airlocks, access_pilot)
minimal_access = list(access_eva, access_maint_tunnels, access_external_airlocks, access_pilot)
outfit_type = /decl/hierarchy/outfit/job/pilot
job_description = "A " + JOB_PILOT + " flies the various shuttles in the Virgo-Erigone System."
alt_titles = list(JOB_ALT_COPILOT = /datum/alt_title/co_pilot, JOB_ALT_NAVIGATOR = /datum/alt_title/navigator, JOB_ALT_HELMSMAN = /datum/alt_title/helmsman)
/datum/alt_title/co_pilot
title = JOB_ALT_COPILOT
title_blurb = "A Co-" + JOB_ALT_COPILOT + " is there primarily to assist main pilot as well as learn from them"
/datum/alt_title/navigator
title = JOB_ALT_NAVIGATOR
/datum/alt_title/helmsman
title = JOB_ALT_HELMSMAN
/datum/job/pilot/get_request_reasons()
return list("Assembling expedition team")
//////////////////////////////////
// Entertainer
//////////////////////////////////
/datum/job/entertainer
title = JOB_ENTERTAINER
flag = ENTERTAINER
departments = list(DEPARTMENT_CIVILIAN)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 4
spawn_positions = 4
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list(access_entertainment)
minimal_access = list(access_entertainment)
pto_type = PTO_CIVILIAN
outfit_type = /decl/hierarchy/outfit/job/assistant/entertainer
job_description = "An " + JOB_ENTERTAINER + " does just that, entertains! Put on plays, play music, sing songs, tell stories, or read your favorite fanfic."
alt_titles = list(JOB_ALT_PERFORMER = /datum/alt_title/performer, JOB_ALT_MUSICIAN = /datum/alt_title/musician, JOB_ALT_STAGEHAND = /datum/alt_title/stagehand,
JOB_ALT_ACTOR = /datum/alt_title/actor, JOB_ALT_DANCER = /datum/alt_title/dancer, JOB_ALT_SINGER = /datum/alt_title/singer,
JOB_ALT_MAGICIAN = /datum/alt_title/magician, JOB_ALT_COMEDIAN = /datum/alt_title/comedian, JOB_ALT_ARTIST = /datum/alt_title/tragedian,
JOB_ALT_ARTIST = /datum/alt_title/artist, JOB_ALT_GAME_MASTER = /datum/alt_title/game_master)
// Entertainer Alt Titles
/datum/alt_title/actor
title = JOB_ALT_ACTOR
title_blurb = "An " + JOB_ALT_ACTOR + " is someone who acts out a role! Whatever sort of character it is, get into it and impress people with power of comedy and tragedy!"
/datum/alt_title/performer
title = JOB_ALT_PERFORMER
title_blurb = "A " + JOB_ALT_PERFORMER + " is someone who performs! Whatever sort of performance will come to your mind, the world's a stage!"
/datum/alt_title/musician
title = JOB_ALT_MUSICIAN
title_blurb = "A " + JOB_ALT_MUSICIAN + " is someone who makes music with a wide variety of musical instruments!"
/datum/alt_title/stagehand
title = JOB_ALT_STAGEHAND
title_blurb = "A " + JOB_ALT_STAGEHAND + " typically performs everything the rest of the entertainers don't. Operate lights, shutters, windows, or narrate through your voicebox!"
/datum/alt_title/dancer
title = JOB_ALT_DANCER
title_blurb = "A " + JOB_ALT_DANCER + " is someone who impresses people through power of their own body! From waltz to breakdance, as long as crowd as cheering!"
/datum/alt_title/singer
title = JOB_ALT_SINGER
title_blurb = "A " + JOB_ALT_SINGER + " is someone with gift of melodious voice! Impress people with your vocal range!"
/datum/alt_title/magician
title = JOB_ALT_MAGICIAN
title_blurb = "A " + JOB_ALT_MAGICIAN + " is someone who awes those around them with impossible! Show off your repertoire of magic tricks, while keeping the secret hidden!"
/datum/alt_title/comedian
title = JOB_ALT_COMEDIAN
title_blurb = "A " + JOB_ALT_COMEDIAN + " will focus on making people laugh with the power of wit! Telling jokes, stand-up comedy, you are here to make others smile!"
/datum/alt_title/tragedian
title = JOB_ALT_ARTIST
title_blurb = "A " + JOB_ALT_ARTIST + " will focus on making people think about life and world around them! Life is a tragedy, and who's better to convey its emotions than you?"
/datum/alt_title/artist
title = JOB_ALT_ARTIST
title_blurb = "An " + JOB_ALT_ARTIST + "'s calling is to create beautiful arts! Whatever form may they take, create and have people astonished with your creativity."
/datum/alt_title/game_master
title = JOB_ALT_GAME_MASTER
title_blurb = "A " + JOB_ALT_GAME_MASTER + " provides recreation for the crew by hosting variety of games. From cards to roleplaying to something more personalized."
//////////////////////////////////
// Entrepreneur
//////////////////////////////////
/datum/job/entrepreneur
title = JOB_ENTREPRENEUR
flag = ENTREPRENEUR
departments = list(DEPARTMENT_CIVILIAN)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 4
spawn_positions = 4
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list()
minimal_access = list()
pto_type = PTO_CIVILIAN
outfit_type = /decl/hierarchy/outfit/job/assistant/entrepreneur
job_description = "An " + JOB_ENTREPRENEUR + " is basically a visitor that obtained special permission to offer personal services to people on station. \
They will offer people these services and, potentially, even demand payment!"
alt_titles = list(JOB_ALT_LAWYER = /datum/alt_title/lawyer, JOB_ALT_PRIVATE_EYE = /datum/alt_title/private_eye, JOB_ALT_BODYGUARD = /datum/alt_title/bodyguard,
JOB_ALT_PERSONAL_PHYSICIAN = /datum/alt_title/personal_physician, JOB_ALT_DENTIST = /datum/alt_title/dentist, JOB_ALT_FITNESS_INSTRUCTOR = /datum/alt_title/fitness_instructor,
JOB_ALT_YOGA_TEACHER = /datum/alt_title/yoga_teacher, JOB_ALT_MASSEUSE = /datum/alt_title/masseuse, JOB_ALT_TRADESPERSON = /datum/alt_title/tradesperson,
JOB_ALT_STREAMER = /datum/alt_title/streamer, JOB_ALT_INFLUENCER = /datum/alt_title/influencer, JOB_ALT_PARANORMAL_INVESTIGATOR = /datum/alt_title/paranormal_investigator,
JOB_ALT_PERSONAL_SECRETARY = /datum/alt_title/personal_secretary, JOB_ALT_STYLIST = /datum/alt_title/stylist, JOB_ALT_FISHER = /datum/alt_title/fisher,
JOB_ALT_FORTUNE_TELLER = /datum/alt_title/fortune_teller, JOB_ALT_SPIRIT_HEALER = /datum/alt_title/spirit_healer)
/datum/alt_title/lawyer
title = JOB_ALT_LAWYER
title_blurb = "A " + JOB_ALT_LAWYER + " is knowledgable in various legal systems, including station's operations. They can try to offer their legal counsel, although nobody is really obliged to listen."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/personal_secretary
/datum/alt_title/private_eye
title = JOB_ALT_PRIVATE_EYE
title_blurb = "A " + JOB_ALT_PRIVATE_EYE + " is a detective that has no credentials or equipment. But if someone wants something found without security's knowledge, they are the one to go to."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/private_eye
/datum/alt_title/bodyguard
title = JOB_ALT_BODYGUARD
title_blurb = "A " + JOB_ALT_BODYGUARD + " offers service of personal protection. They may not be allowed any weapons, but their own body is weapon enough."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/bodyguard
/datum/alt_title/personal_physician
title = JOB_ALT_PERSONAL_PHYSICIAN
title_blurb = "A " + JOB_ALT_PERSONAL_PHYSICIAN + " is a doctor dedicated less to Hippocratic Oath and more to the moneymaking grind. Their license may be expired, but the grindset never will be."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/personal_physician
/datum/alt_title/dentist
title = JOB_ALT_DENTIST
title_blurb = "A " + JOB_ALT_DENTIST + " is a doctor that specializes in oral care. Company may not recognize them as a proper doctor, but surely their customers will."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/dentist
/datum/alt_title/fitness_instructor
title = JOB_ALT_FITNESS_INSTRUCTOR
title_blurb = "A " + JOB_ALT_FITNESS_INSTRUCTOR + " dedicates themselves to improving the health of the crew through physical activity, and boy, do they need the help."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/fitness_instructor
/datum/alt_title/yoga_teacher
title = JOB_ALT_YOGA_TEACHER
title_blurb = "A " + JOB_ALT_YOGA_TEACHER + " is similar to a fitness instructor, but rather than turning the round bodies into firm ones, they focus on helping people find balance and harmony."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/yoga_teacher
/datum/alt_title/masseuse
title = JOB_ALT_MASSEUSE
title_blurb = "A " + JOB_ALT_MASSEUSE + " is master of physical therapy and working others' bodies with their hands."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/masseuse
/datum/alt_title/tradesperson
title = JOB_ALT_TRADESPERSON
title_blurb = "A " + JOB_ALT_TRADESPERSON + " is someone attempting to make money via the most obvious act of all - buying and selling. Now if only customs allowed you to bring your goods along..."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/tradesperson
/datum/alt_title/streamer
title = JOB_ALT_STREAMER
title_blurb = "A " + JOB_ALT_STREAMER + " is here to entertain. Not the crew! Their audience across exonet!"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/streamer
/datum/alt_title/influencer
title = JOB_ALT_INFLUENCER
title_blurb = "An " + JOB_ALT_INFLUENCER + " has lucked out with some exonet following, and was given permission to go onstation to provide free exposure. Don't let it go to your head."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/influencer
/datum/alt_title/paranormal_investigator
title = JOB_ALT_PARANORMAL_INVESTIGATOR
title_blurb = "A " + JOB_ALT_PARANORMAL_INVESTIGATOR + " looks beyond what is accepted by modern science, and searches for the true unknown. Aliens, alternate dimensions, ghosts... The truth is out there!"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/paranormal_investigator
/datum/alt_title/personal_secretary
title = JOB_ALT_PERSONAL_SECRETARY
title_blurb = "A " + JOB_ALT_PERSONAL_SECRETARY + " offers services of general assistance. Although it's doubtful anyone will ever actually need those."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/personal_secretary
/datum/alt_title/stylist
title = JOB_ALT_STYLIST
title_blurb = "A " + JOB_ALT_STYLIST + " offers fashion advice, as well as helps with adjusting appearance of the crew to better suit their beauty standards."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/stylist
/datum/alt_title/fisher
title = JOB_ALT_FISHER
title_blurb = "A " + JOB_ALT_FISHER + " is a capable angler, who is good at obtaining large amounts of marine goods. Whether you generously give them to station or attempt to make a quick thaler by selling, it's up to you!"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/fisher
/datum/alt_title/fortune_teller
title = JOB_ALT_FORTUNE_TELLER
title_blurb = "A " + JOB_ALT_FORTUNE_TELLER + " peers into the future, and offers these visions to others. Occasionally those visions may even come true!"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/fortune_teller
/datum/alt_title/spirit_healer
title = JOB_ALT_SPIRIT_HEALER
title_blurb = "A " + JOB_ALT_SPIRIT_HEALER + " offers alternative forms of medicine. Rituals, magic rocks, seances... It totally works. What's that about placebo?"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/spirit_healer
+23 -1
View File
@@ -7,6 +7,7 @@
faction = FACTION_STATION
total_positions = 1
spawn_positions = 1
pto_type = PTO_CIVILIAN
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list(access_morgue, access_chapel_office, access_crematorium, access_maint_tunnels)
@@ -14,13 +15,34 @@
outfit_type = /decl/hierarchy/outfit/job/chaplain
job_description = "The " + JOB_CHAPLAIN + " ministers to the spiritual needs of the crew."
alt_titles = list(JOB_ALT_COUNSELOR = /datum/alt_title/counselor)
alt_titles = list(JOB_ALT_MISSIONARY = /datum/alt_title/missionary, JOB_ALT_PREACHER = /datum/alt_title/preacher, JOB_ALT_PRIEST = /datum/alt_title/priest,
JOB_ALT_NUN = /datum/alt_title/nun, JOB_ALT_MONK = /datum/alt_title/monk, JOB_ALT_COUNSELOR = /datum/alt_title/counselor,
JOB_ALT_GURU = /datum/alt_title/guru)
// Chaplain Alt Titles
/datum/alt_title/counselor
title = JOB_ALT_COUNSELOR
title_blurb = "The " + JOB_ALT_COUNSELOR + " attends to the emotional needs of the crew, without a specific medicinal or spiritual focus."
/datum/alt_title/guru
title = JOB_ALT_GURU
title_blurb = "The " + JOB_ALT_GURU + " primarily tries to offer spiritual guidance to those who come seeking it."
/datum/alt_title/missionary
title = JOB_ALT_MISSIONARY
/datum/alt_title/preacher
title = JOB_ALT_PREACHER
/datum/alt_title/priest
title = JOB_ALT_PRIEST
/datum/alt_title/nun
title = JOB_ALT_NUN
/datum/alt_title/monk
title = JOB_ALT_MONK
/datum/job/chaplain/equip(var/mob/living/carbon/human/H, var/alt_title, var/ask_questions = TRUE)
. = ..()
if(!.)
-426
View File
@@ -1,426 +0,0 @@
/datum/job/bartender
pto_type = PTO_CIVILIAN
alt_titles = list(JOB_ALT_BARKEEPR = /datum/alt_title/barkeeper, JOB_ALT_BARMAID = /datum/alt_title/barmaid, JOB_ALT_BARISTA = /datum/alt_title/barista, JOB_ALT_MIXOLOGIST = /datum/alt_title/mixologist)
/datum/alt_title/barkeeper
title = JOB_ALT_BARKEEPR
/datum/alt_title/barmaid
title = JOB_ALT_BARMAID
/datum/alt_title/mixologist
title = JOB_ALT_MIXOLOGIST
/datum/job/chef
total_positions = 2 //IT TAKES A LOT TO MAKE A STEW
spawn_positions = 2 //A PINCH OF SALT AND LAUGHTER, TOO
pto_type = PTO_CIVILIAN
alt_titles = list(JOB_ALT_SOUSCHEF = /datum/alt_title/souschef, JOB_ALT_COOK = /datum/alt_title/cook, JOB_ALT_KITCHEN_WORKER = /datum/alt_title/kitchen_worker)
/datum/alt_title/souschef
title = JOB_ALT_SOUSCHEF
/datum/alt_title/kitchen_worker
title = JOB_ALT_KITCHEN_WORKER
title_blurb = "A " + JOB_ALT_KITCHEN_WORKER + " has the same duties, though they may be less experienced."
/datum/job/hydro
spawn_positions = 2
pto_type = PTO_CIVILIAN
alt_titles = list(JOB_ALT_HYDROPONICIST = /datum/alt_title/hydroponicist, JOB_ALT_CULTIVATOR = /datum/alt_title/cultivator, JOB_ALT_FARMER = /datum/alt_title/farmer,
JOB_ALT_GARDENER = /datum/alt_title/gardener, JOB_ALT_FLORIST = /datum/alt_title/florsit, JOB_ALT_RANCHER = /datum/alt_title/rancher)
/datum/alt_title/hydroponicist
title = JOB_ALT_HYDROPONICIST
/datum/alt_title/cultivator
title = JOB_ALT_CULTIVATOR
/datum/alt_title/farmer
title = JOB_ALT_FARMER
/datum/alt_title/florsit
title = JOB_ALT_FLORIST
title_blurb = "A " + JOB_ALT_FLORIST + " may be less professional than their counterparts, and are more likely to tend to the public gardens if they aren't needed elsewhere."
/datum/alt_title/rancher
title = JOB_ALT_RANCHER
title_blurb = "A " + JOB_ALT_RANCHER + " is tasked with the care, feeding, raising, and harvesting of livestock."
/datum/job/qm
pto_type = PTO_CARGO
dept_time_required = 20
alt_titles = list(JOB_ALT_SUPPLY_CHIEF = /datum/alt_title/supply_chief, JOB_ALT_LOGISTICS_MANAGER = /datum/alt_title/logistics_manager, JOB_ALT_CARGO_SUPERVISOR = /datum/alt_title/cargo_supervisor)
/datum/alt_title/logistics_manager
title = JOB_ALT_LOGISTICS_MANAGER
/datum/alt_title/cargo_supervisor
title = JOB_ALT_CARGO_SUPERVISOR
/datum/job/qm/get_request_reasons()
return list("Training crew")
/datum/job/cargo_tech
total_positions = 3
spawn_positions = 3
pto_type = PTO_CARGO
alt_titles = list(JOB_ALT_CARGO_LOADER = /datum/alt_title/cargo_loader, JOB_ALT_CARGO_HANDLER = /datum/alt_title/cargo_handler, JOB_ALT_SUPPLY_COURIER = /datum/alt_title/supply_courier,
JOB_ALT_DISPOSALS_SORTER = /datum/alt_title/disposal_sorter)
/datum/alt_title/supply_courier
title = JOB_ALT_SUPPLY_COURIER
title_blurb = "A " + JOB_ALT_SUPPLY_COURIER + " is usually tasked with delivering packages or cargo directly to whoever requires it."
/datum/alt_title/cargo_loader
title = JOB_ALT_CARGO_LOADER
title_blurb = "A " + JOB_ALT_CARGO_LOADER + " is usually tasked with more menial labor within Supply department, such as loading and unloading supply shuttle."
/datum/alt_title/cargo_handler
title = JOB_ALT_CARGO_HANDLER
title_blurb = "A " + JOB_ALT_CARGO_HANDLER + " is usually tasked with more menial labor within Supply department, such as loading and unloading supply shuttle."
/datum/alt_title/disposal_sorter
title = JOB_ALT_DISPOSALS_SORTER
title_blurb = "A " + JOB_ALT_DISPOSALS_SORTER + " is usually tasked with operating disposals delivery system, sorting the trash and tagging parcels for delivery."
/datum/job/mining
total_positions = 4
spawn_positions = 4
pto_type = PTO_CARGO
alt_titles = list(JOB_ALT_DEEP_SPACE_MINER = /datum/alt_title/deep_space_miner, JOB_ALT_DRILL_TECHNICIAN = /datum/alt_title/drill_tech, JOB_ALT_PROSPECTOR = /datum/alt_title/prospector,
JOB_ALT_EXCAVATOR = /datum/alt_title/excavator)
/datum/alt_title/deep_space_miner
title = JOB_ALT_DEEP_SPACE_MINER
title_blurb = "A " + JOB_ALT_DEEP_SPACE_MINER + " specializes primarily in mining operations in zero-g environments, mostly in asteroid and debris fields."
/datum/alt_title/prospector
title = JOB_ALT_PROSPECTOR
/datum/alt_title/excavator
title = JOB_ALT_EXCAVATOR
/datum/job/mining/get_request_reasons()
return list("Assembling expedition team")
/datum/job/janitor //Lots of janitor substations on station.
total_positions = 3
spawn_positions = 3
pto_type = PTO_CIVILIAN
alt_titles = list(JOB_ALT_CUSTODIAN = /datum/alt_title/custodian, JOB_ALT_SANITATION_TECHNICIAN = /datum/alt_title/sanitation_tech,
JOB_ALT_MAID = /datum/alt_title/maid, JOB_ALT_GARBAGE_COLLECTOR = /datum/alt_title/garbage_collector)
/datum/alt_title/sanitation_tech
title = JOB_ALT_SANITATION_TECHNICIAN
/datum/alt_title/maid
title = JOB_ALT_MAID
/datum/alt_title/garbage_collector
title = JOB_ALT_GARBAGE_COLLECTOR
title_blurb = "A " + JOB_ALT_GARBAGE_COLLECTOR + " keeps the station clean, though focuses moreso on collecting larger trash, with wet cleaning being secondary task."
/datum/job/librarian
total_positions = 2
spawn_positions = 2
alt_titles = list(JOB_ALT_JOURNALIST = /datum/alt_title/journalist, JOB_ALT_REPORTER = /datum/alt_title/reporter, JOB_ALT_WRITER = /datum/alt_title/writer,
JOB_ALT_HISTORIAN = /datum/alt_title/historian, JOB_ALT_ARCHIVIST = /datum/alt_title/archivist, JOB_ALT_PROFESSOR = /datum/alt_title/professor,
JOB_ALT_ACADEMIC = /datum/alt_title/academic, JOB_ALT_PHILOSOPHER = /datum/alt_title/philosopher, JOB_ALT_CURATOR = /datum/alt_title/curator)
pto_type = PTO_CIVILIAN
/datum/alt_title/reporter
title = JOB_ALT_REPORTER
title_blurb = "The " + JOB_ALT_REPORTER + " uses the Library as a base of operations, from which they can report the news and goings-on on the station with their camera."
/datum/alt_title/historian
title = JOB_ALT_HISTORIAN
title_blurb = "The " + JOB_ALT_HISTORIAN + " uses the Library as a base of operation to record any important events occurring on station."
/datum/alt_title/archivist
title = JOB_ALT_ARCHIVIST
title_blurb = "The " + JOB_ALT_ARCHIVIST + " uses the Library as a base of operation to record any important events occurring on station."
/datum/alt_title/professor
title = JOB_ALT_PROFESSOR
title_blurb = "The " + JOB_ALT_PROFESSOR + " uses the Library as a base of operations to share their vast knowledge with the crew."
/datum/alt_title/academic
title = JOB_ALT_ACADEMIC
title_blurb = "The " + JOB_ALT_ACADEMIC + " uses the Library as a base of operations to share their vast knowledge with the crew."
/datum/alt_title/philosopher
title = JOB_ALT_PHILOSOPHER
title_blurb = "The " + JOB_ALT_PHILOSOPHER + " uses the Library as a base of operation to ruminate on nature of life and other great questions, and share their opinions with the crew."
/datum/alt_title/curator
title = JOB_ALT_CURATOR
title_blurb = "The " + JOB_ALT_CURATOR + " uses the Library as a base of operation to gather the finest of art for display and preservation."
/datum/job/lawyer
disallow_jobhop = TRUE
pto_type = PTO_CIVILIAN
alt_titles = list(JOB_ALT_INTERNAL_AFFAIRS_LIAISON = /datum/alt_title/ia_liaison, JOB_ALT_INTERNAL_AFFAIRS_DELEGATE = /datum/alt_title/ia_delegate,
JOB_ALT_INTERNAL_AFFAIRS_INVESTIGATOR = /datum/alt_title/ia_investigator)
/datum/alt_title/ia_liaison
title = JOB_ALT_INTERNAL_AFFAIRS_LIAISON
/datum/alt_title/ia_delegate
title = JOB_ALT_INTERNAL_AFFAIRS_DELEGATE
/datum/alt_title/ia_investigator
title = JOB_ALT_INTERNAL_AFFAIRS_INVESTIGATOR
/datum/job/chaplain
pto_type = PTO_CIVILIAN
alt_titles = list(JOB_ALT_MISSIONARY = /datum/alt_title/missionary, JOB_ALT_PREACHER = /datum/alt_title/preacher, JOB_ALT_PRIEST = /datum/alt_title/priest,
JOB_ALT_NUN = /datum/alt_title/nun, JOB_ALT_MONK = /datum/alt_title/monk, JOB_ALT_COUNSELOR = /datum/alt_title/counselor,
JOB_ALT_GURU = /datum/alt_title/guru)
/datum/alt_title/guru
title = JOB_ALT_GURU
title_blurb = "The " + JOB_ALT_GURU + " primarily tries to offer spiritual guidance to those who come seeking it."
/datum/alt_title/missionary
title = JOB_ALT_MISSIONARY
/datum/alt_title/preacher
title = JOB_ALT_PREACHER
/datum/alt_title/priest
title = JOB_ALT_PRIEST
/datum/alt_title/nun
title = JOB_ALT_NUN
/datum/alt_title/monk
title = JOB_ALT_MONK
//////////////////////////////////
// Pilot
//////////////////////////////////
/datum/job/pilot
title = JOB_PILOT
flag = PILOT
departments = list(DEPARTMENT_CIVILIAN)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
economic_modifier = 5
minimal_player_age = 3
pto_type = PTO_CIVILIAN
access = list(access_eva, access_maint_tunnels, access_external_airlocks, access_pilot)
minimal_access = list(access_eva, access_maint_tunnels, access_external_airlocks, access_pilot)
outfit_type = /decl/hierarchy/outfit/job/pilot
job_description = "A " + JOB_PILOT + " flies the various shuttles in the Virgo-Erigone System."
alt_titles = list(JOB_ALT_COPILOT = /datum/alt_title/co_pilot, JOB_ALT_NAVIGATOR = /datum/alt_title/navigator, JOB_ALT_HELMSMAN = /datum/alt_title/helmsman)
/datum/alt_title/co_pilot
title = JOB_ALT_COPILOT
title_blurb = "A Co-" + JOB_ALT_COPILOT + " is there primarily to assist main pilot as well as learn from them"
/datum/alt_title/navigator
title = JOB_ALT_NAVIGATOR
/datum/alt_title/helmsman
title = JOB_ALT_HELMSMAN
/datum/job/pilot/get_request_reasons()
return list("Assembling expedition team")
//////////////////////////////////
// Entertainer
//////////////////////////////////
/datum/job/entertainer
title = JOB_ENTERTAINER
flag = ENTERTAINER
departments = list(DEPARTMENT_CIVILIAN)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 4
spawn_positions = 4
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list(access_entertainment)
minimal_access = list(access_entertainment)
pto_type = PTO_CIVILIAN
outfit_type = /decl/hierarchy/outfit/job/assistant/entertainer
job_description = "An " + JOB_ENTERTAINER + " does just that, entertains! Put on plays, play music, sing songs, tell stories, or read your favorite fanfic."
alt_titles = list(JOB_ALT_PERFORMER = /datum/alt_title/performer, JOB_ALT_MUSICIAN = /datum/alt_title/musician, JOB_ALT_STAGEHAND = /datum/alt_title/stagehand,
JOB_ALT_ACTOR = /datum/alt_title/actor, JOB_ALT_DANCER = /datum/alt_title/dancer, JOB_ALT_SINGER = /datum/alt_title/singer,
JOB_ALT_MAGICIAN = /datum/alt_title/magician, JOB_ALT_COMEDIAN = /datum/alt_title/comedian, JOB_ALT_ARTIST = /datum/alt_title/tragedian,
JOB_ALT_ARTIST = /datum/alt_title/artist, JOB_ALT_GAME_MASTER = /datum/alt_title/game_master)
// Entertainer Alt Titles
/datum/alt_title/actor
title = JOB_ALT_ACTOR
title_blurb = "An " + JOB_ALT_ACTOR + " is someone who acts out a role! Whatever sort of character it is, get into it and impress people with power of comedy and tragedy!"
/datum/alt_title/performer
title = JOB_ALT_PERFORMER
title_blurb = "A " + JOB_ALT_PERFORMER + " is someone who performs! Whatever sort of performance will come to your mind, the world's a stage!"
/datum/alt_title/musician
title = JOB_ALT_MUSICIAN
title_blurb = "A " + JOB_ALT_MUSICIAN + " is someone who makes music with a wide variety of musical instruments!"
/datum/alt_title/stagehand
title = JOB_ALT_STAGEHAND
title_blurb = "A " + JOB_ALT_STAGEHAND + " typically performs everything the rest of the entertainers don't. Operate lights, shutters, windows, or narrate through your voicebox!"
/datum/alt_title/dancer
title = JOB_ALT_DANCER
title_blurb = "A " + JOB_ALT_DANCER + " is someone who impresses people through power of their own body! From waltz to breakdance, as long as crowd as cheering!"
/datum/alt_title/singer
title = JOB_ALT_SINGER
title_blurb = "A " + JOB_ALT_SINGER + " is someone with gift of melodious voice! Impress people with your vocal range!"
/datum/alt_title/magician
title = JOB_ALT_MAGICIAN
title_blurb = "A " + JOB_ALT_MAGICIAN + " is someone who awes those around them with impossible! Show off your repertoire of magic tricks, while keeping the secret hidden!"
/datum/alt_title/comedian
title = JOB_ALT_COMEDIAN
title_blurb = "A " + JOB_ALT_COMEDIAN + " will focus on making people laugh with the power of wit! Telling jokes, stand-up comedy, you are here to make others smile!"
/datum/alt_title/tragedian
title = JOB_ALT_ARTIST
title_blurb = "A " + JOB_ALT_ARTIST + " will focus on making people think about life and world around them! Life is a tragedy, and who's better to convey its emotions than you?"
/datum/alt_title/artist
title = JOB_ALT_ARTIST
title_blurb = "An " + JOB_ALT_ARTIST + "'s calling is to create beautiful arts! Whatever form may they take, create and have people astonished with your creativity."
/datum/alt_title/game_master
title = JOB_ALT_GAME_MASTER
title_blurb = "A " + JOB_ALT_GAME_MASTER + " provides recreation for the crew by hosting variety of games. From cards to roleplaying to something more personalized."
//////////////////////////////////
// Entrepreneur
//////////////////////////////////
/datum/job/entrepreneur
title = JOB_ENTREPRENEUR
flag = ENTREPRENEUR
departments = list(DEPARTMENT_CIVILIAN)
department_flag = CIVILIAN
faction = FACTION_STATION
total_positions = 4
spawn_positions = 4
supervisors = "the " + JOB_HEAD_OF_PERSONNEL
selection_color = "#515151"
access = list()
minimal_access = list()
pto_type = PTO_CIVILIAN
outfit_type = /decl/hierarchy/outfit/job/assistant/entrepreneur
job_description = "An " + JOB_ENTREPRENEUR + " is basically a visitor that obtained special permission to offer personal services to people on station. \
They will offer people these services and, potentially, even demand payment!"
alt_titles = list(JOB_ALT_LAWYER = /datum/alt_title/lawyer, JOB_ALT_PRIVATE_EYE = /datum/alt_title/private_eye, JOB_ALT_BODYGUARD = /datum/alt_title/bodyguard,
JOB_ALT_PERSONAL_PHYSICIAN = /datum/alt_title/personal_physician, JOB_ALT_DENTIST = /datum/alt_title/dentist, JOB_ALT_FITNESS_INSTRUCTOR = /datum/alt_title/fitness_instructor,
JOB_ALT_YOGA_TEACHER = /datum/alt_title/yoga_teacher, JOB_ALT_MASSEUSE = /datum/alt_title/masseuse, JOB_ALT_TRADESPERSON = /datum/alt_title/tradesperson,
JOB_ALT_STREAMER = /datum/alt_title/streamer, JOB_ALT_INFLUENCER = /datum/alt_title/influencer, JOB_ALT_PARANORMAL_INVESTIGATOR = /datum/alt_title/paranormal_investigator,
JOB_ALT_PERSONAL_SECRETARY = /datum/alt_title/personal_secretary, JOB_ALT_STYLIST = /datum/alt_title/stylist, JOB_ALT_FISHER = /datum/alt_title/fisher,
JOB_ALT_FORTUNE_TELLER = /datum/alt_title/fortune_teller, JOB_ALT_SPIRIT_HEALER = /datum/alt_title/spirit_healer)
/datum/alt_title/lawyer
title = JOB_ALT_LAWYER
title_blurb = "A " + JOB_ALT_LAWYER + " is knowledgable in various legal systems, including station's operations. They can try to offer their legal counsel, although nobody is really obliged to listen."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/personal_secretary
/datum/alt_title/private_eye
title = JOB_ALT_PRIVATE_EYE
title_blurb = "A " + JOB_ALT_PRIVATE_EYE + " is a detective that has no credentials or equipment. But if someone wants something found without security's knowledge, they are the one to go to."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/private_eye
/datum/alt_title/bodyguard
title = JOB_ALT_BODYGUARD
title_blurb = "A " + JOB_ALT_BODYGUARD + " offers service of personal protection. They may not be allowed any weapons, but their own body is weapon enough."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/bodyguard
/datum/alt_title/personal_physician
title = JOB_ALT_PERSONAL_PHYSICIAN
title_blurb = "A " + JOB_ALT_PERSONAL_PHYSICIAN + " is a doctor dedicated less to Hippocratic Oath and more to the moneymaking grind. Their license may be expired, but the grindset never will be."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/personal_physician
/datum/alt_title/dentist
title = JOB_ALT_DENTIST
title_blurb = "A " + JOB_ALT_DENTIST + " is a doctor that specializes in oral care. Company may not recognize them as a proper doctor, but surely their customers will."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/dentist
/datum/alt_title/fitness_instructor
title = JOB_ALT_FITNESS_INSTRUCTOR
title_blurb = "A " + JOB_ALT_FITNESS_INSTRUCTOR + " dedicates themselves to improving the health of the crew through physical activity, and boy, do they need the help."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/fitness_instructor
/datum/alt_title/yoga_teacher
title = JOB_ALT_YOGA_TEACHER
title_blurb = "A " + JOB_ALT_YOGA_TEACHER + " is similar to a fitness instructor, but rather than turning the round bodies into firm ones, they focus on helping people find balance and harmony."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/yoga_teacher
/datum/alt_title/masseuse
title = JOB_ALT_MASSEUSE
title_blurb = "A " + JOB_ALT_MASSEUSE + " is master of physical therapy and working others' bodies with their hands."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/masseuse
/datum/alt_title/tradesperson
title = JOB_ALT_TRADESPERSON
title_blurb = "A " + JOB_ALT_TRADESPERSON + " is someone attempting to make money via the most obvious act of all - buying and selling. Now if only customs allowed you to bring your goods along..."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/tradesperson
/datum/alt_title/streamer
title = JOB_ALT_STREAMER
title_blurb = "A " + JOB_ALT_STREAMER + " is here to entertain. Not the crew! Their audience across exonet!"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/streamer
/datum/alt_title/influencer
title = JOB_ALT_INFLUENCER
title_blurb = "An " + JOB_ALT_INFLUENCER + " has lucked out with some exonet following, and was given permission to go onstation to provide free exposure. Don't let it go to your head."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/influencer
/datum/alt_title/paranormal_investigator
title = JOB_ALT_PARANORMAL_INVESTIGATOR
title_blurb = "A " + JOB_ALT_PARANORMAL_INVESTIGATOR + " looks beyond what is accepted by modern science, and searches for the true unknown. Aliens, alternate dimensions, ghosts... The truth is out there!"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/paranormal_investigator
/datum/alt_title/personal_secretary
title = JOB_ALT_PERSONAL_SECRETARY
title_blurb = "A " + JOB_ALT_PERSONAL_SECRETARY + " offers services of general assistance. Although it's doubtful anyone will ever actually need those."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/personal_secretary
/datum/alt_title/stylist
title = JOB_ALT_STYLIST
title_blurb = "A " + JOB_ALT_STYLIST + " offers fashion advice, as well as helps with adjusting appearance of the crew to better suit their beauty standards."
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/stylist
/datum/alt_title/fisher
title = JOB_ALT_FISHER
title_blurb = "A " + JOB_ALT_FISHER + " is a capable angler, who is good at obtaining large amounts of marine goods. Whether you generously give them to station or attempt to make a quick thaler by selling, it's up to you!"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/fisher
/datum/alt_title/fortune_teller
title = JOB_ALT_FORTUNE_TELLER
title_blurb = "A " + JOB_ALT_FORTUNE_TELLER + " peers into the future, and offers these visions to others. Occasionally those visions may even come true!"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/fortune_teller
/datum/alt_title/spirit_healer
title = JOB_ALT_SPIRIT_HEALER
title_blurb = "A " + JOB_ALT_SPIRIT_HEALER + " offers alternative forms of medicine. Rituals, magic rocks, seances... It totally works. What's that about placebo?"
title_outfit = /decl/hierarchy/outfit/job/assistant/entrepreneur/spirit_healer
+1 -1
View File
@@ -60,7 +60,7 @@
name = "Miscellaneous"
short_name = "Misc"
color = "#666666"
sorting_order = 0
sorting_order = -5
assignable = FALSE
/datum/department/synthetic
-6
View File
@@ -1,6 +0,0 @@
/datum/department/misc
name = "Off-Duty"
short_name = "Offduty"
color = "#666666"
sorting_order = -5
assignable = FALSE
+68 -9
View File
@@ -22,15 +22,20 @@
ideal_age_by_species = list(SPECIES_UNATHI = 140, "mechanical" = 20, SPECIES_HUMAN_VATBORN = 20)
banned_job_species = list(SPECIES_TESHARI, SPECIES_DIONA, SPECIES_PROMETHEAN, SPECIES_ZADDAT, "digital")
disallow_jobhop = TRUE
pto_type = PTO_ENGINEERING
dept_time_required = 60
access = list(access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels,
access_teleporter, access_external_airlocks, access_atmospherics, access_emergency_storage, access_eva,
access_heads, access_construction, access_sec_doors,
access_ce, access_RC_announce, access_keycard_auth, access_tcomsat, access_ai_upload)
access_teleporter, access_external_airlocks, access_atmospherics, access_emergency_storage, access_eva,
access_heads, access_construction,
access_ce, access_RC_announce, access_keycard_auth, access_tcomsat, access_ai_upload, access_gateway)
minimal_access = list(access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels,
access_teleporter, access_external_airlocks, access_atmospherics, access_emergency_storage, access_eva,
access_heads, access_construction, access_sec_doors,
access_ce, access_RC_announce, access_keycard_auth, access_tcomsat, access_ai_upload)
access_teleporter, access_external_airlocks, access_atmospherics, access_emergency_storage, access_eva,
access_heads, access_construction,
access_ce, access_RC_announce, access_keycard_auth, access_tcomsat, access_ai_upload, access_gateway)
alt_titles = list(JOB_ALT_HEAD_ENGINEER = /datum/alt_title/head_engineer, JOB_ALT_FOREMAN = /datum/alt_title/foreman, JOB_ALT_MAINTENANCE_MANAGER = /datum/alt_title/maintenance_manager)
minimal_player_age = 7
outfit_type = /decl/hierarchy/outfit/job/engineering/chief_engineer
@@ -38,6 +43,18 @@
of manpower as much as they handle hands-on operations and repairs. They are also expected to keep the rest of the station informed of \
any structural threats to the station that may be hazardous to health or disruptive to work."
/datum/job/chief_engineer/get_request_reasons()
return list("Engine setup", "Construction project", "Repairs necessary", "Training crew", "Assembling expedition team")
/datum/alt_title/head_engineer
title = JOB_ALT_HEAD_ENGINEER
/datum/alt_title/foreman
title = JOB_ALT_FOREMAN
/datum/alt_title/maintenance_manager
title = JOB_ALT_MAINTENANCE_MANAGER
//////////////////////////////////
// Engineer
//////////////////////////////////
@@ -52,10 +69,12 @@
supervisors = "the "+ JOB_CHIEF_ENGINEER
selection_color = "#5B4D20"
economic_modifier = 5
pto_type = PTO_ENGINEERING
access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics)
minimal_access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction)
alt_titles = list(JOB_ALT_MAINTENANCE_TECHNICIAN = /datum/alt_title/maint_tech,
JOB_ALT_ENGINE_TECHNICIAN = /datum/alt_title/engine_tech, JOB_ALT_ELECTRICIAN = /datum/alt_title/electrician)
alt_titles = list(JOB_ALT_MAINTENANCE_TECHNICIAN = /datum/alt_title/maint_tech, JOB_ALT_ENGINE_TECHNICIAN = /datum/alt_title/engine_tech,
JOB_ALT_ELECTRICIAN = /datum/alt_title/electrician, JOB_ALT_CONSTRUCTION_ENGINEER = /datum/alt_title/construction_engi, JOB_ALT_ENGINEERING_CONTRACTOR = /datum/alt_title/engineering_contractor, JOB_ALT_COMPUTER_TECHNICIAN = /datum/alt_title/computer_tech)
minimal_player_age = 3
min_age_by_species = list(SPECIES_PROMETHEAN = 2)
@@ -64,6 +83,9 @@
job_description = "An " + JOB_ENGINEER + " keeps the station running. They repair damages, keep the atmosphere stable, and ensure that power is being \
generated and distributed. On quiet shifts, they may be called upon to make cosmetic alterations to the station."
/datum/job/engineer/get_request_reasons()
return list("Engine setup", "Construction project", "Repairs necessary", "Assembling expedition team")
// Engineer Alt Titles
/datum/alt_title/maint_tech
title = JOB_ALT_MAINTENANCE_TECHNICIAN
@@ -80,6 +102,23 @@
title_blurb = "An " + JOB_ALT_ELECTRICIAN + "'s primary duty is making sure power is properly distributed thoughout the station, utilizing solars, substations, and other \
methods to ensure every department has power in an emergency."
/datum/alt_title/construction_engi
title = JOB_ALT_CONSTRUCTION_ENGINEER
title_blurb = "A " + JOB_ALT_CONSTRUCTION_ENGINEER + " fulfills similar duties to other engineers, but usually occupies spare time with construction of extra facilities in dedicated areas or \
as additions to station layout."
/datum/alt_title/engineering_contractor
title = JOB_ALT_ENGINEERING_CONTRACTOR
title_blurb = "An " + JOB_ALT_ENGINEERING_CONTRACTOR + " fulfills similar duties to other engineers, but isn't directly employed by NT proper."
/datum/alt_title/computer_tech
title = JOB_ALT_COMPUTER_TECHNICIAN
title_blurb = "A " + JOB_ALT_COMPUTER_TECHNICIAN + " fulfills similar duties to other engineers, but specializes in working with software and computers. They also often deal with integrated circuits."
/datum/alt_title/salvage_tech
title = JOB_ALT_SALVAGE_TECHNICIAN
title_blurb = "A " + JOB_ALT_SALVAGE_TECHNICIAN + " is responsible for breaking down debris and obsolete equipment to recover useful components and materials."
//////////////////////////////////
// Atmos Tech
//////////////////////////////////
@@ -90,16 +129,36 @@
department_flag = ENGSEC
faction = FACTION_STATION
total_positions = 3
spawn_positions = 2
spawn_positions = 3
pto_type = PTO_ENGINEERING
supervisors = "the " + JOB_CHIEF_ENGINEER
selection_color = "#5B4D20"
economic_modifier = 5
access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics, access_external_airlocks)
minimal_access = list(access_eva, access_engine, access_atmospherics, access_maint_tunnels, access_emergency_storage, access_construction, access_external_airlocks)
alt_titles = list(JOB_ALT_ATMOSPHERIC_ENGINEER = /datum/alt_title/atmos_engi, JOB_ALT_ATMOSPHERIC_MAINTAINER = /datum/alt_title/atmos_maint, JOB_ALT_DISPOSALS_TECHNICIAN = /datum/alt_title/disposals_tech,
JOB_ALT_FUEL_TECHNICIAN = /datum/alt_title/refuel_tech)
minimal_player_age = 3
min_age_by_species = list(SPECIES_PROMETHEAN = 2)
outfit_type = /decl/hierarchy/outfit/job/engineering/atmos
job_description = "An " + JOB_ATMOSPHERIC_TECHNICIAN + " is primarily concerned with keeping the station's atmosphere breathable. They are expected to have a good \
understanding of the pipes, vents, and scrubbers that move gasses around the station, and to be familiar with proper firefighting procedure."
/datum/job/atmos/get_request_reasons()
return list("Construction project", "Repairs necessary", "Assembling expedition team")
/datum/alt_title/refuel_tech
title = JOB_ALT_FUEL_TECHNICIAN
/datum/alt_title/atmos_maint
title = JOB_ALT_ATMOSPHERIC_MAINTAINER
/datum/alt_title/atmos_engi
title = JOB_ALT_ATMOSPHERIC_ENGINEER
/datum/alt_title/disposals_tech
title = JOB_ALT_DISPOSALS_TECHNICIAN
title_blurb = "A " + JOB_ALT_DISPOSALS_TECHNICIAN + " is an " + JOB_ATMOSPHERIC_TECHNICIAN + " still and can fulfill all the same duties, although specializes more in disposals delivery system's operations and configurations."
-75
View File
@@ -1,75 +0,0 @@
/datum/job/chief_engineer
disallow_jobhop = TRUE
pto_type = PTO_ENGINEERING
dept_time_required = 60
access = list(access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels,
access_teleporter, access_external_airlocks, access_atmospherics, access_emergency_storage, access_eva,
access_heads, access_construction,
access_ce, access_RC_announce, access_keycard_auth, access_tcomsat, access_ai_upload, access_gateway)
minimal_access = list(access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels,
access_teleporter, access_external_airlocks, access_atmospherics, access_emergency_storage, access_eva,
access_heads, access_construction,
access_ce, access_RC_announce, access_keycard_auth, access_tcomsat, access_ai_upload, access_gateway)
alt_titles = list(JOB_ALT_HEAD_ENGINEER = /datum/alt_title/head_engineer, JOB_ALT_FOREMAN = /datum/alt_title/foreman, JOB_ALT_MAINTENANCE_MANAGER = /datum/alt_title/maintenance_manager)
/datum/alt_title/head_engineer
title = JOB_ALT_HEAD_ENGINEER
/datum/alt_title/foreman
title = JOB_ALT_FOREMAN
/datum/alt_title/maintenance_manager
title = JOB_ALT_MAINTENANCE_MANAGER
/datum/job/chief_engineer/get_request_reasons()
return list("Engine setup", "Construction project", "Repairs necessary", "Training crew", "Assembling expedition team")
/datum/job/engineer
pto_type = PTO_ENGINEERING
alt_titles = list(JOB_ALT_MAINTENANCE_TECHNICIAN = /datum/alt_title/maint_tech, JOB_ALT_ENGINE_TECHNICIAN = /datum/alt_title/engine_tech,
JOB_ALT_ELECTRICIAN = /datum/alt_title/electrician, JOB_ALT_CONSTRUCTION_ENGINEER = /datum/alt_title/construction_engi, JOB_ALT_ENGINEERING_CONTRACTOR = /datum/alt_title/engineering_contractor, JOB_ALT_COMPUTER_TECHNICIAN = /datum/alt_title/computer_tech)
/datum/alt_title/construction_engi
title = JOB_ALT_CONSTRUCTION_ENGINEER
title_blurb = "A " + JOB_ALT_CONSTRUCTION_ENGINEER + " fulfills similar duties to other engineers, but usually occupies spare time with construction of extra facilities in dedicated areas or \
as additions to station layout."
/datum/alt_title/engineering_contractor
title = JOB_ALT_ENGINEERING_CONTRACTOR
title_blurb = "An " + JOB_ALT_ENGINEERING_CONTRACTOR + " fulfills similar duties to other engineers, but isn't directly employed by NT proper."
/datum/job/engineer/get_request_reasons()
return list("Engine setup", "Construction project", "Repairs necessary", "Assembling expedition team")
/datum/alt_title/computer_tech
title = JOB_ALT_COMPUTER_TECHNICIAN
title_blurb = "A " + JOB_ALT_COMPUTER_TECHNICIAN + " fulfills similar duties to other engineers, but specializes in working with software and computers. They also often deal with integrated circuits."
/datum/alt_title/salvage_tech
title = JOB_ALT_SALVAGE_TECHNICIAN
title_blurb = "A " + JOB_ALT_SALVAGE_TECHNICIAN + " is responsible for breaking down debris and obsolete equipment to recover useful components and materials."
/datum/job/atmos
spawn_positions = 3
pto_type = PTO_ENGINEERING
alt_titles = list(JOB_ALT_ATMOSPHERIC_ENGINEER = /datum/alt_title/atmos_engi, JOB_ALT_ATMOSPHERIC_MAINTAINER = /datum/alt_title/atmos_maint, JOB_ALT_DISPOSALS_TECHNICIAN = /datum/alt_title/disposals_tech,
JOB_ALT_FUEL_TECHNICIAN = /datum/alt_title/refuel_tech)
/datum/alt_title/atmos_maint
title = JOB_ALT_ATMOSPHERIC_MAINTAINER
/datum/alt_title/atmos_engi
title = JOB_ALT_ATMOSPHERIC_ENGINEER
/datum/alt_title/disposals_tech
title = JOB_ALT_DISPOSALS_TECHNICIAN
title_blurb = "A " + JOB_ALT_DISPOSALS_TECHNICIAN + " is an " + JOB_ATMOSPHERIC_TECHNICIAN + " still and can fulfill all the same duties, although specializes more in disposals delivery system's operations and configurations."
/datum/alt_title/refuel_tech
title = JOB_ALT_FUEL_TECHNICIAN
/datum/job/atmos/get_request_reasons()
return list("Construction project", "Repairs necessary", "Assembling expedition team")
+67
View File
@@ -39,6 +39,29 @@
// Description of the job's role and minimum responsibilities.
var/job_description = "This Job doesn't have a description! Please report it!"
//Requires a ckey to be whitelisted in jobwhitelist.txt
var/whitelist_only = 0
//Does not display this job on the occupation setup screen
var/latejoin_only = 0
//Every hour playing this role gains this much time off. (Can be negative for off duty jobs!)
var/timeoff_factor = 3
//What type of PTO is that job earning?
var/pto_type
//Disallow joining as this job midround from off-duty position via going on-duty
var/disallow_jobhop = FALSE
//Time required in the department as other jobs before playing this one (in hours)
var/dept_time_required = 0
//Do we forbid ourselves from earning PTO?
var/playtime_only = FALSE
var/requestable = TRUE
/datum/job/New()
. = ..()
department_accounts = department_accounts || departments_managed
@@ -184,3 +207,47 @@
if(brain_type in banned_job_species)
return TRUE
*/
// Check client-specific availability rules.
/datum/job/proc/player_has_enough_pto(client/C)
return timeoff_factor >= 0 || (C && LAZYACCESS(C.department_hours, pto_type) > 0)
/datum/job/proc/player_has_enough_playtime(client/C)
return (available_in_playhours(C) == 0)
/datum/job/proc/available_in_playhours(client/C)
if(C && CONFIG_GET(flag/use_playtime_restriction_for_jobs) && dept_time_required)
if(isnum(C.play_hours[pto_type])) // Has played that department before
return max(0, dept_time_required - C.play_hours[pto_type])
else // List doesn't have that entry, maybe never played, maybe invalid PTO type (you should fix that...)
return dept_time_required // Could be 0, too, which is fine! They can play that
return 0
// Special treatment for some the more complicated heads
// Captain gets every department combined
/datum/job/captain/available_in_playhours(client/C)
if(C && CONFIG_GET(flag/use_playtime_restriction_for_jobs) && dept_time_required)
var/remaining_time_needed = dept_time_required
for(var/key in C.play_hours)
if(isnum(C.play_hours[key]) && !(key == PTO_TALON))
remaining_time_needed = max(0, remaining_time_needed - C.play_hours[key])
return remaining_time_needed
return 0
// HoP gets civilian, cargo, and exploration combined
/datum/job/hop/available_in_playhours(client/C)
if(C && CONFIG_GET(flag/use_playtime_restriction_for_jobs) && dept_time_required)
var/remaining_time_needed = dept_time_required
if(isnum(C.play_hours[PTO_CIVILIAN]))
remaining_time_needed = max(0, remaining_time_needed - C.play_hours[PTO_CIVILIAN])
if(isnum(C.play_hours[PTO_CARGO]))
remaining_time_needed = max(0, remaining_time_needed - C.play_hours[PTO_CARGO])
if(isnum(C.play_hours[PTO_EXPLORATION]))
remaining_time_needed = max(0, remaining_time_needed - C.play_hours[PTO_EXPLORATION])
return remaining_time_needed
return 0
/datum/job/proc/get_request_reasons()
return list()
-66
View File
@@ -1,66 +0,0 @@
/datum/job
//Requires a ckey to be whitelisted in jobwhitelist.txt
var/whitelist_only = 0
//Does not display this job on the occupation setup screen
var/latejoin_only = 0
//Every hour playing this role gains this much time off. (Can be negative for off duty jobs!)
var/timeoff_factor = 3
//What type of PTO is that job earning?
var/pto_type
//Disallow joining as this job midround from off-duty position via going on-duty
var/disallow_jobhop = FALSE
//Time required in the department as other jobs before playing this one (in hours)
var/dept_time_required = 0
//Do we forbid ourselves from earning PTO?
var/playtime_only = FALSE
var/requestable = TRUE
// Check client-specific availability rules.
/datum/job/proc/player_has_enough_pto(client/C)
return timeoff_factor >= 0 || (C && LAZYACCESS(C.department_hours, pto_type) > 0)
/datum/job/proc/player_has_enough_playtime(client/C)
return (available_in_playhours(C) == 0)
/datum/job/proc/available_in_playhours(client/C)
if(C && CONFIG_GET(flag/use_playtime_restriction_for_jobs) && dept_time_required)
if(isnum(C.play_hours[pto_type])) // Has played that department before
return max(0, dept_time_required - C.play_hours[pto_type])
else // List doesn't have that entry, maybe never played, maybe invalid PTO type (you should fix that...)
return dept_time_required // Could be 0, too, which is fine! They can play that
return 0
// Special treatment for some the more complicated heads
// Captain gets every department combined
/datum/job/captain/available_in_playhours(client/C)
if(C && CONFIG_GET(flag/use_playtime_restriction_for_jobs) && dept_time_required)
var/remaining_time_needed = dept_time_required
for(var/key in C.play_hours)
if(isnum(C.play_hours[key]) && !(key == PTO_TALON))
remaining_time_needed = max(0, remaining_time_needed - C.play_hours[key])
return remaining_time_needed
return 0
// HoP gets civilian, cargo, and exploration combined
/datum/job/hop/available_in_playhours(client/C)
if(C && CONFIG_GET(flag/use_playtime_restriction_for_jobs) && dept_time_required)
var/remaining_time_needed = dept_time_required
if(isnum(C.play_hours[PTO_CIVILIAN]))
remaining_time_needed = max(0, remaining_time_needed - C.play_hours[PTO_CIVILIAN])
if(isnum(C.play_hours[PTO_CARGO]))
remaining_time_needed = max(0, remaining_time_needed - C.play_hours[PTO_CARGO])
if(isnum(C.play_hours[PTO_EXPLORATION]))
remaining_time_needed = max(0, remaining_time_needed - C.play_hours[PTO_EXPLORATION])
return remaining_time_needed
return 0
/datum/job/proc/get_request_reasons()
return list()
+82 -16
View File
@@ -16,11 +16,13 @@
req_admin_notify = 1
economic_modifier = 10
access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads,
access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce,
access_keycard_auth, access_sec_doors, access_psychiatrist, access_eva, access_external_airlocks, access_maint_tunnels)
access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce,
access_keycard_auth, access_psychiatrist, access_eva, access_external_airlocks, access_maint_tunnels, access_gateway)
minimal_access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads,
access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce,
access_keycard_auth, access_sec_doors, access_psychiatrist, access_eva, access_external_airlocks, access_maint_tunnels)
access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce,
access_keycard_auth, access_psychiatrist, access_eva, access_external_airlocks, access_maint_tunnels, access_gateway)
alt_titles = list(JOB_ALT_CHIEF_PHYSICIAN = /datum/alt_title/chief_physician, JOB_ALT_MEDICAL_DIRECTOR = /datum/alt_title/medical_director, JOB_ALT_HEALTHCARE_MANAGER = /datum/alt_title/healthcare_manager)
minimum_character_age = 25
min_age_by_species = list(SPECIES_UNATHI = 70, "mechanical" = 10, SPECIES_HUMAN_VATBORN = 14)
@@ -29,12 +31,28 @@
ideal_age_by_species = list(SPECIES_UNATHI = 140, "mechanical" = 20, SPECIES_HUMAN_VATBORN = 20)
banned_job_species = list(SPECIES_TESHARI, SPECIES_DIONA, SPECIES_PROMETHEAN, SPECIES_ZADDAT, "digital")
disallow_jobhop = TRUE
pto_type = PTO_MEDICAL
dept_time_required = 60
outfit_type = /decl/hierarchy/outfit/job/medical/cmo
job_description = "The CMO manages the Medical department and is a position requiring experience and skill; their goal is to ensure that their \
staff keep the station's crew healthy and whole. They are primarily interested in making sure that patients are safely found and \
transported to Medical for treatment. They are expected to keep the crew informed about threats to their health and safety, and \
about the importance of Suit Sensors."
/datum/job/cmo/get_request_reasons()
return list("Surgery pending", "Viral outbreak", "Training crew", "Assembling expedition team")
/datum/alt_title/chief_physician
title = JOB_ALT_CHIEF_PHYSICIAN
/datum/alt_title/medical_director
title = JOB_ALT_MEDICAL_DIRECTOR
/datum/alt_title/healthcare_manager
title = JOB_ALT_HEALTHCARE_MANAGER
//////////////////////////////////
// Medical Doctor
//////////////////////////////////
@@ -45,7 +63,8 @@
department_flag = MEDSCI
faction = FACTION_STATION
total_positions = 5
spawn_positions = 3
spawn_positions = 5
pto_type = PTO_MEDICAL
supervisors = "the " + JOB_CHIEF_MEDICAL_OFFICER
selection_color = "#013D3B"
economic_modifier = 7
@@ -55,14 +74,15 @@
job_description = "A " + JOB_MEDICAL_DOCTOR + " is a Jack-of-All-Trades Medical title, covering a variety of skill levels and minor specializations. They are likely \
familiar with basic first aid, and a number of accompanying medications, and can generally save, if not cure, a majority of the \
patients they encounter."
alt_titles = list(
JOB_ALT_SURGEON = /datum/alt_title/surgeon,
JOB_ALT_EMERGENCY_PHYSICIAN = /datum/alt_title/emergency_physician,
JOB_ALT_NURSE = /datum/alt_title/nurse,
JOB_ALT_VIROLOGIST = /datum/alt_title/virologist)
alt_titles = list(JOB_ALT_PHYSICIAN = /datum/alt_title/physician, JOB_ALT_MEDICAL_PRACTITIONER = /datum/alt_title/medical_practitioner, JOB_ALT_SURGEON = /datum/alt_title/surgeon,
JOB_ALT_EMERGENCY_PHYSICIAN = /datum/alt_title/emergency_physician, JOB_ALT_NURSE = /datum/alt_title/nurse, JOB_ALT_ORDERLY = /datum/alt_title/orderly,
JOB_ALT_VIROLOGIST = /datum/alt_title/virologist, JOB_ALT_MEDICAL_CONTRACTOR = /datum/alt_title/medical_contractor)
min_age_by_species = list(SPECIES_PROMETHEAN = 3)
/datum/job/doctor/get_request_reasons()
return list("Surgery pending", "Viral outbreak", "Assembling expedition team")
//Medical Doctor Alt Titles
/datum/alt_title/surgeon
title = JOB_ALT_SURGEON
@@ -90,7 +110,22 @@
to produce the various types of virus foods or mutagens."
title_outfit = /decl/hierarchy/outfit/job/medical/doctor/virologist
//Chemist is a medical job damnit //YEAH FUCK YOU SCIENCE -Pete //Guys, behave -Erro
/datum/alt_title/physician
title = JOB_ALT_PHYSICIAN
/datum/alt_title/medical_practitioner
title = JOB_ALT_MEDICAL_PRACTITIONER
/datum/alt_title/orderly
title = JOB_ALT_ORDERLY
title_blurb = "An " + JOB_ALT_ORDERLY + " acts as Medbay's general helping hand, assisting any doctor that might need some form of help, as well as handling manual \
and dirty labor around the department."
title_outfit = /decl/hierarchy/outfit/job/medical/doctor/nurse
/datum/alt_title/medical_contractor
title = JOB_ALT_MEDICAL_CONTRACTOR
title_blurb = "A " + JOB_ALT_MEDICAL_CONTRACTOR + " can be anything from a full-blown doctor to the likes of a nurse or orderly, but isn't directly employed by NT proper."
//////////////////////////////////
// Chemist
//////////////////////////////////
@@ -102,6 +137,7 @@
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
pto_type = PTO_MEDICAL
supervisors = "the " + JOB_CHIEF_MEDICAL_OFFICER
selection_color = "#013D3B"
economic_modifier = 5
@@ -113,13 +149,17 @@
outfit_type = /decl/hierarchy/outfit/job/medical/chemist
job_description = "A " + JOB_CHEMIST + " produces and maintains a stock of basic to advanced chemicals for medical and occasionally research use. \
They are likely to know the use and dangers of many lab-produced chemicals."
alt_titles = list(JOB_ALT_PHARMACIST = /datum/alt_title/pharmacist)
alt_titles = list(JOB_ALT_PHARMACIST = /datum/alt_title/pharmacist, JOB_ALT_PHARMACOLOGIST = /datum/alt_title/pharmacologist)
// Chemist Alt Titles
/datum/alt_title/pharmacist
title = JOB_ALT_PHARMACIST
title_blurb = "A " + JOB_ALT_PHARMACIST + " focuses on the chemical needs of the Medical Department, and often offers to fill crew prescriptions at their discretion."
/datum/alt_title/pharmacologist
title = JOB_ALT_PHARMACOLOGIST
title_blurb = "A " + JOB_ALT_PHARMACOLOGIST + " focuses on the chemical needs of the Medical Department, primarily specializing in producing more advanced forms of medicine."
/* I'm commenting out Geneticist so you can't actually see it in the job menu, given that you can't play as one - Jon.
//////////////////////////////////
// Geneticist
@@ -154,6 +194,7 @@
faction = FACTION_STATION
total_positions = 1
spawn_positions = 1
pto_type = PTO_MEDICAL
economic_modifier = 5
supervisors = "the " + JOB_CHIEF_MEDICAL_OFFICER
selection_color = "#013D3B"
@@ -162,7 +203,7 @@
outfit_type = /decl/hierarchy/outfit/job/medical/psychiatrist
job_description = "A " + JOB_PSYCHIATRIST + " provides mental health services to crew members in need. They may also be called upon to determine whatever \
ails the mentally unwell, frequently under Security supervision. They understand the effects of various psychoactive drugs."
alt_titles = list(JOB_ALT_PSYCHOLOGIST = /datum/alt_title/psychologist)
alt_titles = list(JOB_ALT_PSYCHOLOGIST = /datum/alt_title/psychologist, JOB_ALT_PSYCHOANALYST = /datum/alt_title/psychoanalyst, JOB_ALT_PSYCHOTHERAPIST = /datum/alt_title/psychotherapist)
banned_job_species = list(SPECIES_PROMETHEAN, SPECIES_DIONA)
//Psychiatrist Alt Titles
@@ -172,6 +213,18 @@
called upon to determine whatever ails the mentally unwell, frequently under Security supervision."
title_outfit = /decl/hierarchy/outfit/job/medical/psychiatrist/psychologist
/datum/alt_title/psychoanalyst
title = JOB_ALT_PSYCHOANALYST
title_blurb = "A " + JOB_ALT_PSYCHOANALYST + " provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \
called upon to determine whatever ails the mentally unwell, frequently under Security supervision."
title_outfit = /decl/hierarchy/outfit/job/medical/psychiatrist/psychologist
/datum/alt_title/psychotherapist
title = JOB_ALT_PSYCHOTHERAPIST
title_blurb = "A " + JOB_ALT_PSYCHOTHERAPIST + " provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \
called upon to determine whatever ails the mentally unwell, frequently under Security supervision."
title_outfit = /decl/hierarchy/outfit/job/medical/psychiatrist/psychologist
//////////////////////////////////
// Paramedic
//////////////////////////////////
@@ -181,8 +234,9 @@
departments = list(DEPARTMENT_MEDICAL)
department_flag = MEDSCI
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
total_positions = 3
spawn_positions = 3
pto_type = PTO_MEDICAL
supervisors = "the " + JOB_CHIEF_MEDICAL_OFFICER
selection_color = "#013D3B"
economic_modifier = 4
@@ -191,14 +245,26 @@
outfit_type = /decl/hierarchy/outfit/job/medical/paramedic
job_description = "A " + JOB_PARAMEDIC + " is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their own. \
They may also be called upon to keep patients stable when Medical is busy or understaffed."
alt_titles = list(JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN = /datum/alt_title/emt)
alt_titles = list(JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN = /datum/alt_title/emt, JOB_ALT_MEDICAL_RESPONDER = /datum/alt_title/medical_responder, JOB_ALT_SEARCH_AND_RESCUE = /datum/alt_title/sar)
banned_job_species = list(SPECIES_DIONA)
min_age_by_species = list(SPECIES_PROMETHEAN = 2)
/datum/job/paramedic/get_request_reasons()
return list("Assembling expedition team")
// Paramedic Alt Titles
/datum/alt_title/emt
title = JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN
title_blurb = "An " + JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN + " is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their \
own. They are capable of keeping a patient stabilized until they reach the hands of someone with more training."
title_outfit = /decl/hierarchy/outfit/job/medical/paramedic/emt
/datum/alt_title/medical_responder
title = JOB_ALT_MEDICAL_RESPONDER
title_blurb = "A " + JOB_ALT_MEDICAL_RESPONDER + " is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their \
own. They are capable of keeping a patient stabilized until they reach the hands of someone with more training."
title_outfit = /decl/hierarchy/outfit/job/medical/paramedic/emt
/datum/alt_title/sar
title = JOB_ALT_SEARCH_AND_RESCUE
-97
View File
@@ -1,97 +0,0 @@
/datum/job/cmo
disallow_jobhop = TRUE
pto_type = PTO_MEDICAL
dept_time_required = 60
access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads,
access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce,
access_keycard_auth, access_psychiatrist, access_eva, access_external_airlocks, access_maint_tunnels, access_gateway)
minimal_access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads,
access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce,
access_keycard_auth, access_psychiatrist, access_eva, access_external_airlocks, access_maint_tunnels, access_gateway)
alt_titles = list(JOB_ALT_CHIEF_PHYSICIAN = /datum/alt_title/chief_physician, JOB_ALT_MEDICAL_DIRECTOR = /datum/alt_title/medical_director, JOB_ALT_HEALTHCARE_MANAGER = /datum/alt_title/healthcare_manager)
/datum/alt_title/chief_physician
title = JOB_ALT_CHIEF_PHYSICIAN
/datum/alt_title/medical_director
title = JOB_ALT_MEDICAL_DIRECTOR
/datum/alt_title/healthcare_manager
title = JOB_ALT_HEALTHCARE_MANAGER
/datum/job/cmo/get_request_reasons()
return list("Surgery pending", "Viral outbreak", "Training crew", "Assembling expedition team")
/datum/job/doctor
spawn_positions = 5
pto_type = PTO_MEDICAL
alt_titles = list(JOB_ALT_PHYSICIAN = /datum/alt_title/physician, JOB_ALT_MEDICAL_PRACTITIONER = /datum/alt_title/medical_practitioner, JOB_ALT_SURGEON = /datum/alt_title/surgeon,
JOB_ALT_EMERGENCY_PHYSICIAN = /datum/alt_title/emergency_physician, JOB_ALT_NURSE = /datum/alt_title/nurse, JOB_ALT_ORDERLY = /datum/alt_title/orderly,
JOB_ALT_VIROLOGIST = /datum/alt_title/virologist, JOB_ALT_MEDICAL_CONTRACTOR = /datum/alt_title/medical_contractor)
/datum/alt_title/physician
title = JOB_ALT_PHYSICIAN
/datum/alt_title/medical_practitioner
title = JOB_ALT_MEDICAL_PRACTITIONER
/datum/alt_title/orderly
title = JOB_ALT_ORDERLY
title_blurb = "An " + JOB_ALT_ORDERLY + " acts as Medbay's general helping hand, assisting any doctor that might need some form of help, as well as handling manual \
and dirty labor around the department."
title_outfit = /decl/hierarchy/outfit/job/medical/doctor/nurse
/datum/alt_title/medical_contractor
title = JOB_ALT_MEDICAL_CONTRACTOR
title_blurb = "A " + JOB_ALT_MEDICAL_CONTRACTOR + " can be anything from a full-blown doctor to the likes of a nurse or orderly, but isn't directly employed by NT proper."
/datum/job/doctor/get_request_reasons()
return list("Surgery pending", "Viral outbreak", "Assembling expedition team")
/datum/job/chemist
pto_type = PTO_MEDICAL
alt_titles = list(JOB_ALT_PHARMACIST = /datum/alt_title/pharmacist, JOB_ALT_PHARMACOLOGIST = /datum/alt_title/pharmacologist)
/datum/alt_title/pharmacologist
title = JOB_ALT_PHARMACOLOGIST
title_blurb = "A " + JOB_ALT_PHARMACOLOGIST + " focuses on the chemical needs of the Medical Department, primarily specializing in producing more advanced forms of medicine."
/datum/job/psychiatrist
pto_type = PTO_MEDICAL
alt_titles = list(JOB_ALT_PSYCHOLOGIST = /datum/alt_title/psychologist, JOB_ALT_PSYCHOANALYST = /datum/alt_title/psychoanalyst, JOB_ALT_PSYCHOTHERAPIST = /datum/alt_title/psychotherapist)
/datum/alt_title/psychoanalyst
title = JOB_ALT_PSYCHOANALYST
title_blurb = "A " + JOB_ALT_PSYCHOANALYST + " provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \
called upon to determine whatever ails the mentally unwell, frequently under Security supervision."
title_outfit = /decl/hierarchy/outfit/job/medical/psychiatrist/psychologist
/datum/alt_title/psychotherapist
title = JOB_ALT_PSYCHOTHERAPIST
title_blurb = "A " + JOB_ALT_PSYCHOTHERAPIST + " provides mental health services to crew members in need, focusing more on therapy than medication. They may also be \
called upon to determine whatever ails the mentally unwell, frequently under Security supervision."
title_outfit = /decl/hierarchy/outfit/job/medical/psychiatrist/psychologist
/datum/job/paramedic
pto_type = PTO_MEDICAL
alt_titles = list(JOB_ALT_EMERGENCY_MEDICAL_TECHNICIAN = /datum/alt_title/emt, JOB_ALT_MEDICAL_RESPONDER = /datum/alt_title/medical_responder, JOB_ALT_SEARCH_AND_RESCUE = /datum/alt_title/sar)
total_positions = 3
spawn_positions = 3
/datum/alt_title/medical_responder
title = JOB_ALT_MEDICAL_RESPONDER
title_blurb = "A " + JOB_ALT_MEDICAL_RESPONDER + " is primarily concerned with the recovery of patients who are unable to make it to the Medical Department on their \
own. They are capable of keeping a patient stabilized until they reach the hands of someone with more training."
title_outfit = /decl/hierarchy/outfit/job/medical/paramedic/emt
/datum/alt_title/sar
title = JOB_ALT_SEARCH_AND_RESCUE
/datum/job/paramedic/get_request_reasons()
return list("Assembling expedition team")
+118 -16
View File
@@ -16,13 +16,13 @@
req_admin_notify = 1
economic_modifier = 15
access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue,
access_tox_storage, access_teleporter, access_sec_doors,
access_tox_storage, access_teleporter,
access_research, access_robotics, access_xenobiology, access_ai_upload, access_tech_storage,
access_RC_announce, access_keycard_auth, access_tcomsat, access_gateway, access_xenoarch, access_network)
access_RC_announce, access_keycard_auth, access_tcomsat, access_xenoarch, access_eva, access_network, access_xenobotany)
minimal_access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue,
access_tox_storage, access_teleporter, access_sec_doors,
access_tox_storage, access_teleporter,
access_research, access_robotics, access_xenobiology, access_ai_upload, access_tech_storage,
access_RC_announce, access_keycard_auth, access_tcomsat, access_gateway, access_xenoarch, access_network)
access_RC_announce, access_keycard_auth, access_tcomsat, access_gateway, access_xenoarch, access_eva, access_network, access_xenobotany)
minimum_character_age = 25
minimal_player_age = 14
@@ -30,19 +30,34 @@
ideal_character_age = 50
ideal_age_by_species = list(SPECIES_UNATHI = 140, "mechanical" = 20, SPECIES_HUMAN_VATBORN = 20)
banned_job_species = list(SPECIES_TESHARI, SPECIES_DIONA, SPECIES_PROMETHEAN, SPECIES_ZADDAT, "digital")
disallow_jobhop = TRUE
pto_type = PTO_SCIENCE
dept_time_required = 60
outfit_type = /decl/hierarchy/outfit/job/science/rd
job_description = "The " + JOB_RESEARCH_DIRECTOR + " manages and maintains the Research department. They are required to ensure the safety of the entire crew, \
at least with regards to anything occurring in the Research department, and to inform the crew of any disruptions that \
might originate from Research. The " + JOB_RESEARCH_DIRECTOR + " often has at least passing knowledge of most of the Research department, but \
are encouraged to allow their staff to perform their own duties."
alt_titles = list(JOB_ALT_RESEARCH_SUPERVISOR = /datum/alt_title/research_supervisor)
alt_titles = list(JOB_ALT_RESEARCH_SUPERVISOR = /datum/alt_title/research_supervisor, JOB_ALT_RESEARCH_MANAGER = /datum/alt_title/research_manager,
JOB_ALT_HEAD_OF_DEVELOPMENT = /datum/alt_title/head_of_development,JOB_ALT_HEAD_SCIENTIST = /datum/alt_title/head_scientist)
/datum/job/rd/get_request_reasons()
return list("Repairs needed", "Training crew", "Assembling expedition team")
// " + JOB_RESEARCH_DIRECTOR + " Alt Titles
/datum/alt_title/research_supervisor
title = JOB_ALT_RESEARCH_SUPERVISOR
/datum/alt_title/research_manager
title = JOB_ALT_RESEARCH_MANAGER
/datum/alt_title/head_of_development
title = JOB_ALT_HEAD_OF_DEVELOPMENT
/datum/alt_title/head_scientist
title = JOB_ALT_HEAD_SCIENTIST
//////////////////////////////////
// Scientist
//////////////////////////////////
@@ -53,11 +68,12 @@
department_flag = MEDSCI
faction = FACTION_STATION
total_positions = 5
spawn_positions = 3
spawn_positions = 5
pto_type = PTO_SCIENCE
supervisors = "the " + JOB_RESEARCH_DIRECTOR
selection_color = "#633D63"
economic_modifier = 7
access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch)
access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch, access_xenobotany)
minimal_access = list(access_tox, access_tox_storage, access_research, access_xenoarch)
min_age_by_species = list(SPECIES_PROMETHEAN = 2)
banned_job_species = list("digital")
@@ -68,8 +84,12 @@
job_description = "A " + JOB_SCIENTIST + " is a generalist working in the Research department, with general knowledge of the scientific process, as well as \
the principles and requirements of Research and Development. They may also formulate experiments of their own devising, if \
they find an appropriate topic."
alt_titles = list(JOB_ALT_XENOARCHAEOLOGIST = /datum/alt_title/xenoarch, JOB_ALT_ANOMALIST = /datum/alt_title/anomalist, \
JOB_ALT_PHORON_RESEARCHER = /datum/alt_title/phoron_research)
alt_titles = list(JOB_ALT_RESEARCHER = /datum/alt_title/researcher, JOB_ALT_LAB_ASSISTANT = /datum/alt_title/lab_assistant, JOB_ALT_XENOARCHAEOLOGIST = /datum/alt_title/xenoarch,
JOB_ALT_XENOPALEONTOLOGIST = /datum/alt_title/xenopaleontologist, JOB_ALT_ANOMALIST = /datum/alt_title/anomalist, JOB_ALT_PHORON_RESEARCHER = /datum/alt_title/phoron_research,
JOB_ALT_GAS_PHYSICIST = /datum/alt_title/gas_physicist, JOB_ALT_CIRCUIT_DESIGNER = /datum/alt_title/circuit_designer, JOB_ALT_CIRCUIT_PROGRAMMER = /datum/alt_title/circuit_programmer)
/datum/job/scientist/get_request_reasons()
return list("Assembling expedition team")
// Scientist Alt Titles
/datum/alt_title/xenoarch
@@ -88,6 +108,35 @@
Many " + JOB_ALT_PHORON_RESEARCHER + "s are interested in the combustability and explosive properties of gaseous phoron, as well as the specific hazards \
of working with the substance in that state."
/datum/alt_title/researcher
title = JOB_ALT_RESEARCHER
/datum/alt_title/lab_assistant
title = JOB_ALT_LAB_ASSISTANT
title_blurb = "A " + JOB_ALT_LAB_ASSISTANT + " is a lower-level member of research staff, whose main purpose is to help scientists with their specialized work in more menial fashion, while also \
learning the specializations in process."
/datum/alt_title/xenopaleontologist
title = JOB_ALT_XENOPALEONTOLOGIST
title_blurb = "A " + JOB_ALT_XENOPALEONTOLOGIST + " enters digsites in search of fossils and other ancient remants of alien life. These digsites are frequently in vacuum or other inhospitable \
locations, and as such a " + JOB_ALT_XENOPALEONTOLOGIST + " should be prepared to handle hostile evironmental conditions."
/datum/alt_title/gas_physicist
title = JOB_ALT_GAS_PHYSICIST
title_blurb = "A " + JOB_ALT_GAS_PHYSICIST + " is a specialist in various practical applications of gasses, but currently focuses their attention on phoron, and has knowledge of its practical uses and dangers. \
Many " + JOB_ALT_GAS_PHYSICIST + "s are interested in the combustability and explosive properties of gaseous phoron, as well as the specific hazards \
of working with the substance in that state."
/datum/alt_title/circuit_designer
title = JOB_ALT_CIRCUIT_DESIGNER
title_blurb = "A " + JOB_ALT_CIRCUIT_DESIGNER + " is a " + JOB_SCIENTIST + " whose expertise is working with integrated circuits. They are familar with the workings and programming of those devices. \
They work to create various useful devices using the capabilities of integrated circuitry."
/datum/alt_title/circuit_programmer
title = JOB_ALT_CIRCUIT_PROGRAMMER
title_blurb = "A " + JOB_ALT_CIRCUIT_PROGRAMMER + " is a " + JOB_SCIENTIST + " whose expertise is working with integrated circuits. They are familar with the workings and programming of those devices. \
They work to create various useful devices using the capabilities of integrated circuitry."
//////////////////////////////////
// Xenobiologist
//////////////////////////////////
@@ -98,7 +147,8 @@
department_flag = MEDSCI
faction = FACTION_STATION
total_positions = 3
spawn_positions = 2
spawn_positions = 3
pto_type = PTO_SCIENCE
supervisors = "the " + JOB_RESEARCH_DIRECTOR
selection_color = "#633D63"
economic_modifier = 7
@@ -112,15 +162,21 @@
outfit_type = /decl/hierarchy/outfit/job/science/xenobiologist
job_description = "A " + JOB_XENOBIOLOGIST + " studies esoteric lifeforms, usually in the relative safety of their lab. They attempt to find ways to benefit \
from the byproducts of these lifeforms, and their main subject at present is the Giant Slime."
/*VR edit start
alt_titles = list(JOB_XENOBOTANIST = /datum/alt_title/xenobot)
Xenibiologist Alt Titles
alt_titles = list(JOB_ALT_XENOZOOLOGIST = /datum/alt_title/xenozoologist, JOB_ALT_XENOANTHROPOLOGIST = /datum/alt_title/xenoanthropologist)
// Xenobiologist Alt Titles
/datum/alt_title/xenobot
title = JOB_XENOBOTANIST
title_blurb = "A " + JOB_XENOBOTANIST + " grows and cares for a variety of abnormal, custom made, and frequently dangerous plant life. When the products of these plants \
is both safe and beneficial to the station, they may choose to introduce it to the rest of the crew."
VR edit end*/
/datum/alt_title/xenozoologist
title = JOB_ALT_XENOZOOLOGIST
/datum/alt_title/xenoanthropologist
title = JOB_ALT_XENOANTHROPOLOGIST
title_blurb = JOB_ALT_XENOANTHROPOLOGIST + " still heavily focuses their study on alien lifeforms, but their specialty leans more towards fellow sapient beings than simple animals."
//////////////////////////////////
// Roboticist
@@ -131,8 +187,9 @@ VR edit end*/
departments = list(DEPARTMENT_RESEARCH)
department_flag = MEDSCI
faction = FACTION_STATION
total_positions = 2
total_positions = 3
spawn_positions = 2
pto_type = PTO_SCIENCE
supervisors = "the " + JOB_RESEARCH_DIRECTOR
selection_color = "#633D63"
economic_modifier = 5
@@ -145,7 +202,14 @@ VR edit end*/
outfit_type = /decl/hierarchy/outfit/job/science/roboticist
job_description = "A " + JOB_ROBOTICIST + " maintains and repairs the station's synthetics, including crew with prosthetic limbs. \
They can also assist the station by producing simple robots and even pilotable exosuits."
alt_titles = list(JOB_ALT_BIOMECHANICAL_ENGINEER = /datum/alt_title/biomech, JOB_ALT_MECHATRONIC_ENGINEER = /datum/alt_title/mech_tech)
alt_titles = list(
JOB_ALT_ASSEMBLY_TECHNICIAN = /datum/alt_title/assembly_tech,
JOB_ALT_BIOMECHANICAL_ENGINEER = /datum/alt_title/biomech,
JOB_ALT_MECHATRONIC_ENGINEER = /datum/alt_title/mech_tech,
JOB_ALT_SOFTWARE_ENGINEER = /datum/alt_title/software_engi)
/datum/job/roboticist/get_request_reasons()
return list("Repairs needed")
// Roboticist Alt Titles
/datum/alt_title/biomech
@@ -157,3 +221,41 @@ VR edit end*/
title = JOB_ALT_MECHATRONIC_ENGINEER
title_blurb = "A " + JOB_ALT_MECHATRONIC_ENGINEER + " focuses on the construction and maintenance of Exosuits, and should be well versed in their use. \
They may also be called upon to work on synthetics and prosthetics, if needed."
/datum/alt_title/software_engi
title = JOB_ALT_SOFTWARE_ENGINEER
title_blurb = "A " + JOB_ALT_SOFTWARE_ENGINEER + " specializes in working with software and firmware. They also often deal with integrated circuits."
/datum/alt_title/assembly_tech
title = JOB_ALT_ASSEMBLY_TECHNICIAN
//////////////////////////////////
// Xenobotanist
//////////////////////////////////
/datum/job/xenobotanist
title = JOB_XENOBOTANIST
flag = XENOBOTANIST
departments = list(DEPARTMENT_RESEARCH)
department_flag = MEDSCI
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
supervisors = "the " + JOB_RESEARCH_DIRECTOR
selection_color = "#633D63"
economic_modifier = 7
access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobotany, access_hydroponics)
minimal_access = list(access_research, access_xenobotany, access_hydroponics, access_tox_storage)
pto_type = PTO_SCIENCE
minimal_player_age = 14
outfit_type = /decl/hierarchy/outfit/job/science/xenobiologist
job_description = "A " + JOB_XENOBOTANIST + " grows and cares for a variety of abnormal, custom made, and frequently dangerous plant life. When the products of these plants \
are both safe and beneficial to the station, they may choose to introduce it to the rest of the crew."
alt_titles = list(JOB_ALT_XENOHYDROPONICIST = /datum/alt_title/xenohydroponicist, JOB_ALT_XENOFLORIST = /datum/alt_title/xenoflorist)
/datum/alt_title/xenoflorist
title = JOB_ALT_XENOFLORIST
/datum/alt_title/xenohydroponicist
title = JOB_ALT_XENOHYDROPONICIST
-134
View File
@@ -1,134 +0,0 @@
/datum/job/rd
disallow_jobhop = TRUE
pto_type = PTO_SCIENCE
dept_time_required = 60
access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue,
access_tox_storage, access_teleporter,
access_research, access_robotics, access_xenobiology, access_ai_upload, access_tech_storage,
access_RC_announce, access_keycard_auth, access_tcomsat, access_xenoarch, access_eva, access_network, access_xenobotany)
minimal_access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue,
access_tox_storage, access_teleporter,
access_research, access_robotics, access_xenobiology, access_ai_upload, access_tech_storage,
access_RC_announce, access_keycard_auth, access_tcomsat, access_gateway, access_xenoarch, access_eva, access_network, access_xenobotany)
alt_titles = list(JOB_ALT_RESEARCH_SUPERVISOR = /datum/alt_title/research_supervisor, JOB_ALT_RESEARCH_MANAGER = /datum/alt_title/research_manager,
JOB_ALT_HEAD_OF_DEVELOPMENT = /datum/alt_title/head_of_development,JOB_ALT_HEAD_SCIENTIST = /datum/alt_title/head_scientist)
/datum/alt_title/research_manager
title = JOB_ALT_RESEARCH_MANAGER
/datum/alt_title/head_of_development
title = JOB_ALT_HEAD_OF_DEVELOPMENT
/datum/alt_title/head_scientist
title = JOB_ALT_HEAD_SCIENTIST
/datum/job/rd/get_request_reasons()
return list("Repairs needed", "Training crew", "Assembling expedition team")
/datum/job/scientist
spawn_positions = 5
pto_type = PTO_SCIENCE
alt_titles = list(JOB_ALT_RESEARCHER = /datum/alt_title/researcher, JOB_ALT_LAB_ASSISTANT = /datum/alt_title/lab_assistant, JOB_ALT_XENOARCHAEOLOGIST = /datum/alt_title/xenoarch,
JOB_ALT_XENOPALEONTOLOGIST = /datum/alt_title/xenopaleontologist, JOB_ALT_ANOMALIST = /datum/alt_title/anomalist, JOB_ALT_PHORON_RESEARCHER = /datum/alt_title/phoron_research,
JOB_ALT_GAS_PHYSICIST = /datum/alt_title/gas_physicist, JOB_ALT_CIRCUIT_DESIGNER = /datum/alt_title/circuit_designer, JOB_ALT_CIRCUIT_PROGRAMMER = /datum/alt_title/circuit_programmer)
access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch, access_xenobotany)
minimal_access = list(access_tox, access_tox_storage, access_research, access_xenoarch) // Unchanged (for now?), mostly here for reference
/datum/alt_title/researcher
title = JOB_ALT_RESEARCHER
/datum/alt_title/lab_assistant
title = JOB_ALT_LAB_ASSISTANT
title_blurb = "A " + JOB_ALT_LAB_ASSISTANT + " is a lower-level member of research staff, whose main purpose is to help scientists with their specialized work in more menial fashion, while also \
learning the specializations in process."
/datum/alt_title/xenopaleontologist
title = JOB_ALT_XENOPALEONTOLOGIST
title_blurb = "A " + JOB_ALT_XENOPALEONTOLOGIST + " enters digsites in search of fossils and other ancient remants of alien life. These digsites are frequently in vacuum or other inhospitable \
locations, and as such a " + JOB_ALT_XENOPALEONTOLOGIST + " should be prepared to handle hostile evironmental conditions."
/datum/alt_title/gas_physicist
title = JOB_ALT_GAS_PHYSICIST
title_blurb = "A " + JOB_ALT_GAS_PHYSICIST + " is a specialist in various practical applications of gasses, but currently focuses their attention on phoron, and has knowledge of its practical uses and dangers. \
Many " + JOB_ALT_GAS_PHYSICIST + "s are interested in the combustability and explosive properties of gaseous phoron, as well as the specific hazards \
of working with the substance in that state."
/datum/alt_title/circuit_designer
title = JOB_ALT_CIRCUIT_DESIGNER
title_blurb = "A " + JOB_ALT_CIRCUIT_DESIGNER + " is a " + JOB_SCIENTIST + " whose expertise is working with integrated circuits. They are familar with the workings and programming of those devices. \
They work to create various useful devices using the capabilities of integrated circuitry."
/datum/alt_title/circuit_programmer
title = JOB_ALT_CIRCUIT_PROGRAMMER
title_blurb = "A " + JOB_ALT_CIRCUIT_PROGRAMMER + " is a " + JOB_SCIENTIST + " whose expertise is working with integrated circuits. They are familar with the workings and programming of those devices. \
They work to create various useful devices using the capabilities of integrated circuitry."
/datum/job/scientist/get_request_reasons()
return list("Assembling expedition team")
/datum/job/xenobiologist
spawn_positions = 3
pto_type = PTO_SCIENCE
alt_titles = list(JOB_ALT_XENOZOOLOGIST = /datum/alt_title/xenozoologist, JOB_ALT_XENOANTHROPOLOGIST = /datum/alt_title/xenoanthropologist)
/datum/alt_title/xenozoologist
title = JOB_ALT_XENOZOOLOGIST
/datum/alt_title/xenoanthropologist
title = JOB_ALT_XENOANTHROPOLOGIST
title_blurb = JOB_ALT_XENOANTHROPOLOGIST + " still heavily focuses their study on alien lifeforms, but their specialty leans more towards fellow sapient beings than simple animals."
/datum/job/roboticist
total_positions = 3
pto_type = PTO_SCIENCE
alt_titles = list(
JOB_ALT_ASSEMBLY_TECHNICIAN = /datum/alt_title/assembly_tech,
JOB_ALT_BIOMECHANICAL_ENGINEER = /datum/alt_title/biomech,
JOB_ALT_MECHATRONIC_ENGINEER = /datum/alt_title/mech_tech,
JOB_ALT_SOFTWARE_ENGINEER = /datum/alt_title/software_engi)
/datum/alt_title/software_engi
title = JOB_ALT_SOFTWARE_ENGINEER
title_blurb = "A " + JOB_ALT_SOFTWARE_ENGINEER + " specializes in working with software and firmware. They also often deal with integrated circuits."
/datum/alt_title/assembly_tech
title = JOB_ALT_ASSEMBLY_TECHNICIAN
/datum/job/roboticist/get_request_reasons()
return list("Repairs needed")
//////////////////////////////////
// Xenobotanist
//////////////////////////////////
/datum/job/xenobotanist
title = JOB_XENOBOTANIST
flag = XENOBOTANIST
departments = list(DEPARTMENT_RESEARCH)
department_flag = MEDSCI
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
supervisors = "the " + JOB_RESEARCH_DIRECTOR
selection_color = "#633D63"
economic_modifier = 7
access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobotany, access_hydroponics)
minimal_access = list(access_research, access_xenobotany, access_hydroponics, access_tox_storage)
pto_type = PTO_SCIENCE
minimal_player_age = 14
outfit_type = /decl/hierarchy/outfit/job/science/xenobiologist
job_description = "A " + JOB_XENOBOTANIST + " grows and cares for a variety of abnormal, custom made, and frequently dangerous plant life. When the products of these plants \
are both safe and beneficial to the station, they may choose to introduce it to the rest of the crew."
alt_titles = list(JOB_ALT_XENOHYDROPONICIST = /datum/alt_title/xenohydroponicist, JOB_ALT_XENOFLORIST = /datum/alt_title/xenoflorist)
/datum/alt_title/xenoflorist
title = JOB_ALT_XENOFLORIST
/datum/alt_title/xenohydroponicist
title = JOB_ALT_XENOHYDROPONICIST
+62 -12
View File
@@ -16,26 +16,31 @@
req_admin_notify = 1
economic_modifier = 10
access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory,
access_forensics_lockers, access_morgue, access_maint_tunnels, access_all_personal_lockers,
access_research, access_engine, access_mining, access_medical, access_construction, access_mailsorting,
access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks)
access_forensics_lockers, access_morgue, access_maint_tunnels, access_all_personal_lockers,
access_construction,
access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks)
minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory,
access_forensics_lockers, access_morgue, access_maint_tunnels, access_all_personal_lockers,
access_research, access_engine, access_mining, access_medical, access_construction, access_mailsorting,
access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks)
access_forensics_lockers, access_morgue, access_maint_tunnels, access_all_personal_lockers,
access_construction,
access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks)
minimum_character_age = 25
min_age_by_species = list(SPECIES_HUMAN_VATBORN = 14)
minimal_player_age = 14
ideal_character_age = 50
ideal_age_by_species = list(SPECIES_HUMAN_VATBORN = 20)
banned_job_species = list(SPECIES_TESHARI, SPECIES_DIONA, SPECIES_PROMETHEAN, SPECIES_ZADDAT, "digital", SPECIES_UNATHI, "mechanical")
disallow_jobhop = TRUE
pto_type = PTO_SECURITY
dept_time_required = 60
outfit_type = /decl/hierarchy/outfit/job/security/hos
job_description = " The " + JOB_HEAD_OF_SECURITY + " manages the Security Department, keeping the station safe and making sure the rules are followed. They are expected to \
keep the other Department Heads, and the rest of the crew, aware of developing situations that may be a threat. If necessary, the HoS may \
perform the duties of absent Security roles, such as distributing gear from the Armory."
alt_titles = list(JOB_ALT_SECURITY_COMMANDER = /datum/alt_title/sec_commander, JOB_ALT_CHIEF_OF_SECURITY = /datum/alt_title/sec_chief)
alt_titles = list(JOB_ALT_SECURITY_COMMANDER = /datum/alt_title/sec_commander, JOB_ALT_CHIEF_OF_SECURITY = /datum/alt_title/sec_chief, JOB_ALT_SECURITY_MANAGER = /datum/alt_title/security_manager)
/datum/job/hos/get_request_reasons()
return list("Wildlife management", "Forensic investigation", "Training crew", "Assembling expedition team")
// Head of Security Alt Titles
/datum/alt_title/sec_commander
@@ -44,6 +49,9 @@
/datum/alt_title/sec_chief
title = JOB_ALT_CHIEF_OF_SECURITY
/datum/alt_title/security_manager
title = JOB_ALT_SECURITY_MANAGER
//////////////////////////////////
// Warden
//////////////////////////////////
@@ -59,17 +67,32 @@
supervisors = "the " + JOB_HEAD_OF_SECURITY
selection_color = "#601C1C"
economic_modifier = 5
pto_type = PTO_SECURITY
dept_time_required = 20
access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_maint_tunnels, access_morgue, access_external_airlocks)
minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_maint_tunnels, access_external_airlocks)
minimal_player_age = 5
banned_job_species = list(SPECIES_ZADDAT, SPECIES_PROMETHEAN, SPECIES_TESHARI, SPECIES_DIONA)
alt_titles = list(JOB_ALT_BRIG_SENTRY = /datum/alt_title/brig_sentry, JOB_ALT_ARMORY_SUPERINTENDENT = /datum/alt_title/armory_superintendent, JOB_ALT_MASTERATARMS = /datum/alt_title/master_at_arms)
outfit_type = /decl/hierarchy/outfit/job/security/warden
job_description = "The " + JOB_WARDEN + " watches over the physical Security Department, making sure the Brig and Armoury are secure and in order at all times. They oversee \
prisoners that have been processed and brigged, and are responsible for their well being. The " + JOB_WARDEN + " is also in charge of distributing \
Armoury gear in a crisis, and retrieving it when the crisis has passed. In an emergency, the " + JOB_WARDEN + " may be called upon to direct the \
Security Department as a whole."
/datum/job/warden/get_request_reasons()
return list("Wildlife management")
//Warden Alt Titles
/datum/alt_title/brig_sentry
title = JOB_ALT_BRIG_SENTRY
/datum/alt_title/armory_superintendent
title = JOB_ALT_ARMORY_SUPERINTENDENT
/datum/alt_title/master_at_arms
title = JOB_ALT_MASTERATARMS
//////////////////////////////////
// Detective
//////////////////////////////////
@@ -81,6 +104,7 @@
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
pto_type = PTO_SECURITY
supervisors = "the " + JOB_HEAD_OF_SECURITY
selection_color = "#601C1C"
access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_eva, access_external_airlocks, access_brig) //Vorestation edit - access_brig
@@ -92,7 +116,10 @@
outfit_type = /decl/hierarchy/outfit/job/security/detective
job_description = "A " + JOB_DETECTIVE + " works to help Security find criminals who have not properly been identified, through interviews and forensic work. \
For crimes only witnessed after the fact, or those with no survivors, they attempt to piece together what they can from pure evidence."
alt_titles = list(JOB_ALT_FORENSIC_TECHNICIAN = /datum/alt_title/forensic_tech)
alt_titles = list(JOB_ALT_INVESTIGATOR = /datum/alt_title/investigator, JOB_ALT_SECURITY_INSPECTOR = /datum/alt_title/security_inspector, JOB_ALT_FORENSIC_TECHNICIAN = /datum/alt_title/forensic_tech)
/datum/job/detective/get_request_reasons()
return list("Forensic investigation")
// Detective Alt Titles
/datum/alt_title/forensic_tech
@@ -100,6 +127,12 @@
title_blurb = "A " + JOB_ALT_FORENSIC_TECHNICIAN + " works more with hard evidence and labwork than a " + JOB_DETECTIVE + ", but they share the purpose of solving crimes."
title_outfit = /decl/hierarchy/outfit/job/security/detective/forensic
/datum/alt_title/investigator
title = JOB_ALT_INVESTIGATOR
/datum/alt_title/security_inspector
title = JOB_ALT_SECURITY_INSPECTOR
//////////////////////////////////
// Security Officer
//////////////////////////////////
@@ -109,8 +142,9 @@
departments = list(DEPARTMENT_SECURITY)
department_flag = ENGSEC
faction = FACTION_STATION
total_positions = 4
spawn_positions = 4
total_positions = 5
spawn_positions = 5
pto_type = PTO_SECURITY
supervisors = "the " + JOB_HEAD_OF_SECURITY
selection_color = "#601C1C"
economic_modifier = 4
@@ -123,13 +157,29 @@
job_description = "A " + JOB_SECURITY_OFFICER + " is concerned with maintaining the safety and security of the station as a whole, dealing with external threats and \
apprehending criminals. A " + JOB_SECURITY_OFFICER + " is responsible for the health, safety, and processing of any prisoner they arrest. \
No one is above the Law, not Security or Command."
alt_titles = list(JOB_ALT_JUNIOR_OFFICER = /datum/alt_title/junior_officer)
alt_titles = list(JOB_ALT_PATROL_OFFICER = /datum/alt_title/patrol_officer, JOB_ALT_SECURITY_GUARD = /datum/alt_title/security_guard,
JOB_ALT_SECURITY_DEPUTY = /datum/alt_title/security_guard, JOB_ALT_JUNIOR_OFFICER = /datum/alt_title/junior_officer, JOB_ALT_SECURITY_CONTRACTOR = /datum/alt_title/security_contractor)
min_age_by_species = list(SPECIES_PROMETHEAN = 3)
/datum/job/officer/get_request_reasons()
return list("Wildlife management", "Assembling expedition team")
// Security Officer Alt Titles
/datum/alt_title/junior_officer
title = JOB_ALT_JUNIOR_OFFICER
title_blurb = "A " + JOB_ALT_JUNIOR_OFFICER + " is an inexperienced " + JOB_SECURITY_OFFICER + ". They likely have training, but not experience, and are frequently \
paired off with a more senior co-worker. Junior Officers may also be expected to take over the boring duties of other Officers \
including patrolling the station or maintaining specific posts."
/datum/alt_title/patrol_officer
title = JOB_ALT_PATROL_OFFICER
/datum/alt_title/security_guard
title = JOB_ALT_SECURITY_GUARD
/datum/alt_title/security_deputy
title = JOB_ALT_SECURITY_DEPUTY
/datum/alt_title/security_contractor
title = JOB_ALT_SECURITY_CONTRACTOR
-75
View File
@@ -1,75 +0,0 @@
/datum/job/hos
disallow_jobhop = TRUE
pto_type = PTO_SECURITY
dept_time_required = 60
access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory,
access_forensics_lockers, access_morgue, access_maint_tunnels, access_all_personal_lockers,
access_construction,
access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks)
minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory,
access_forensics_lockers, access_morgue, access_maint_tunnels, access_all_personal_lockers,
access_construction,
access_heads, access_hos, access_RC_announce, access_keycard_auth, access_gateway, access_external_airlocks)
alt_titles = list(JOB_ALT_SECURITY_COMMANDER = /datum/alt_title/sec_commander, JOB_ALT_CHIEF_OF_SECURITY = /datum/alt_title/sec_chief, JOB_ALT_SECURITY_MANAGER = /datum/alt_title/security_manager)
/datum/alt_title/security_manager
title = JOB_ALT_SECURITY_MANAGER
/datum/job/hos/get_request_reasons()
return list("Wildlife management", "Forensic investigation", "Training crew", "Assembling expedition team")
/datum/job/warden
pto_type = PTO_SECURITY
dept_time_required = 20
alt_titles = list(JOB_ALT_BRIG_SENTRY = /datum/alt_title/brig_sentry, JOB_ALT_ARMORY_SUPERINTENDENT = /datum/alt_title/armory_superintendent, JOB_ALT_MASTERATARMS = /datum/alt_title/master_at_arms)
/datum/alt_title/brig_sentry
title = JOB_ALT_BRIG_SENTRY
/datum/alt_title/armory_superintendent
title = JOB_ALT_ARMORY_SUPERINTENDENT
/datum/alt_title/master_at_arms
title = JOB_ALT_MASTERATARMS
/datum/job/warden/get_request_reasons()
return list("Wildlife management")
/datum/job/detective
pto_type = PTO_SECURITY
alt_titles = list(JOB_ALT_INVESTIGATOR = /datum/alt_title/investigator, JOB_ALT_SECURITY_INSPECTOR = /datum/alt_title/security_inspector, JOB_ALT_FORENSIC_TECHNICIAN = /datum/alt_title/forensic_tech)
/datum/alt_title/investigator
title = JOB_ALT_INVESTIGATOR
/datum/alt_title/security_inspector
title = JOB_ALT_SECURITY_INSPECTOR
/datum/job/detective/get_request_reasons()
return list("Forensic investigation")
/datum/job/officer
total_positions = 5
spawn_positions = 5
pto_type = PTO_SECURITY
alt_titles = list(JOB_ALT_PATROL_OFFICER = /datum/alt_title/patrol_officer, JOB_ALT_SECURITY_GUARD = /datum/alt_title/security_guard,
JOB_ALT_SECURITY_DEPUTY = /datum/alt_title/security_guard, JOB_ALT_JUNIOR_OFFICER = /datum/alt_title/junior_officer, JOB_ALT_SECURITY_CONTRACTOR = /datum/alt_title/security_contractor)
/datum/alt_title/patrol_officer
title = JOB_ALT_PATROL_OFFICER
/datum/alt_title/security_guard
title = JOB_ALT_SECURITY_GUARD
/datum/alt_title/security_deputy
title = JOB_ALT_SECURITY_DEPUTY
/datum/alt_title/security_contractor
title = JOB_ALT_SECURITY_CONTRACTOR
/datum/job/officer/get_request_reasons()
return list("Wildlife management", "Assembling expedition team")
+6 -2
View File
@@ -19,6 +19,8 @@
has_headset = FALSE
assignable = FALSE
mob_type = JOB_SILICON_AI
disallow_jobhop = TRUE
pto_type = PTO_CIVILIAN
outfit_type = /decl/hierarchy/outfit/job/silicon/ai
job_description = "The " + JOB_AI + " oversees the operation of the station and its crew, but has no real authority over them. \
The " + JOB_AI + " is required to follow its Laws, and Lawbound Synthetics that are linked to it are expected to follow \
@@ -46,8 +48,10 @@
departments = list(DEPARTMENT_SYNTHETIC)
department_flag = ENGSEC
faction = FACTION_STATION
total_positions = 2
spawn_positions = 2
pto_type = PTO_CYBORG
minimal_player_age = 3 //1 day is a little too little time
total_positions = 4 //Along with one able to spawn later in the round.
spawn_positions = 3 //Let's have 3 able to spawn in roundstart
supervisors = "your Laws and the " + JOB_AI //Nodrak
selection_color = "#254C25"
minimal_player_age = 1
-9
View File
@@ -1,9 +0,0 @@
/datum/job/ai
disallow_jobhop = TRUE
pto_type = PTO_CIVILIAN
/datum/job/cyborg
pto_type = PTO_CYBORG
minimal_player_age = 3 //1 day is a little too little time
total_positions = 4 //Along with one able to spawn later in the round.
spawn_positions = 3 //Let's have 3 able to spawn in roundstart
+3 -12
View File
@@ -901,28 +901,19 @@
#include "code\game\jobs\whitelist_vr.dm"
#include "code\game\jobs\job\_alt_title.dm"
#include "code\game\jobs\job\assistant.dm"
#include "code\game\jobs\job\assistant_vr.dm"
#include "code\game\jobs\job\captain.dm"
#include "code\game\jobs\job\captain_vr.dm"
#include "code\game\jobs\job\cargo.dm"
#include "code\game\jobs\job\civilian.dm"
#include "code\game\jobs\job\civilian_chaplain.dm"
#include "code\game\jobs\job\civilian_vr.dm"
#include "code\game\jobs\job\department.dm"
#include "code\game\jobs\job\department_vr.dm"
#include "code\game\jobs\job\engineering.dm"
#include "code\game\jobs\job\engineering_vr.dm"
#include "code\game\jobs\job\job.dm"
#include "code\game\jobs\job\job_vr.dm"
#include "code\game\jobs\job\medical.dm"
#include "code\game\jobs\job\medical_vr.dm"
#include "code\game\jobs\job\offduty_vr.dm"
#include "code\game\jobs\job\offduty.dm"
#include "code\game\jobs\job\science.dm"
#include "code\game\jobs\job\science_vr.dm"
#include "code\game\jobs\job\security.dm"
#include "code\game\jobs\job\security_vr.dm"
#include "code\game\jobs\job\silicon.dm"
#include "code\game\jobs\job\silicon_vr.dm"
#include "code\game\jobs\job\special_vr.dm"
#include "code\game\jobs\job\special.dm"
#include "code\game\machinery\adv_med.dm"
#include "code\game\machinery\adv_med_vr.dm"
#include "code\game\machinery\ai_slipper.dm"