push
This commit is contained in:
@@ -76,6 +76,9 @@
|
||||
|
||||
var/bounty_types = CIV_JOB_BASIC
|
||||
|
||||
///Bitfield of departments this job belongs wit
|
||||
var/departments = NONE
|
||||
|
||||
/// Goodies that can be received via the mail system.
|
||||
// this is a weighted list.
|
||||
/// Keep the _job definition for this empty and use /obj/item/mail to define general gifts.
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
exp_type_department = EXP_TYPE_SILICON
|
||||
display_order = JOB_DISPLAY_ORDER_AI
|
||||
allow_bureaucratic_error = FALSE
|
||||
departments = DEPARTMENT_BITFLAG_SILICON
|
||||
random_spawns_possible = FALSE
|
||||
var/do_special_check = TRUE
|
||||
threat = 5
|
||||
|
||||
@@ -16,6 +16,7 @@ Assistant
|
||||
antag_rep = 7
|
||||
paycheck = PAYCHECK_ASSISTANT // Get a job. Job reassignment changes your paycheck now. Get over it.
|
||||
paycheck_department = ACCOUNT_CIV
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
display_order = JOB_DISPLAY_ORDER_ASSISTANT
|
||||
dresscodecompliant = FALSE
|
||||
always_can_respawn_as = TRUE
|
||||
|
||||
@@ -21,12 +21,13 @@
|
||||
paycheck = PAYCHECK_MEDIUM
|
||||
paycheck_department = ACCOUNT_ENG
|
||||
bounty_types = CIV_JOB_ENG
|
||||
departments = DEPARTMENT_BITFLAG_ENGINEERING
|
||||
|
||||
starting_modifiers = list(/datum/skill_modifier/job/level/wiring, /datum/skill_modifier/job/affinity/wiring)
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_ATMOSPHERIC_TECHNICIAN
|
||||
threat = 0.5
|
||||
|
||||
|
||||
family_heirlooms = list(
|
||||
/obj/item/lighter,
|
||||
/obj/item/lighter/greyscale,
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
paycheck = PAYCHECK_EASY
|
||||
paycheck_department = ACCOUNT_SRV
|
||||
bounty_types = CIV_JOB_DRINK
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
display_order = JOB_DISPLAY_ORDER_BARTENDER
|
||||
threat = 0.5
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
paycheck = PAYCHECK_EASY
|
||||
paycheck_department = ACCOUNT_SRV
|
||||
bounty_types = CIV_JOB_GROW
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
display_order = JOB_DISPLAY_ORDER_BOTANIST
|
||||
threat = 1.5 // lol powergame
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
mind_traits = list(TRAIT_CAPTAIN_METABOLISM, TRAIT_DISK_VERIFIER)
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_CAPTAIN
|
||||
departments = DEPARTMENT_BITFLAG_COMMAND
|
||||
|
||||
blacklisted_quirks = list(/datum/quirk/mute, /datum/quirk/brainproblems, /datum/quirk/insanity)
|
||||
threat = 5
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_CARGO_TECHNICIAN
|
||||
bounty_types = CIV_JOB_RANDOM
|
||||
departments = DEPARTMENT_BITFLAG_CARGO
|
||||
threat = 0.2
|
||||
|
||||
family_heirlooms = list(
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
paycheck_department = ACCOUNT_CIV
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_CHAPLAIN
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
threat = 0.5
|
||||
|
||||
family_heirlooms = list(
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
paycheck = PAYCHECK_MEDIUM
|
||||
paycheck_department = ACCOUNT_MED
|
||||
bounty_types = CIV_JOB_CHEM
|
||||
departments = DEPARTMENT_BITFLAG_MEDICAL
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_CHEMIST
|
||||
threat = 1.5
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
considered_combat_role = TRUE
|
||||
|
||||
outfit = /datum/outfit/job/ce
|
||||
departments = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_COMMAND
|
||||
plasma_outfit = /datum/outfit/plasmaman/ce
|
||||
|
||||
access = list(ACCESS_ENGINE, ACCESS_ENGINE_EQUIP, ACCESS_TECH_STORAGE, ACCESS_MAINT_TUNNELS,
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
considered_combat_role = TRUE
|
||||
|
||||
outfit = /datum/outfit/job/cmo
|
||||
departments = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_COMMAND
|
||||
plasma_outfit = /datum/outfit/plasmaman/cmo
|
||||
|
||||
access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_HEADS, ACCESS_MINERAL_STOREROOM,
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
selection_color = "#dddddd"
|
||||
|
||||
outfit = /datum/outfit/job/clown
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
plasma_outfit = /datum/outfit/plasmaman/clown
|
||||
|
||||
access = list(ACCESS_THEATRE)
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
paycheck = PAYCHECK_EASY
|
||||
paycheck_department = ACCOUNT_SRV
|
||||
bounty_types = CIV_JOB_CHEF
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_COOK
|
||||
threat = 0.2
|
||||
|
||||
@@ -18,8 +18,9 @@
|
||||
paycheck_department = ACCOUNT_CIV
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_CURATOR
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
threat = 0.3
|
||||
|
||||
|
||||
family_heirlooms = list(
|
||||
/obj/item/pen/fountain,
|
||||
/obj/item/storage/dice
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
starting_modifiers = list(/datum/skill_modifier/job/level/wiring/basic)
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_CYBORG
|
||||
departments = DEPARTMENT_BITFLAG_SILICON
|
||||
|
||||
/datum/job/cyborg/equip(mob/living/carbon/human/H, visualsOnly = FALSE, announce = TRUE, latejoin = FALSE, datum/outfit/outfit_override = null, client/preference_source = null)
|
||||
if(visualsOnly)
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
exp_type = EXP_TYPE_CREW
|
||||
|
||||
outfit = /datum/outfit/job/detective
|
||||
departments = DEPARTMENT_BITFLAG_SECURITY
|
||||
plasma_outfit = /datum/outfit/plasmaman/detective
|
||||
considered_combat_role = TRUE
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
exp_requirements = 60
|
||||
|
||||
outfit = /datum/outfit/job/geneticist
|
||||
departments = DEPARTMENT_BITFLAG_MEDICAL
|
||||
plasma_outfit = /datum/outfit/plasmaman/genetics
|
||||
|
||||
access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_CHEMISTRY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_RESEARCH, ACCESS_XENOBIOLOGY, ACCESS_ROBOTICS, ACCESS_MINERAL_STOREROOM, ACCESS_TECH_STORAGE)
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
exp_type_department = EXP_TYPE_SERVICE
|
||||
considered_combat_role = TRUE
|
||||
outfit = /datum/outfit/job/hop
|
||||
departments = DEPARTMENT_BITFLAG_COMMAND | DEPARTMENT_BITFLAG_SERVICE
|
||||
plasma_outfit = /datum/outfit/plasmaman/hop
|
||||
|
||||
access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_COURT, ACCESS_WEAPONS,
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
exp_type_department = EXP_TYPE_SECURITY
|
||||
|
||||
outfit = /datum/outfit/job/hos
|
||||
departments = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_COMMAND
|
||||
plasma_outfit = /datum/outfit/plasmaman/hos
|
||||
|
||||
mind_traits = list(TRAIT_LAW_ENFORCEMENT_METABOLISM)
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
paycheck_department = ACCOUNT_SRV
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_JANITOR
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
threat = 0.2
|
||||
|
||||
family_heirlooms = list(
|
||||
|
||||
@@ -21,8 +21,9 @@
|
||||
mind_traits = list(TRAIT_LAW_ENFORCEMENT_METABOLISM)
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_LAWYER
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
threat = 0.3
|
||||
|
||||
|
||||
family_heirlooms = list(
|
||||
/obj/item/gavelhammer,
|
||||
/obj/item/book/manual/wiki/security_space_law
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
selection_color = "#74b5e0"
|
||||
|
||||
outfit = /datum/outfit/job/doctor
|
||||
departments = DEPARTMENT_BITFLAG_MEDICAL
|
||||
plasma_outfit = /datum/outfit/plasmaman/medical
|
||||
|
||||
access = list(ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SURGERY, ACCESS_CHEMISTRY, ACCESS_GENETICS, ACCESS_CLONING, ACCESS_VIROLOGY, ACCESS_MINERAL_STOREROOM)
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
paycheck_department = ACCOUNT_SRV
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_MIME
|
||||
departments = DEPARTMENT_BITFLAG_SERVICE
|
||||
|
||||
threat = 0
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
paycheck = PAYCHECK_MEDIUM
|
||||
paycheck_department = ACCOUNT_MED
|
||||
bounty_types = CIV_JOB_MED
|
||||
departments = DEPARTMENT_BITFLAG_MEDICAL
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_PARAMEDIC
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
plasma_outfit = /datum/outfit/plasmaman/prisoner
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_PRISONER
|
||||
departments = DEPARTMENT_BITFLAG_SECURITY
|
||||
|
||||
family_heirlooms = list(
|
||||
/obj/item/pen/blue
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
paycheck = PAYCHECK_HARD //They can already buy stuff using cargo budget, don't give em a command-level paycheck. //alright i'll agree to that -qweq
|
||||
paycheck_department = ACCOUNT_CAR
|
||||
bounty_types = CIV_JOB_RANDOM
|
||||
departments = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_COMMAND
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_QUARTERMASTER
|
||||
blacklisted_quirks = list(/datum/quirk/mute, /datum/quirk/brainproblems, /datum/quirk/insanity)
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
considered_combat_role = TRUE
|
||||
|
||||
outfit = /datum/outfit/job/rd
|
||||
departments = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_COMMAND
|
||||
plasma_outfit = /datum/outfit/plasmaman/rd
|
||||
|
||||
access = list(ACCESS_RD, ACCESS_HEADS, ACCESS_TOX, ACCESS_GENETICS, ACCESS_MORGUE,
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
exp_type = EXP_TYPE_CREW
|
||||
|
||||
outfit = /datum/outfit/job/roboticist
|
||||
departments = DEPARTMENT_BITFLAG_SCIENCE
|
||||
plasma_outfit = /datum/outfit/plasmaman/robotics
|
||||
|
||||
access = list(ACCESS_ROBOTICS, ACCESS_TOX, ACCESS_TOX_STORAGE, ACCESS_TECH_STORAGE, ACCESS_MORGUE, ACCESS_RESEARCH, ACCESS_MINERAL_STOREROOM, ACCESS_XENOBIOLOGY, ACCESS_GENETICS)
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
paycheck = PAYCHECK_MEDIUM
|
||||
paycheck_department = ACCOUNT_SCI
|
||||
bounty_types = CIV_JOB_SCI
|
||||
departments = DEPARTMENT_BITFLAG_SCIENCE
|
||||
starting_modifiers = list(/datum/skill_modifier/job/level/wiring/basic)
|
||||
display_order = JOB_DISPLAY_ORDER_SCIENTIST
|
||||
threat = 1.2
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
paycheck = PAYCHECK_HARD
|
||||
paycheck_department = ACCOUNT_SEC
|
||||
bounty_types = CIV_JOB_SEC
|
||||
departments = DEPARTMENT_BITFLAG_SECURITY
|
||||
|
||||
mind_traits = list(TRAIT_LAW_ENFORCEMENT_METABOLISM)
|
||||
|
||||
|
||||
@@ -20,11 +20,12 @@
|
||||
paycheck = PAYCHECK_EASY ///Not necessarily easy itself, but it can be trivial to make lot of cash on this job.
|
||||
paycheck_department = ACCOUNT_CAR
|
||||
bounty_types = CIV_JOB_MINE
|
||||
departments = DEPARTMENT_BITFLAG_CARGO
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_SHAFT_MINER
|
||||
|
||||
threat = 1.5
|
||||
|
||||
|
||||
family_heirlooms = list(
|
||||
/obj/item/pickaxe/mini,
|
||||
/obj/item/shovel
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
paycheck = PAYCHECK_MEDIUM
|
||||
paycheck_department = ACCOUNT_ENG
|
||||
bounty_types = CIV_JOB_ENG
|
||||
departments = DEPARTMENT_BITFLAG_ENGINEERING
|
||||
|
||||
starting_modifiers = list(/datum/skill_modifier/job/level/wiring, /datum/skill_modifier/job/affinity/wiring)
|
||||
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
paycheck = PAYCHECK_MEDIUM
|
||||
paycheck_department = ACCOUNT_MED
|
||||
bounty_types = CIV_JOB_VIRO
|
||||
departments = DEPARTMENT_BITFLAG_MEDICAL
|
||||
|
||||
display_order = JOB_DISPLAY_ORDER_VIROLOGIST
|
||||
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
paycheck = PAYCHECK_HARD
|
||||
paycheck_department = ACCOUNT_SEC
|
||||
bounty_types = CIV_JOB_SEC
|
||||
departments = DEPARTMENT_BITFLAG_SECURITY
|
||||
|
||||
mind_traits = list(TRAIT_LAW_ENFORCEMENT_METABOLISM)
|
||||
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
/datum/crew_manifest
|
||||
|
||||
/datum/crew_manifest/ui_state(mob/user)
|
||||
return GLOB.always_state
|
||||
|
||||
/datum/crew_manifest/ui_status(mob/user, datum/ui_state/state)
|
||||
return (isnewplayer(user) || isobserver(user) || isAI(user) || ispAI(user)) ? UI_INTERACTIVE : UI_CLOSE
|
||||
|
||||
/datum/crew_manifest/ui_interact(mob/user, datum/tgui/ui)
|
||||
ui = SStgui.try_update_ui(user, src, ui)
|
||||
if (!ui)
|
||||
ui = new(user, src, "CrewManifest")
|
||||
ui.open()
|
||||
|
||||
/datum/crew_manifest/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state)
|
||||
if (..())
|
||||
return
|
||||
|
||||
/datum/crew_manifest/ui_data(mob/user)
|
||||
var/list/positions = list(
|
||||
DEPARTMENT_COMMAND = 0,
|
||||
DEPARTMENT_SECURITY = 0,
|
||||
DEPARTMENT_ENGINEERING = 0,
|
||||
DEPARTMENT_MEDICAL = 0,
|
||||
DEPARTMENT_SCIENCE = 0,
|
||||
DEPARTMENT_CARGO = 0,
|
||||
DEPARTMENT_SERVICE = 0,
|
||||
DEPARTMENT_SILICON = 0
|
||||
)
|
||||
var/list/departments = list(
|
||||
list("flag" = DEPARTMENT_BITFLAG_COMMAND, "name" = DEPARTMENT_COMMAND),
|
||||
list("flag" = DEPARTMENT_BITFLAG_SECURITY, "name" = DEPARTMENT_SECURITY),
|
||||
list("flag" = DEPARTMENT_BITFLAG_ENGINEERING, "name" = DEPARTMENT_ENGINEERING),
|
||||
list("flag" = DEPARTMENT_BITFLAG_MEDICAL, "name" = DEPARTMENT_MEDICAL),
|
||||
list("flag" = DEPARTMENT_BITFLAG_SCIENCE, "name" = DEPARTMENT_SCIENCE),
|
||||
list("flag" = DEPARTMENT_BITFLAG_CARGO, "name" = DEPARTMENT_CARGO),
|
||||
list("flag" = DEPARTMENT_BITFLAG_SERVICE, "name" = DEPARTMENT_SERVICE),
|
||||
list("flag" = DEPARTMENT_BITFLAG_SILICON, "name" = DEPARTMENT_SILICON)
|
||||
)
|
||||
|
||||
for(var/datum/job/job in SSjob.occupations)
|
||||
for(var/department in departments)
|
||||
// Check if the job is part of a department using its flag
|
||||
// Will return true for Research Director if the department is Science or Command, for example
|
||||
if(job.departments & department["flag"])
|
||||
// Add open positions to current department
|
||||
positions[department["name"]] += (job.total_positions - job.current_positions)
|
||||
|
||||
return list(
|
||||
"manifest" = GLOB.data_core.get_manifest(),
|
||||
"positions" = positions
|
||||
)
|
||||
@@ -720,11 +720,10 @@
|
||||
return
|
||||
client.crew_manifest_delay = world.time + (1 SECONDS)
|
||||
|
||||
var/dat = "<html><head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8'></head><body>"
|
||||
dat += "<h4>Crew Manifest</h4>"
|
||||
dat += GLOB.data_core.get_manifest(OOC = 1)
|
||||
if(!GLOB.crew_manifest_tgui)
|
||||
GLOB.crew_manifest_tgui = new /datum/crew_manifest(src)
|
||||
|
||||
src << browse(dat, "window=manifest;size=387x420;can_close=1")
|
||||
GLOB.crew_manifest_tgui.ui_interact(src)
|
||||
|
||||
/mob/dead/new_player/Move()
|
||||
return FALSE
|
||||
|
||||
@@ -730,11 +730,10 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
return
|
||||
client.crew_manifest_delay = world.time + (1 SECONDS)
|
||||
|
||||
var/dat
|
||||
dat += "<h4>Crew Manifest</h4>"
|
||||
dat += GLOB.data_core.get_manifest()
|
||||
if(!GLOB.crew_manifest_tgui)
|
||||
GLOB.crew_manifest_tgui = new /datum/crew_manifest(src)
|
||||
|
||||
src << browse(dat, "window=manifest;size=387x420;can_close=1")
|
||||
GLOB.crew_manifest_tgui.ui_interact(src)
|
||||
|
||||
//this is called when a ghost is drag clicked to something.
|
||||
/mob/dead/observer/MouseDrop(atom/over)
|
||||
|
||||
@@ -413,13 +413,10 @@
|
||||
return
|
||||
client.crew_manifest_delay = world.time + (1 SECONDS)
|
||||
|
||||
var/dat = "<html><head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8'><title>Crew Roster</title></head><body><b>Crew Roster:</b><br><br>"
|
||||
if(!GLOB.crew_manifest_tgui)
|
||||
GLOB.crew_manifest_tgui = new /datum/crew_manifest(src)
|
||||
|
||||
dat += GLOB.data_core.get_manifest()
|
||||
dat += "</body></html>"
|
||||
|
||||
src << browse(dat, "window=airoster")
|
||||
onclose(src, "airoster")
|
||||
GLOB.crew_manifest_tgui.ui_interact(src)
|
||||
|
||||
/mob/living/silicon/update_transform(do_animate)
|
||||
var/matrix/ntransform = matrix(transform) //aka transform.Copy()
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
/datum/computer_file/program/crew_manifest/ui_static_data(mob/user)
|
||||
var/list/data = list()
|
||||
data["manifest"] = GLOB.data_core.get_manifest_tg()
|
||||
data["manifest"] = GLOB.data_core.get_manifest()
|
||||
return data
|
||||
|
||||
/datum/computer_file/program/crew_manifest/ui_data(mob/user)
|
||||
|
||||
Reference in New Issue
Block a user