Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Job renames + Department security removal + Belryth jobslots #610

Merged
merged 8 commits into from
Oct 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 10 additions & 13 deletions code/__DEFINES/jobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,11 @@
#define JOB_ASSISTANT "Assistant"
#define JOB_PRISONER "Prisoner"
//Command
#define JOB_CAPTAIN "Captain"
#define JOB_HEAD_OF_PERSONNEL "Head of Personnel"
#define JOB_HEAD_OF_SECURITY "Head of Security"
#define JOB_CHIEF_ENGINEER "Chief Engineer"
#define JOB_CHIEF_MEDICAL_OFFICER "Chief Medical Officer"
#define JOB_CAPTAIN "Shipmaster"
#define JOB_HEAD_OF_PERSONNEL "Executive Officer"
#define JOB_HEAD_OF_SECURITY "Colonel"
#define JOB_CHIEF_ENGINEER "Lead Technician"
#define JOB_CHIEF_MEDICAL_OFFICER "Head Physician"
#define JOB_PATHFINDER_LEAD "Lead Pathfinder"
#define JOB_INTERNAL_AFFAIRS_AGENT "Internal Affairs Agent"
//Silicon
Expand All @@ -53,23 +53,19 @@
#define JOB_WARDEN "Warden"
#define JOB_DETECTIVE "Detective"
#define JOB_SECURITY_OFFICER "Security Officer"
#define JOB_SECURITY_OFFICER_MEDICAL "Security Officer (Medical)"
#define JOB_SECURITY_OFFICER_ENGINEERING "Security Officer (Engineering)"
#define JOB_SECURITY_OFFICER_SCIENCE "Security Officer (Science)"
#define JOB_SECURITY_OFFICER_SUPPLY "Security Officer (Cargo)"
//Engineering
#define JOB_STATION_ENGINEER "Station Engineer"
#define JOB_STATION_ENGINEER "Technician"
#define JOB_ATMOSPHERIC_TECHNICIAN "Atmospheric Technician"
#define JOB_ROBOTICIST "Roboticist"
//Medical
#define JOB_MEDICAL_DOCTOR "Medical Doctor"
#define JOB_MEDICAL_DOCTOR "Physician"
#define JOB_PARAMEDIC "Paramedic"
#define JOB_CHEMIST "Chemist"
//Pathfinders
#define JOB_PATHFINDER "Pathfinder"
//Supply
#define JOB_QUARTERMASTER "Quartermaster"
#define JOB_CARGO_TECHNICIAN "Cargo Technician"
#define JOB_QUARTERMASTER "Logistics Manager"
#define JOB_CARGO_TECHNICIAN "Logistics Technician"
#define JOB_SHAFT_MINER "Shaft Miner"
//Service
#define JOB_BARTENDER "Bartender"
Expand Down Expand Up @@ -185,6 +181,7 @@
#define FACTION_NONE "None"
#define FACTION_STATION "Station"
#define FACTION_BEARCAT "Bearcat"
#define FACTION_BELRYTH "Belryth"
/// Special define that's PURPOSEFULLY NOT USED ANYWHERE BUT IN JOB DATUMS TO TEMPORARILY DISABLE JOBS.
#define FACTION_DISABLED "do not use"

Expand Down
30 changes: 0 additions & 30 deletions code/controllers/subsystem/ticker.dm
Original file line number Diff line number Diff line change
Expand Up @@ -354,10 +354,6 @@ SUBSYSTEM_DEF(ticker)


/datum/controller/subsystem/ticker/proc/equip_characters()
GLOB.security_officer_distribution = decide_security_officer_departments(
shuffle(GLOB.new_player_list),
shuffle(GLOB.available_depts),
)

var/captainless = TRUE

Expand Down Expand Up @@ -422,32 +418,6 @@ SUBSYSTEM_DEF(ticker)
to_chat(new_player_mob, span_notice("Captainship not forced on anyone."))
CHECK_TICK


/datum/controller/subsystem/ticker/proc/decide_security_officer_departments(
list/new_players,
list/departments,
)
var/list/officer_mobs = list()
var/list/officer_preferences = list()

for (var/mob/dead/new_player/new_player_mob as anything in new_players)
var/mob/living/carbon/human/character = new_player_mob.new_character
if (istype(character) && is_security_officer_job(character.mind?.assigned_role))
officer_mobs += character

var/datum/client_interface/client = GET_CLIENT(new_player_mob)
var/preference = client?.prefs?.read_preference(/datum/preference/choiced/security_department)
officer_preferences += preference

var/distribution = get_officer_departments(officer_preferences, departments)

var/list/output = list()

for (var/index in 1 to officer_mobs.len)
output[REF(officer_mobs[index])] = distribution[index]

return output

/datum/controller/subsystem/ticker/proc/transfer_characters()
var/list/livings = list()
for(var/i in GLOB.new_player_list)
Expand Down
Loading
Loading