Skip to content
Open
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
2 changes: 1 addition & 1 deletion code/datums/paygrades/factions/uscm/army.dm
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@

/datum/paygrade/army/e9
paygrade = PAY_SHORT_AE9
name = "Master Sergeant"
name = "Sergeant Major"
prefix = "SGM"
rank_pin = /obj/item/clothing/accessory/ranks/army/e9
ranking = 9
Expand Down
6 changes: 6 additions & 0 deletions code/datums/paygrades/factions/uscm/marine.dm
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@
rank_pin = /obj/item/clothing/accessory/ranks/marine/e7
ranking = 6
pay_multiplier = 2.75
sea_grade = TRUE

/datum/paygrade/marine/e8
paygrade = PAY_SHORT_ME8
Expand All @@ -69,6 +70,7 @@
rank_pin = /obj/item/clothing/accessory/ranks/marine/e8
ranking = 7
pay_multiplier = 2.75
sea_grade = TRUE

/datum/paygrade/marine/e8e
paygrade = PAY_SHORT_ME8E
Expand All @@ -77,6 +79,7 @@
rank_pin = /obj/item/clothing/accessory/ranks/marine/e8e
ranking = 8
pay_multiplier = 2.75
sea_grade = TRUE

/datum/paygrade/marine/e9
paygrade = PAY_SHORT_ME9
Expand All @@ -85,6 +88,7 @@
rank_pin = /obj/item/clothing/accessory/ranks/marine/e9
ranking = 9
pay_multiplier = 3
sea_grade = TRUE

/datum/paygrade/marine/e9e
paygrade = PAY_SHORT_ME9E
Expand All @@ -93,6 +97,7 @@
rank_pin = /obj/item/clothing/accessory/ranks/marine/e9e
ranking = 10
pay_multiplier = 3
sea_grade = TRUE

/datum/paygrade/marine/e9c
paygrade = PAY_SHORT_ME9C
Expand All @@ -101,6 +106,7 @@
rank_pin = /obj/item/clothing/accessory/ranks/marine/e9c
ranking = 11
pay_multiplier = 3
sea_grade = TRUE

/datum/paygrade/marine/wo
paygrade = PAY_SHORT_MWO
Expand Down
8 changes: 5 additions & 3 deletions code/datums/paygrades/helper.dm
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,12 @@
return "[paygrade]"
return P.name

/proc/get_paygrade_id_by_name(paygrade_name)
/proc/get_paygrade_id_by_name(paygrade_name, paygrades_list_to_search = GLOB.paygrades)
var/datum/paygrade/paygrade
for(var/paygrade_id in GLOB.paygrades)
paygrade = GLOB.paygrades[paygrade_id]
if(!length(paygrades_list_to_search))
paygrades_list_to_search = GLOB.paygrades
for(var/paygrade_id in paygrades_list_to_search)
paygrade = paygrades_list_to_search[paygrade_id]
if(paygrade.name == paygrade_name)
return paygrade_id

Expand Down
6 changes: 6 additions & 0 deletions code/datums/paygrades/paygrade.dm
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
GLOBAL_LIST_EMPTY(uscm_highcom_paygrades)
GLOBAL_LIST_EMPTY(uscm_officer_paygrades)
GLOBAL_LIST_EMPTY(uscm_sea_paygrades)
GLOBAL_LIST_EMPTY(wy_highcom_paygrades)
GLOBAL_LIST_INIT_TYPED(paygrades, /datum/paygrade, setup_paygrades())

Expand All @@ -20,6 +21,8 @@ GLOBAL_LIST_INIT_TYPED(paygrades, /datum/paygrade, setup_paygrades())
var/default_faction
/// If the grade refers to an officer equivalent or not.
var/officer_grade = GRADE_ENLISTED
/// If the grade refers to an senior enlisted advisor grade or not.
var/sea_grade

GLOBAL_LIST_INIT(co_paygrades, list(
PAY_SHORT_NO6,
Expand All @@ -38,6 +41,8 @@ GLOBAL_LIST_INIT(co_paygrades, list(
. = ..()
switch(default_faction)
if(FACTION_MARINE)
if(sea_grade)
GLOB.uscm_sea_paygrades += paygrade
if(officer_grade)
GLOB.uscm_officer_paygrades += paygrade
if(officer_grade >= GRADE_FLAG)
Expand All @@ -55,3 +60,4 @@ GLOBAL_LIST_INIT(co_paygrades, list(
log_debug("Duplicate paygrade: '[pg_id]'.")
else
.[pg_id] = new PG
GLOB.uscm_sea_paygrades = . & GLOB.uscm_sea_paygrades
2 changes: 1 addition & 1 deletion code/modules/gear_presets/uscm_ship.dm
Original file line number Diff line number Diff line change
Expand Up @@ -540,7 +540,7 @@
/datum/equipment_preset/uscm_ship/sea/load_rank(mob/living/carbon/human/rankee, client/mob_client)
mob_client?.toggle_newplayer_ic_hud(TRUE)
if(rankee?.client?.prefs?.pref_special_job_options[job_title])
var/paygrade_choice = get_paygrade_id_by_name(rankee.client.prefs.pref_special_job_options[job_title])
var/paygrade_choice = get_paygrade_id_by_name(rankee.client.prefs.pref_special_job_options[job_title], GLOB.uscm_sea_paygrades)
return paygrade_choice
..()

Expand Down
Loading