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

[pull] master from cmss13-devs:master #861

Merged
merged 25 commits into from
Jan 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
8bceca2
Automatic changelog compile [ci skip]
actions-user Jan 25, 2024
fc82825
Port TG Tooling Fix in MapMerge (#5527)
Drulikar Jan 25, 2024
9c89e49
turns oxygentank into fueltank fixes issue #5512 (#5524)
cuberound Jan 25, 2024
5ad14eb
Automatic changelog for PR #5524 [ci skip]
cm13-github Jan 25, 2024
0606046
Raises the amount of magazines in the MP handgun cases to 6 (#5528)
Johannes2262 Jan 25, 2024
65ac121
Automatic changelog for PR #5528 [ci skip]
cm13-github Jan 25, 2024
7830684
Finishes #5128 (Paygrade defines) & Fixes Syndie ID (#5260)
realforest2001 Jan 25, 2024
bc347f3
Automatic changelog for PR #5260 [ci skip]
cm13-github Jan 25, 2024
b570660
hotfix for opendream killing tags
hry-gh Jan 25, 2024
5e71dc6
hotfixes opendream download script
hry-gh Jan 25, 2024
a56a633
updates the opendream script with the correct packaged location
hry-gh Jan 25, 2024
86d6ca6
fix and small refactor of Areas in lower deck on almayer part2 (#5373)
Huffie56 Jan 25, 2024
3fd724d
Automatic changelog for PR #5373 [ci skip]
cm13-github Jan 25, 2024
4522944
Fix latejoin menu marine title (#5537)
realforest2001 Jan 25, 2024
60ea7fc
Automatic changelog for PR #5537 [ci skip]
cm13-github Jan 25, 2024
9cb7ac7
adds warning messages when CAS sonic boom happens and makes the boom …
cuberound Jan 25, 2024
eb3fcc1
Automatic changelog for PR #5410 [ci skip]
cm13-github Jan 25, 2024
b173347
Requisition Centralization [Part 1] (#5490)
ItsVyzo Jan 25, 2024
9947707
Automatic changelog for PR #5490 [ci skip]
cm13-github Jan 26, 2024
66bebba
Automatic changelog compile [ci skip]
actions-user Jan 26, 2024
7e13948
Fixes xeno tunnel tracking (#5536)
SabreML Jan 26, 2024
5f460fb
Automatic changelog for PR #5536 [ci skip]
cm13-github Jan 26, 2024
a6f732c
Deadchat no longer gets notified about tutorial facehuggers (#5546)
Contrabang Jan 26, 2024
25f0aa1
Automatic changelog for PR #5546 [ci skip]
cm13-github Jan 26, 2024
fcae67e
Automatic changelog compile [ci skip]
actions-user Jan 27, 2024
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
5 changes: 4 additions & 1 deletion code/__DEFINES/paygrade_defs/civilian.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,12 @@
/// SYN, Synthetic
#define PAY_SHORT_SYN "SYN"

/// OPR, Operative
/// OPR, Operator
#define PAY_SHORT_OPR "OPR"

/// CDNM, Operative (intended for codenamed people IE Operative Theta)
#define PAY_SHORT_CDNM "CDNM"

/// CPO, Officer
#define PAY_SHORT_CPO "CPO"

Expand Down
45 changes: 45 additions & 0 deletions code/__DEFINES/paygrade_defs/mercs.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
// Paygrade shorthand defines, to allow clearer designation.

// MERCENARIES
/// FL-S, Standard
#define PAY_SHORT_FL_S "FL-S"

/// FL-M, Medic
#define PAY_SHORT_FL_M "FL-M"

/// FL-WL, Warlord
#define PAY_SHORT_FL_WL "FL-WL"

/// EFL-S, Elite Standard
#define PAY_SHORT_EFL_S "EFL-S"

/// EFL-M, Elite Medic
#define PAY_SHORT_EFL_M "EFL-M"

/// EFL-E, Elite Engineer
#define PAY_SHORT_EFL_E "EFL-E"

/// EFL-H, Elite Heavy
#define PAY_SHORT_EFL_H "EFL-H"

/// EFL-WL, Elite Warlord
#define PAY_SHORT_EFL_TL "EFL-TL"

// VANGUARD'S ARROW INC
/// VAI-S, Standard
#define PAY_SHORT_VAI_S "VAI-S"

/// VAI-M, Medic
#define PAY_SHORT_VAI_M "VAI-M"

/// VAI-E, Engineer
#define PAY_SHORT_VAI_E "VAI-E"

/// VAI-G, Machinegunner
#define PAY_SHORT_VAI_G "VAI-G"

/// VAI-SN, Synthetic
#define PAY_SHORT_VAI_SN "VAI-SN"

/// VAI-L, Team Leader
#define PAY_SHORT_VAI_L "VAI-L"
6 changes: 6 additions & 0 deletions code/__DEFINES/paygrade_defs/paygrade.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/// Paygrade is equivalent to or is an enlisted position.
#define GRADE_ENLISTED 0
/// Paygrade is equivalent to or is an officer.
#define GRADE_OFFICER 1
/// Paygrade is for high command or senior leadership. Military flag officers.
#define GRADE_FLAG 2
38 changes: 38 additions & 0 deletions code/__DEFINES/paygrade_defs/twe.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
// Paygrade shorthand defines, to allow clearer designation.

// THREE WORLD EMPIRE
/// RMC1, Heitai-Marine
#define PAY_SHORT_RMC1 "RMC1"

/// RMC2, Santo-Lance Corporal
#define PAY_SHORT_RMC2 "RMC2"

/// RMC3, Nito-Corporal
#define PAY_SHORT_RMC3 "RMC3"

/// RMC4, Itto-Sergeant
#define PAY_SHORT_RMC4 "RMC4"

/// RNOW, Warrant Officer
#define PAY_SHORT_RNOW "RNOW"

/// RNO1, Second Lieutenant
#define PAY_SHORT_RNO1 "RNO1"

/// RNO2, First Lieutenant
#define PAY_SHORT_RNO2 "RNO2"

/// RNO3, Standing Officer
#define PAY_SHORT_RNO3 "RNO3"

/// RNO4, Captain
#define PAY_SHORT_RNO4 "RNO4"

/// RNO5, Admiral
#define PAY_SHORT_RNO5 "RNO5"

/// RNO6, Grand Admiral
#define PAY_SHORT_RNO6 "RNO6"

/// EMP, Emperor
#define PAY_SHORT_EMP "EMP"
48 changes: 47 additions & 1 deletion code/__DEFINES/paygrade_defs/weyland.dm
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// Paygrade shorthand defines, to allow clearer designation.

// Weyland Yutani
// Weyland Yutani Corporate
/// WYC1, Trainee
#define PAY_SHORT_WYC1 "WYC1"

Expand Down Expand Up @@ -30,3 +30,49 @@

/// WYC10, Director
#define PAY_SHORT_WYC10 "WYC10"

// Weyland Yutani Private Military
/// PMC-OP, Operator, standard PMC.
#define PAY_SHORT_PMC_OP "PMC-OP"

/// PMC-EN, Enforcer
#define PAY_SHORT_PMC_EN "PMC-EN"

/// PMC-SS, Support Specialist
#define PAY_SHORT_PMC_SS "PMC-SS"

/// PMC-MS, Medical Specialist
#define PAY_SHORT_PMC_MS "PMC-MS"

/// PMC-WS, Weapons Specialist
#define PAY_SHORT_PMC_WS "PMC-WS"

/// PMC-VS, Vehicle Specialist
#define PAY_SHORT_PMC_VS "PMC-VS"

/// PMC-XS, Xeno Specialist (Handler)
#define PAY_SHORT_PMC_XS "PMC-XS"

/// PMC-TL, Team Leader
#define PAY_SHORT_PMC_TL "PMC-TL"

/// PMC-DOC, Trauma Surgeon
#define PAY_SHORT_PMC_DOC "PMC-DOC"

/// PMC-ENG, Technician
#define PAY_SHORT_PMC_TEC "PMC-TEC"

/// PMC-ELR, Elite Responder
#define PAY_SHORT_PMC_ELR "PMC-ELR"

/// PMC-ELM, Elite Medic
#define PAY_SHORT_PMC_ELM "PMC-ELM"

/// PMC-ELG, Elite Gunner
#define PAY_SHORT_PMC_ELG "PMC-ELG"

/// PMC-ETL, Elite Team Leader
#define PAY_SHORT_PMC_ETL "PMC-ETL"

/// PMC-DIR, PMC Director
#define PAY_SHORT_PMC_DIR "PMC-DIR"
38 changes: 23 additions & 15 deletions code/_onclick/hud/screen_objects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -505,7 +505,11 @@
name = "queen locator"
icon = 'icons/mob/hud/alien_standard.dmi'
icon_state = "trackoff"
var/list/track_state = list(TRACKER_QUEEN, 0)
/// A weak reference to the atom currently being tracked.
/// (Note: This is null for `TRACKER_QUEEN` and `TRACKER_HIVE`, as those are accessed through the user's hive datum.)
var/datum/weakref/tracking_ref = null
/// The 'category' of the atom currently being tracked. (Defaults to `TRACKER_QUEEN`)
var/tracker_type = TRACKER_QUEEN

/atom/movable/screen/queen_locator/clicked(mob/living/carbon/xenomorph/user, mods)
if(!istype(user))
Expand All @@ -520,35 +524,39 @@
if(mods["alt"])
var/list/options = list()
if(user.hive.living_xeno_queen)
options["Queen"] = list(TRACKER_QUEEN, 0)
// Don't need weakrefs to this or the hive core, since there's only one possible target.
options["Queen"] = list(null, TRACKER_QUEEN)

if(user.hive.hive_location)
options["Hive Core"] = list(TRACKER_HIVE, 0)
options["Hive Core"] = list(null, TRACKER_HIVE)

var/xeno_leader_index = 1
for(var/xeno in user.hive.xeno_leader_list)
var/mob/living/carbon/xenomorph/xeno_lead = user.hive.xeno_leader_list[xeno_leader_index]
if(xeno_lead)
options["Xeno Leader [xeno_lead]"] = list(TRACKER_LEADER, xeno_leader_index)
xeno_leader_index++
for(var/mob/living/carbon/xenomorph/leader in user.hive.xeno_leader_list)
options["Xeno Leader [leader]"] = list(leader, TRACKER_LEADER)

var/list/sorted_tunnels = sort_list_dist(user.hive.tunnels, get_turf(user))
var/tunnel_index = 1
for(var/obj/structure/tunnel/tunnel in sorted_tunnels)
options["Tunnel [tunnel.tunnel_desc]"] = list(TRACKER_TUNNEL, tunnel_index)
tunnel_index++
for(var/obj/structure/tunnel/tunnel as anything in sorted_tunnels)
options["Tunnel [tunnel.tunnel_desc]"] = list(tunnel, TRACKER_TUNNEL)

var/selected = tgui_input_list(user, "Select what you want the locator to track.", "Locator Options", options)
var/list/selected = tgui_input_list(user, "Select what you want the locator to track.", "Locator Options", options)
if(selected)
track_state = options[selected]
var/selected_data = options[selected]
tracking_ref = WEAKREF(selected_data[1]) // Weakref to the tracked atom (or null)
tracker_type = selected_data[2] // Tracker category
return

if(!user.hive.living_xeno_queen)
to_chat(user, SPAN_WARNING("Our hive doesn't have a living queen!"))
return FALSE
if(HAS_TRAIT(user, TRAIT_ABILITY_BURROWED) || user.is_mob_incapacitated() || user.buckled)
return FALSE
user.overwatch(user.hive.living_xeno_queen)

// Reset to the defaults
/atom/movable/screen/queen_locator/proc/reset_tracking()
icon_state = "trackoff"
tracking_ref = null
tracker_type = TRACKER_QUEEN

/atom/movable/screen/xenonightvision
icon = 'icons/mob/hud/alien_standard.dmi'
name = "toggle night vision"
Expand Down
8 changes: 4 additions & 4 deletions code/datums/emergency_calls/mercs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@
hostility = pick(75;FALSE,25;TRUE)
arrival_message = "[MAIN_SHIP_NAME], this is Freelancer shuttle [pick(GLOB.alphabet_lowercase)][pick(GLOB.alphabet_lowercase)]-[rand(1, 99)] responding to your distress call. Prepare for boarding."
if(hostility)
objectives = "Ransack the [MAIN_SHIP_NAME] and kill anyone who gets in your way. Do what your Captain says. Ensure your survival at all costs."
objectives = "Ransack the [MAIN_SHIP_NAME] and kill anyone who gets in your way. Do what your Warlord says. Ensure your survival at all costs."
else
objectives = "Help the crew of the [MAIN_SHIP_NAME] in exchange for payment, and choose your payment well. Do what your Captain says. Ensure your survival at all costs."
objectives = "Help the crew of the [MAIN_SHIP_NAME] in exchange for payment, and choose your payment well. Do what your Warlord says. Ensure your survival at all costs."

/datum/emergency_call/mercs/friendly //if admins want to specifically call in friendly ones
name = "Friendly Freelancers (Squad)"
Expand All @@ -26,7 +26,7 @@
. = ..()
hostility = FALSE
arrival_message = "[MAIN_SHIP_NAME], this is Freelancer shuttle [pick(GLOB.alphabet_lowercase)][pick(GLOB.alphabet_lowercase)]-[rand(1, 99)] responding to your distress call. Prepare for boarding."
objectives = "Help the crew of the [MAIN_SHIP_NAME] in exchange for payment, and choose your payment well. Do what your Captain says. Ensure your survival at all costs."
objectives = "Help the crew of the [MAIN_SHIP_NAME] in exchange for payment, and choose your payment well. Do what your Warlord says. Ensure your survival at all costs."

/datum/emergency_call/mercs/hostile //ditto
name = "Hostile Freelancers (Squad)"
Expand All @@ -37,7 +37,7 @@
. = ..()
hostility = TRUE
arrival_message = "[MAIN_SHIP_NAME], this is Freelancer shuttle [pick(GLOB.alphabet_lowercase)][pick(GLOB.alphabet_lowercase)]-[rand(1, 99)] responding to your distress call. Prepare for boarding."
objectives = "Ransack the [MAIN_SHIP_NAME] and kill anyone who gets in your way. Do what your Captain says. Ensure your survival at all costs."
objectives = "Ransack the [MAIN_SHIP_NAME] and kill anyone who gets in your way. Do what your Warlord says. Ensure your survival at all costs."

/datum/emergency_call/mercs/print_backstory(mob/living/carbon/human/H)
to_chat(H, SPAN_BOLD("You started off in the Neroid Sector as a colonist seeking work at one of the established colonies."))
Expand Down
4 changes: 2 additions & 2 deletions code/datums/medal_awards.dm
Original file line number Diff line number Diff line change
Expand Up @@ -259,7 +259,7 @@ GLOBAL_LIST_INIT(human_medals, list(MARINE_CONDUCT_MEDAL, MARINE_BRONZE_HEART_ME
to_chat(user, SPAN_WARNING("You must have an authenticated ID Card to award medals."))
return

if(!((card.paygrade in GLOB.co_paygrades) || (card.paygrade in GLOB.highcom_paygrades)))
if(!((card.paygrade in GLOB.co_paygrades) || (card.paygrade in GLOB.uscm_highcom_paygrades)))
to_chat(user, SPAN_WARNING("Only a Senior Officer can award medals!"))
return

Expand Down Expand Up @@ -582,7 +582,7 @@ GLOBAL_DATUM_INIT(ic_medals_panel, /datum/ic_medal_panel, new)
to_chat(user, SPAN_WARNING("You must have an authenticated ID Card to award medals."))
return

if(!((card.paygrade in GLOB.co_paygrades) || (card.paygrade in GLOB.highcom_paygrades)))
if(!((card.paygrade in GLOB.co_paygrades) || (card.paygrade in GLOB.uscm_highcom_paygrades)))
to_chat(user, SPAN_WARNING("Only a Senior Officer can award medals!"))
return

Expand Down
3 changes: 3 additions & 0 deletions code/datums/paygrades/factions/other/civilian.dm
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
name = "Professor"
prefix = "Prof."
pay_multiplier = 1
officer_grade = GRADE_OFFICER

/datum/paygrade/civillian/representative
paygrade = PAY_SHORT_CREP
Expand All @@ -41,6 +42,7 @@
name = "Senior Officer"
prefix = "Sr. Off."
pay_multiplier = 0.8
officer_grade = GRADE_OFFICER

/datum/paygrade/civilian/rebel
paygrade = PAY_SHORT_REB
Expand All @@ -50,3 +52,4 @@
paygrade = PAY_SHORT_REBC
name = "Rebel Commander"
prefix = "CMDR."
officer_grade = GRADE_OFFICER
1 change: 1 addition & 0 deletions code/datums/paygrades/factions/other/cmb.dm
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
paygrade = PAY_SHORT_CMBM
name = "CMB Marshal"
prefix = "Marshal"
officer_grade = GRADE_OFFICER

/datum/paygrade/cmb/syn
paygrade = PAY_SHORT_CMBS
Expand Down
25 changes: 13 additions & 12 deletions code/datums/paygrades/factions/other/contractors.dm
Original file line number Diff line number Diff line change
@@ -1,38 +1,39 @@
/datum/paygrade/contractors
name = "Contractor Paygrade"
fprefix = "VAI"
pay_multiplier = 1.5

/datum/paygrade/contractors/standard
paygrade = "VAI"
paygrade = PAY_SHORT_VAI_S
name = "VAI Mercenary"
prefix = "VAI"
prefix = "Merc."

/datum/paygrade/contractors/med
paygrade = "VAI-M"
paygrade = PAY_SHORT_VAI_M
name = "VAI Medical Specialist"
prefix = "VAI MED"
prefix = "Med."
pay_multiplier = 1.75

/datum/paygrade/contractors/mg
paygrade = "VAI-G"
paygrade = PAY_SHORT_VAI_G
name = "VAI Machinegunner"
prefix = "VAI MG"
prefix = "MG."
pay_multiplier = 1.75

/datum/paygrade/contractors/engi
paygrade = "VAI-E"
paygrade = PAY_SHORT_VAI_E
name = "VAI Engineering Specialist"
prefix = "VAI ENG"
prefix = "Eng."
pay_multiplier = 1.75

/datum/paygrade/contractors/syn
paygrade = "VAI-S"
paygrade = PAY_SHORT_VAI_SN
name = "VAI Synthetic"
prefix = "VAI Syn"
pay_multiplier = 0

/datum/paygrade/contractors/lead
paygrade = "VAI-L"
paygrade = PAY_SHORT_VAI_L
name = "VAI Team Leader"
prefix = "VAI TL"
prefix = "TL."
pay_multiplier = 2.25
officer_grade = GRADE_OFFICER
1 change: 1 addition & 0 deletions code/datums/paygrades/factions/other/dutch_dozen.dm
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,5 @@
name = "Major"
prefix = "LDR."
pay_multiplier = 9
officer_grade = GRADE_OFFICER

Loading
Loading