From f26aa1f5c569adbfd8ca02193debce12affcc1ab Mon Sep 17 00:00:00 2001
From: Kirie Saito <77302679+Kitsunemitsu@users.noreply.github.com>
Date: Sat, 22 Jun 2024 23:45:55 -0400
Subject: [PATCH] platoon updates
---
code/__DEFINES/job.dm | 10 +-
code/__DEFINES/mode.dm | 6 +-
.../jobs/job/command/auxiliary/cas_pilot.dm | 4 +-
.../jobs/job/command/auxiliary/crew_chief.dm | 6 +-
code/game/jobs/job/command/cic/captain.dm | 3 +-
code/game/jobs/job/command/cic/executive.dm | 2 +-
.../game/jobs/job/command/cic/staffofficer.dm | 20 +-
.../jobs/job/command/police/chief_police.dm | 2 +
code/game/jobs/job/command/police/police.dm | 21 +-
code/game/jobs/job/command/police/warden.dm | 2 +
.../jobs/job/logistics/cargo/cargo_tech.dm | 17 -
.../jobs/job/logistics/cargo/chief_req.dm | 2 +
.../jobs/job/logistics/engi/maint_tech.dm | 4 +-
.../jobs/job/logistics/engi/ordnance_tech.dm | 21 +-
code/game/jobs/job/marine/marine.dm | 4 +-
code/game/jobs/job/marine/squad/engineer.dm | 25 +-
code/game/jobs/job/marine/squad/leader.dm | 8 +-
code/game/jobs/job/marine/squad/medic.dm | 24 +-
.../game/jobs/job/marine/squad/smartgunner.dm | 21 +-
code/game/jobs/job/marine/squad/specialist.dm | 21 +-
code/game/jobs/job/marine/squad/standard.dm | 7 -
code/game/jobs/job/marine/squad/tl.dm | 6 +-
code/game/jobs/job/marine/squads.dm | 47 +-
code/game/jobs/role_authority.dm | 2 +-
.../vendor_types/squad_prep/squad_tl.dm | 2 +-
.../objects/items/devices/radio/headset.dm | 9 +
code/modules/gear_presets/uscm.dm | 32 +-
code/modules/gear_presets/uscm_ship.dm | 16 +-
code/modules/tents/folded_tents.dm | 18 +
code/modules/tents/templates.dm | 12 +
icons/mob/hud/marine_hud.dmi | Bin 13613 -> 13614 bytes
.../obj/structures/tents_deployed_classic.dmi | Bin 5876 -> 7237 bytes
icons/obj/structures/tents_folded.dmi | Bin 1181 -> 688 bytes
map_config/shipmaps.txt | 3 +
maps/fiveo.json | 8 +
maps/map_files/USS_Fiveo/USS_Fiveo.dmm | 68562 ++++++++++++++++
maps/map_files/USS_Fiveo/sprinkles/.gitkeep | 1 +
maps/tents/tent_cmd_alpha.dmm | 74 +
maps/tents/tent_cmd_bravo.dmm | 74 +
maps/tents/tent_cmd_charlie.dmm | 74 +
40 files changed, 68949 insertions(+), 221 deletions(-)
create mode 100644 maps/fiveo.json
create mode 100644 maps/map_files/USS_Fiveo/USS_Fiveo.dmm
create mode 100644 maps/map_files/USS_Fiveo/sprinkles/.gitkeep
create mode 100644 maps/tents/tent_cmd_alpha.dmm
create mode 100644 maps/tents/tent_cmd_bravo.dmm
create mode 100644 maps/tents/tent_cmd_charlie.dmm
diff --git a/code/__DEFINES/job.dm b/code/__DEFINES/job.dm
index bedc8234d9c9..802a7a2e8dda 100644
--- a/code/__DEFINES/job.dm
+++ b/code/__DEFINES/job.dm
@@ -15,11 +15,11 @@
// Job name defines
#define JOB_SQUAD_MARINE "Rifleman"
-#define JOB_SQUAD_LEADER "Squad Leader"
+#define JOB_SQUAD_LEADER "Platoon Sergeant"
+#define JOB_SQUAD_TEAM_LEADER "Squad Leader"
#define JOB_SQUAD_ENGI "Combat Technician"
#define JOB_SQUAD_MEDIC "Hospital Corpsman"
#define JOB_SQUAD_SPECIALIST "Weapons Specialist"
-#define JOB_SQUAD_TEAM_LEADER "Fireteam Leader"
#define JOB_SQUAD_SMARTGUN "Smartgunner"
#define JOB_SQUAD_ROLES /datum/timelock/squad
#define JOB_SQUAD_ROLES_LIST list(JOB_SQUAD_MARINE, JOB_SQUAD_LEADER, JOB_SQUAD_ENGI, JOB_SQUAD_MEDIC, JOB_SQUAD_SPECIALIST, JOB_SQUAD_SMARTGUN, JOB_SQUAD_TEAM_LEADER)
@@ -67,14 +67,14 @@ GLOBAL_LIST_INIT(job_squad_roles, JOB_SQUAD_ROLES_LIST)
#define JOB_SYNTH "Synthetic"
#define JOB_WORKING_JOE "Working Joe"
-#define JOB_CO "Commanding Officer"
+#define JOB_CO "Company Commander"
#define JOB_XO "Executive Officer"
-#define JOB_SO "Staff Officer"
+#define JOB_SO "Platoon Commander"
#define JOB_COMMAND_ROLES /datum/timelock/command
#define JOB_COMMAND_ROLES_LIST list(JOB_CO, JOB_XO, JOB_SO)
GLOBAL_LIST_INIT(job_command_roles, JOB_COMMAND_ROLES_LIST)
-#define JOB_AUXILIARY_OFFICER "Auxiliary Support Officer"
+#define JOB_AUXILIARY_OFFICER "Logistics Officer"
#define JOB_CAS_PILOT "Gunship Pilot"
#define JOB_DROPSHIP_PILOT "Dropship Pilot"
#define JOB_TANK_CREW "Tank Crew"
diff --git a/code/__DEFINES/mode.dm b/code/__DEFINES/mode.dm
index 4c3a658ff421..3fac39c403ae 100644
--- a/code/__DEFINES/mode.dm
+++ b/code/__DEFINES/mode.dm
@@ -140,7 +140,11 @@ GLOBAL_LIST_INIT(ROLES_XENO, list(JOB_XENOMORPH_QUEEN, JOB_XENOMORPH))
GLOBAL_LIST_INIT(ROLES_WHITELISTED, list(JOB_SYNTH_SURVIVOR, JOB_CO_SURVIVOR, JOB_PREDATOR))
GLOBAL_LIST_INIT(ROLES_SPECIAL, list(JOB_SURVIVOR))
-GLOBAL_LIST_INIT(ROLES_USCM, ROLES_CIC + GLOB.ROLES_POLICE + GLOB.ROLES_AUXIL_SUPPORT + GLOB.ROLES_MISC + GLOB.ROLES_ENGINEERING + GLOB.ROLES_REQUISITION + GLOB.ROLES_MEDICAL + GLOB.ROLES_MARINES - ROLES_WO)
+GLOBAL_LIST_INIT(ROLES_USCM, list(JOB_CO, JOB_XO, JOB_DROPSHIP_PILOT, JOB_INTEL, JOB_POLICE,
+ JOB_AUXILIARY_OFFICER, JOB_CARGO_TECH, JOB_MAINT_TECH, JOB_CMO, JOB_DOCTOR,
+ JOB_SO, JOB_SQUAD_LEADER, JOB_SQUAD_TEAM_LEADER, JOB_SQUAD_SMARTGUN, JOB_SQUAD_SPECIALIST, JOB_SQUAD_ENGI, JOB_SQUAD_MEDIC, JOB_SQUAD_MARINE))
+
+
GLOBAL_LIST_INIT(ROLES_GROUND, GLOB.ROLES_XENO + ROLES_SPECIAL + ROLES_WHITELISTED)
GLOBAL_LIST_INIT(ROLES_DISTRESS_SIGNAL, GLOB.ROLES_USCM + GLOB.ROLES_GROUND)
diff --git a/code/game/jobs/job/command/auxiliary/cas_pilot.dm b/code/game/jobs/job/command/auxiliary/cas_pilot.dm
index 083766576ad4..c47c661d389f 100644
--- a/code/game/jobs/job/command/auxiliary/cas_pilot.dm
+++ b/code/game/jobs/job/command/auxiliary/cas_pilot.dm
@@ -1,7 +1,7 @@
/datum/job/command/pilot/cas_pilot
title = JOB_CAS_PILOT
- total_positions = 1
- spawn_positions = 1
+ total_positions = 0
+ spawn_positions = 0
allow_additional = TRUE
scaled = TRUE
supervisors = "the auxiliary support officer"
diff --git a/code/game/jobs/job/command/auxiliary/crew_chief.dm b/code/game/jobs/job/command/auxiliary/crew_chief.dm
index 2608d8847966..45af5c3ebb04 100644
--- a/code/game/jobs/job/command/auxiliary/crew_chief.dm
+++ b/code/game/jobs/job/command/auxiliary/crew_chief.dm
@@ -1,9 +1,7 @@
/datum/job/command/crew_chief
title = JOB_DROPSHIP_CREW_CHIEF
- total_positions = 2
- spawn_positions = 2
- allow_additional = TRUE
- scaled = TRUE
+ total_positions = 0
+ spawn_positions = 0
supervisors = "the pilot officers"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ship/dcc
diff --git a/code/game/jobs/job/command/cic/captain.dm b/code/game/jobs/job/command/cic/captain.dm
index 30fa455beeee..beea0bf6d4b6 100644
--- a/code/game/jobs/job/command/cic/captain.dm
+++ b/code/game/jobs/job/command/cic/captain.dm
@@ -3,8 +3,7 @@
title = JOB_CO
supervisors = "USCM high command"
selection_class = "job_co"
- flags_startup_parameters = ROLE_ADD_TO_DEFAULT|ROLE_ADMIN_NOTIFY|ROLE_WHITELISTED
- flags_whitelist = WHITELIST_COMMANDER
+ flags_startup_parameters = ROLE_ADD_TO_DEFAULT|ROLE_ADMIN_NOTIFY
gear_preset = /datum/equipment_preset/uscm_ship/commander
/datum/job/command/commander/New()
diff --git a/code/game/jobs/job/command/cic/executive.dm b/code/game/jobs/job/command/cic/executive.dm
index f717a03e1229..a88d930fbe24 100644
--- a/code/game/jobs/job/command/cic/executive.dm
+++ b/code/game/jobs/job/command/cic/executive.dm
@@ -5,7 +5,7 @@
gear_preset = /datum/equipment_preset/uscm_ship/xo
/datum/job/command/executive/generate_entry_message(mob/living/carbon/human/H)
- entry_message_body = "You are second in command aboard the [MAIN_SHIP_NAME], and are in next in the chain of command after the Commanding Officer. Where applicable, you must abide by the Commanding Officer Code of Conduct. You may need to fill in for other duties if areas are understaffed, and you are given access to do so. Make the USCM proud!"
+ entry_message_body = "You are second in command aboard the [MAIN_SHIP_NAME], You are in charge of all shipside dealings, to let the commanding officer deal with the operation."
return ..()
/datum/job/command/executive/generate_entry_conditions(mob/living/M, whitelist_status)
diff --git a/code/game/jobs/job/command/cic/staffofficer.dm b/code/game/jobs/job/command/cic/staffofficer.dm
index c73270944c3a..e459592f04b1 100644
--- a/code/game/jobs/job/command/cic/staffofficer.dm
+++ b/code/game/jobs/job/command/cic/staffofficer.dm
@@ -2,27 +2,9 @@
title = JOB_SO
total_positions = 4
spawn_positions = 4
- allow_additional = 1
- scaled = FALSE
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ship/so
- entry_message_body = "Your job is to monitor the Marines, man the CIC, and listen to your superior officers. You are in charge of logistics and the overwatch system. You are also in line to take command after other eligible superior commissioned officers."
-
-/datum/job/command/bridge/set_spawn_positions(count)
- spawn_positions = so_slot_formula(count)
-
-/datum/job/command/bridge/get_total_positions(latejoin = 0)
- var/positions = spawn_positions
- if(latejoin)
- positions = so_slot_formula(get_total_marines())
- if(positions <= total_positions_so_far)
- positions = total_positions_so_far
- else
- total_positions_so_far = positions
- else
- total_positions_so_far = positions
- return positions
-
+ entry_message_body = "Your job is to command a platoon from the ground You are in charge of executing the commanding officer's orders."
/datum/job/command/bridge/generate_entry_conditions(mob/living/M, whitelist_status)
. = ..()
diff --git a/code/game/jobs/job/command/police/chief_police.dm b/code/game/jobs/job/command/police/chief_police.dm
index 63e6d8023f17..5cf9bf3f0cb4 100644
--- a/code/game/jobs/job/command/police/chief_police.dm
+++ b/code/game/jobs/job/command/police/chief_police.dm
@@ -1,6 +1,8 @@
//Chief MP
/datum/job/command/warrant
title = JOB_CHIEF_POLICE
+ total_positions = 0
+ spawn_positions = 0
selection_class = "job_cmp"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ship/uscm_police/cmp
diff --git a/code/game/jobs/job/command/police/police.dm b/code/game/jobs/job/command/police/police.dm
index e05bc2e96256..88901c565232 100644
--- a/code/game/jobs/job/command/police/police.dm
+++ b/code/game/jobs/job/command/police/police.dm
@@ -1,30 +1,13 @@
//Military Police
/datum/job/command/police
title = JOB_POLICE
- total_positions = 5
- spawn_positions = 5
- allow_additional = 1
- scaled = 1
+ total_positions = 2
+ spawn_positions = 2
selection_class = "job_mp"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ship/uscm_police/mp
entry_message_body = "You are held by a higher standard and are required to obey not only the server rules but the Marine Law. Failure to do so may result in a job ban or server ban. Your primary job is to maintain peace and stability aboard the ship. Marines can get rowdy after a few weeks of cryosleep! In addition, you are tasked with the security of high-ranking personnel, including the command staff. Keep them safe!"
-/datum/job/command/police/set_spawn_positions(count)
- spawn_positions = mp_slot_formula(count)
-
-/datum/job/command/police/get_total_positions(latejoin = 0)
- var/positions = spawn_positions
- if(latejoin)
- positions = mp_slot_formula(get_total_marines())
- if(positions <= total_positions_so_far)
- positions = total_positions_so_far
- else
- total_positions_so_far = positions
- else
- total_positions_so_far = positions
- return positions
-
AddTimelock(/datum/job/command/police, list(
JOB_SQUAD_ROLES = 10 HOURS
))
diff --git a/code/game/jobs/job/command/police/warden.dm b/code/game/jobs/job/command/police/warden.dm
index d2775e197537..881ac0e9404c 100644
--- a/code/game/jobs/job/command/police/warden.dm
+++ b/code/game/jobs/job/command/police/warden.dm
@@ -1,6 +1,8 @@
// Warden
/datum/job/command/warden
title = JOB_WARDEN
+ total_positions = 0
+ spawn_positions = 0
selection_class = "job_mp"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
supervisors = "the Chief MP"
diff --git a/code/game/jobs/job/logistics/cargo/cargo_tech.dm b/code/game/jobs/job/logistics/cargo/cargo_tech.dm
index c4725289c3ff..9097160738ff 100644
--- a/code/game/jobs/job/logistics/cargo/cargo_tech.dm
+++ b/code/game/jobs/job/logistics/cargo/cargo_tech.dm
@@ -2,29 +2,12 @@
title = JOB_CARGO_TECH
total_positions = 2
spawn_positions = 2
- allow_additional = 1
- scaled = 1
supervisors = "the requisitions officer"
selection_class = "job_ct"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ship/cargo
entry_message_body = "Your job is to dispense supplies to the marines, including weapon attachments. Stay in your department when possible to ensure the marines have full access to the supplies they may require. Listen to the radio in case someone requests a supply drop via the overwatch system."
-/datum/job/logistics/cargo/set_spawn_positions(count)
- spawn_positions = ct_slot_formula(count)
-
-/datum/job/logistics/cargo/get_total_positions(latejoin = 0)
- var/positions = spawn_positions
- if(latejoin)
- positions = ct_slot_formula(get_total_marines())
- if(positions <= total_positions_so_far)
- positions = total_positions_so_far
- else
- total_positions_so_far = positions
- else
- total_positions_so_far = positions
- return positions
-
/obj/effect/landmark/start/cargo
name = JOB_CARGO_TECH
icon_state = "ct_spawn"
diff --git a/code/game/jobs/job/logistics/cargo/chief_req.dm b/code/game/jobs/job/logistics/cargo/chief_req.dm
index 5d5123e687ed..0a7b9996bbf7 100644
--- a/code/game/jobs/job/logistics/cargo/chief_req.dm
+++ b/code/game/jobs/job/logistics/cargo/chief_req.dm
@@ -1,5 +1,7 @@
/datum/job/logistics/requisition
title = JOB_CHIEF_REQUISITION
+ total_positions = 0
+ spawn_positions = 0
selection_class = "job_qm"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ship/qm
diff --git a/code/game/jobs/job/logistics/engi/maint_tech.dm b/code/game/jobs/job/logistics/engi/maint_tech.dm
index b13062127a12..5ace962ba5af 100644
--- a/code/game/jobs/job/logistics/engi/maint_tech.dm
+++ b/code/game/jobs/job/logistics/engi/maint_tech.dm
@@ -1,7 +1,7 @@
/datum/job/logistics/maint
title = JOB_MAINT_TECH
- total_positions = 3
- spawn_positions = 3
+ total_positions = 2
+ spawn_positions = 2
supervisors = "the chief engineer"
selection_class = "job_ot"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
diff --git a/code/game/jobs/job/logistics/engi/ordnance_tech.dm b/code/game/jobs/job/logistics/engi/ordnance_tech.dm
index 43a8a7122a8f..4c05baf63e9b 100644
--- a/code/game/jobs/job/logistics/engi/ordnance_tech.dm
+++ b/code/game/jobs/job/logistics/engi/ordnance_tech.dm
@@ -1,31 +1,14 @@
//Ordnance Technician
/datum/job/logistics/otech
title = JOB_ORDNANCE_TECH
- total_positions = 3
- spawn_positions = 3
- allow_additional = 1
- scaled = 1
+ total_positions = 0
+ spawn_positions = 0
supervisors = "the chief engineer"
selection_class = "job_ot"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ship/ordn
entry_message_body = "Your job is to maintain the integrity of the USCM weapons, munitions and equipment, including the orbital cannon. You can use the workshop in the portside hangar to construct new armaments for the marines. However you remain one of the more flexible roles on the ship and as such may receive other menial tasks from your superiors."
-/datum/job/logistics/otech/set_spawn_positions(count)
- spawn_positions = ot_slot_formula(count)
-
-/datum/job/logistics/otech/get_total_positions(latejoin = 0)
- var/positions = spawn_positions
- if(latejoin)
- positions = ot_slot_formula(get_total_marines())
- if(positions <= total_positions_so_far)
- positions = total_positions_so_far
- else
- total_positions_so_far = positions
- else
- total_positions_so_far = positions
- return positions
-
AddTimelock(/datum/job/logistics/otech, list(
JOB_ENGINEER_ROLES = 1 HOURS
))
diff --git a/code/game/jobs/job/marine/marine.dm b/code/game/jobs/job/marine/marine.dm
index e07c1edd3138..ca4dfc3b4096 100644
--- a/code/game/jobs/job/marine/marine.dm
+++ b/code/game/jobs/job/marine/marine.dm
@@ -1,8 +1,8 @@
/datum/job/marine
supervisors = "the acting squad leader"
selection_class = "job_marine"
- total_positions = 8
- spawn_positions = 8
+ total_positions = 6
+ spawn_positions = 6
allow_additional = 1
/datum/job/marine/generate_entry_message(mob/living/carbon/human/current_human)
diff --git a/code/game/jobs/job/marine/squad/engineer.dm b/code/game/jobs/job/marine/squad/engineer.dm
index a4422572f218..e0bc96c3c9b7 100644
--- a/code/game/jobs/job/marine/squad/engineer.dm
+++ b/code/game/jobs/job/marine/squad/engineer.dm
@@ -1,32 +1,11 @@
/datum/job/marine/engineer
title = JOB_SQUAD_ENGI
- total_positions = 12
- spawn_positions = 12
- allow_additional = 1
+ total_positions = 6
+ spawn_positions = 6
flags_startup_parameters = ROLE_ADD_TO_DEFAULT|ROLE_ADD_TO_SQUAD
gear_preset = /datum/equipment_preset/uscm/engineer
entry_message_body = "You have the equipment and skill to build fortifications, reroute power lines, and bunker down. Your squaddies will look to you when it comes to construction in the field of battle."
-/datum/job/marine/engineer/set_spawn_positions(count)
- for(var/datum/squad/sq in GLOB.RoleAuthority.squads)
- if(sq)
- sq.max_engineers = engi_slot_formula(count)
-
-/datum/job/marine/engineer/get_total_positions(latejoin=0)
- var/slots = engi_slot_formula(get_total_marines())
-
- if(slots <= total_positions_so_far)
- slots = total_positions_so_far
- else
- total_positions_so_far = slots
-
- if(latejoin)
- for(var/datum/squad/sq in GLOB.RoleAuthority.squads)
- if(sq)
- sq.max_engineers = slots
-
- return (slots*4)
-
/datum/job/marine/engineer/whiskey
title = JOB_WO_SQUAD_ENGINEER
flags_startup_parameters = ROLE_ADD_TO_SQUAD
diff --git a/code/game/jobs/job/marine/squad/leader.dm b/code/game/jobs/job/marine/squad/leader.dm
index be78438db3d6..ebff962be6ec 100644
--- a/code/game/jobs/job/marine/squad/leader.dm
+++ b/code/game/jobs/job/marine/squad/leader.dm
@@ -1,11 +1,11 @@
/datum/job/marine/leader
title = JOB_SQUAD_LEADER
- total_positions = 4
- spawn_positions = 4
- supervisors = "the acting commanding officer"
+ total_positions = 3
+ spawn_positions = 3
+ supervisors = "your platoon leader"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT|ROLE_ADD_TO_SQUAD
gear_preset = /datum/equipment_preset/uscm/leader
- entry_message_body = "You are responsible for the men and women of your squad. Make sure they are on task, working together, and communicating. You are also in charge of communicating with command and letting them know about the situation first hand. Keep out of harm's way."
+ entry_message_body = "You are responsible for the men and women of your platoon. Make sure they are on task, working together, and communicating. You are also in charge of communicating with command and letting them know about the situation first hand. Keep out of harm's way."
/datum/job/marine/leader/whiskey
title = JOB_WO_SQUAD_LEADER
diff --git a/code/game/jobs/job/marine/squad/medic.dm b/code/game/jobs/job/marine/squad/medic.dm
index 450d1176658f..1fcda76b0698 100644
--- a/code/game/jobs/job/marine/squad/medic.dm
+++ b/code/game/jobs/job/marine/squad/medic.dm
@@ -1,31 +1,11 @@
/datum/job/marine/medic
title = JOB_SQUAD_MEDIC
- total_positions = 16
- spawn_positions = 16
- allow_additional = 1
+ total_positions = 6
+ spawn_positions = 6
flags_startup_parameters = ROLE_ADD_TO_DEFAULT|ROLE_ADD_TO_SQUAD
gear_preset = /datum/equipment_preset/uscm/medic
entry_message_body = "You tend the wounds of your squad mates and make sure they are healthy and active. You may not be a fully-fledged doctor, but you stand between life and death when it matters."
-/datum/job/marine/medic/set_spawn_positions(count)
- for(var/datum/squad/sq in GLOB.RoleAuthority.squads)
- if(sq)
- sq.max_medics = medic_slot_formula(count)
-
-/datum/job/marine/medic/get_total_positions(latejoin=0)
- var/slots = medic_slot_formula(get_total_marines())
-
- if(slots <= total_positions_so_far)
- slots = total_positions_so_far
- else
- total_positions_so_far = slots
-
- if(latejoin)
- for(var/datum/squad/sq in GLOB.RoleAuthority.squads)
- if(sq)
- sq.max_medics = slots
-
- return (slots*4)
/datum/job/marine/medic/whiskey
title = JOB_WO_SQUAD_MEDIC
diff --git a/code/game/jobs/job/marine/squad/smartgunner.dm b/code/game/jobs/job/marine/squad/smartgunner.dm
index 1a89abf5d3be..6bb439a8763f 100644
--- a/code/game/jobs/job/marine/squad/smartgunner.dm
+++ b/code/game/jobs/job/marine/squad/smartgunner.dm
@@ -1,28 +1,11 @@
/datum/job/marine/smartgunner
title = JOB_SQUAD_SMARTGUN
- total_positions = 4
- spawn_positions = 4
- allow_additional = 1
- scaled = 1
+ total_positions = 3
+ spawn_positions = 3
flags_startup_parameters = ROLE_ADD_TO_DEFAULT|ROLE_ADD_TO_SQUAD
gear_preset = /datum/equipment_preset/uscm/sg
entry_message_body = "You are the smartgunner. Your task is to provide heavy weapons support."
-/datum/job/marine/smartgunner/set_spawn_positions(count)
- spawn_positions = sg_slot_formula(count)
-
-/datum/job/marine/smartgunner/get_total_positions(latejoin = 0)
- var/positions = spawn_positions
- if(latejoin)
- positions = sg_slot_formula(get_total_marines())
- if(positions <= total_positions_so_far)
- positions = total_positions_so_far
- else
- total_positions_so_far = positions
- else
- total_positions_so_far = positions
- return positions
-
/datum/job/marine/smartgunner/whiskey
title = JOB_WO_SQUAD_SMARTGUNNER
flags_startup_parameters = ROLE_ADD_TO_SQUAD
diff --git a/code/game/jobs/job/marine/squad/specialist.dm b/code/game/jobs/job/marine/squad/specialist.dm
index e69241cdc70b..9f98087fc034 100644
--- a/code/game/jobs/job/marine/squad/specialist.dm
+++ b/code/game/jobs/job/marine/squad/specialist.dm
@@ -1,28 +1,11 @@
/datum/job/marine/specialist
title = JOB_SQUAD_SPECIALIST
- total_positions = 4
- spawn_positions = 4
- allow_additional = 1
- scaled = 1
+ total_positions = 3
+ spawn_positions = 3
flags_startup_parameters = ROLE_ADD_TO_DEFAULT|ROLE_ADD_TO_SQUAD
gear_preset = /datum/equipment_preset/uscm/spec
entry_message_body = "You are the very rare and valuable weapon expert, trained to use special equipment. You can serve a variety of roles, so choose carefully."
-/datum/job/marine/specialist/set_spawn_positions(count)
- spawn_positions = spec_slot_formula(count)
-
-/datum/job/marine/specialist/get_total_positions(latejoin = 0)
- var/positions = spawn_positions
- if(latejoin)
- positions = spec_slot_formula(get_total_marines())
- if(positions <= total_positions_so_far)
- positions = total_positions_so_far
- else
- total_positions_so_far = positions
- else
- total_positions_so_far = positions
- return positions
-
/datum/job/marine/specialist/whiskey
title = JOB_WO_SQUAD_SPECIALIST
diff --git a/code/game/jobs/job/marine/squad/standard.dm b/code/game/jobs/job/marine/squad/standard.dm
index a926c3370a4b..cfcb57295ba8 100644
--- a/code/game/jobs/job/marine/squad/standard.dm
+++ b/code/game/jobs/job/marine/squad/standard.dm
@@ -7,13 +7,6 @@
flags_startup_parameters = ROLE_ADD_TO_DEFAULT|ROLE_ADD_TO_SQUAD
gear_preset = /datum/equipment_preset/uscm/pfc
-/datum/job/marine/standard/on_config_load()
- entry_message_body = "You are a rank-and-file Marine of the USCM, and that is your strength. What you lack alone, you gain standing shoulder to shoulder with the men and women of the corps. Ooh-rah!"
- return ..()
-
-/datum/job/marine/standard/set_spawn_positions(count)
- spawn_positions = max((floor(count * STANDARD_MARINE_TO_TOTAL_SPAWN_RATIO)), 8)
-
/datum/job/marine/standard/whiskey
title = JOB_WO_SQUAD_MARINE
flags_startup_parameters = ROLE_ADD_TO_SQUAD
diff --git a/code/game/jobs/job/marine/squad/tl.dm b/code/game/jobs/job/marine/squad/tl.dm
index 2b0cff3ea3ed..f90dca6ec21a 100644
--- a/code/game/jobs/job/marine/squad/tl.dm
+++ b/code/game/jobs/job/marine/squad/tl.dm
@@ -1,11 +1,11 @@
/datum/job/marine/tl
title = JOB_SQUAD_TEAM_LEADER
- total_positions = 8
- spawn_positions = 8
+ total_positions = 6
+ spawn_positions = 6
allow_additional = 1
flags_startup_parameters = ROLE_ADD_TO_DEFAULT|ROLE_ADD_TO_SQUAD
gear_preset = /datum/equipment_preset/uscm/tl
- entry_message_body = "You are the Team Leader.Your task is to assist the squad leader in leading the squad as well as utilize ordnance such as orbital bombardments, CAS, and mortar as well as coordinating resupply with Requisitions and CIC. If the squad leader dies, you are expected to lead in their place."
+ entry_message_body = "You are the Team Leader.Your task is to lead the squads under the platoon leader and platoon sergeant."
/datum/job/marine/tl/generate_entry_conditions(mob/living/carbon/human/spawning_human)
. = ..()
diff --git a/code/game/jobs/job/marine/squads.dm b/code/game/jobs/job/marine/squads.dm
index 3285e75e45c3..51fdd1ab269d 100644
--- a/code/game/jobs/job/marine/squads.dm
+++ b/code/game/jobs/job/marine/squads.dm
@@ -153,6 +153,10 @@
radio_freq = DELTA_FREQ
minimap_color = MINIMAP_SQUAD_DELTA
+ active = FALSE
+ roundstart = FALSE
+ locked = TRUE
+
/datum/squad/marine/echo
name = SQUAD_MARINE_5
equipment_color = "#67d692"
@@ -464,24 +468,57 @@
var/list/extra_access = list()
switch(GET_DEFAULT_ROLE(M.job))
+ if(JOB_SQUAD_MARINE) //Marines always get a random fireteam
+ var/rng_fireteam = pick("FT1", "FT2")
+ assign_fireteam(rng_fireteam, M)
if(JOB_SQUAD_ENGI)
assignment = JOB_SQUAD_ENGI
num_engineers++
C.claimedgear = FALSE
+ switch(num_engineers)
+ if(1) //Every squad needs 1 engineer and one medic
+ assign_fireteam("FT1", M)
+ if(2)
+ assign_fireteam("FT2", M)
+ else //Should never happen except for admin bullshit
+ assign_fireteam("FT3", M)
+
if(JOB_SQUAD_MEDIC)
assignment = JOB_SQUAD_MEDIC
num_medics++
C.claimedgear = FALSE
+ switch(num_medics)
+ if(1)
+ assign_fireteam("FT1", M)
+ if(2)
+ assign_fireteam("FT2", M)
+ else
+ assign_fireteam("FT3", M)
+
if(JOB_SQUAD_SPECIALIST)
assignment = JOB_SQUAD_SPECIALIST
num_specialists++
+ assign_fireteam("FT1", M) //Specialists are always first Fireteam.
+ if(JOB_SQUAD_SMARTGUN)
+ assignment = JOB_SQUAD_SMARTGUN
+ num_smartgun++
+ assign_fireteam("FT2", M) //Smartgunners are always second Fireteam.
+
if(JOB_SQUAD_TEAM_LEADER)
assignment = JOB_SQUAD_TEAM_LEADER
num_tl++
M.important_radio_channels += radio_freq
- if(JOB_SQUAD_SMARTGUN)
- assignment = JOB_SQUAD_SMARTGUN
- num_smartgun++
+ switch(num_tl)
+ if(1)
+ assign_fireteam("FT1", M) //Can't set FTL without adding to fireteam. I tried - Kitsunemitu
+ assign_ft_leader("FT1", M)
+ if(2)
+ assign_fireteam("FT2", M)
+ assign_ft_leader("FT2", M)
+ if(3) //Again, should never happen
+ assign_fireteam("FT3", M)
+ assign_ft_leader("FT3", M)
+
if(JOB_SQUAD_LEADER)
if(squad_leader && GET_DEFAULT_ROLE(squad_leader.job) != JOB_SQUAD_LEADER) //field promoted SL
var/old_lead = squad_leader
@@ -615,12 +652,12 @@
if(JOB_SQUAD_MEDIC)
old_lead.comm_title = "HM"
if(JOB_SQUAD_TEAM_LEADER)
- old_lead.comm_title = "FTL"
+ old_lead.comm_title = "SL"
if(JOB_SQUAD_SMARTGUN)
old_lead.comm_title = "SG"
if(JOB_SQUAD_LEADER)
if(!leader_killed)
- old_lead.comm_title = "Sgt"
+ old_lead.comm_title = "SSgt"
if(JOB_MARINE_RAIDER)
old_lead.comm_title = "Op."
if(JOB_MARINE_RAIDER_SL)
diff --git a/code/game/jobs/role_authority.dm b/code/game/jobs/role_authority.dm
index a9017e2cc8d3..79e0ef7e46bd 100644
--- a/code/game/jobs/role_authority.dm
+++ b/code/game/jobs/role_authority.dm
@@ -701,7 +701,7 @@ I hope it's easier to tell what the heck this proc is even doing, unlike previou
else if(S.num_smartgun < lowest.num_smartgun)
lowest = S
if(!lowest)
- var/ranpick = rand(1,4)
+ var/ranpick = rand(1,3)
lowest = mixed_squads[ranpick]
if(lowest) lowest.put_marine_in_squad(H)
else to_chat(H, "Something went badly with randomize_squad()! Tell a coder!")
diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm
index c37dd98ed263..4c61b23d3006 100644
--- a/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm
+++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm
@@ -39,7 +39,6 @@ GLOBAL_LIST_INIT(cm_vending_gear_tl, list(
list("CLOTHING ITEMS", 0, null, null, null),
list("Machete Scabbard (Full)", 5, /obj/item/storage/large_holster/machete/full, null, VENDOR_ITEM_REGULAR),
list("Machete Pouch (Full)", 15, /obj/item/storage/pouch/machete/full, null, VENDOR_ITEM_REGULAR),
- list("USCM Radio Telephone Pack", 5, /obj/item/storage/backpack/marine/satchel/rto, null, VENDOR_ITEM_REGULAR),
list("Welding Goggles", 3, /obj/item/clothing/glasses/welding, null, VENDOR_ITEM_REGULAR),
list("M276 Pattern Combat Toolbelt Rig", 15, /obj/item/storage/belt/gun/utility, null, VENDOR_ITEM_REGULAR),
list("Autoinjector Pouch (Full)", 15, /obj/item/storage/pouch/autoinjector/full, null, VENDOR_ITEM_REGULAR),
@@ -95,6 +94,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_tl, list(
list("MRE", 0, /obj/item/storage/box/MRE, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY),
list("Map", 0, /obj/item/map/current_map, MARINE_CAN_BUY_KIT, VENDOR_ITEM_MANDATORY),
list("Essential Fireteam Leader Utilities", 0, /obj/effect/essentials_set/tl, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY),
+ list("USCM Radio Telephone Pack", 0, /obj/item/storage/backpack/marine/satchel/rto, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY),
list("BELT (CHOOSE 1)", 0, null, null, null),
list("G8-A General Utility Pouch", 0, /obj/item/storage/backpack/general_belt, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm
index b9b7e94d9ae5..a843bee20228 100644
--- a/code/game/objects/items/devices/radio/headset.dm
+++ b/code/game/objects/items/devices/radio/headset.dm
@@ -592,6 +592,7 @@
/obj/item/device/radio/headset/almayer/marine
initial_keys = list(/obj/item/device/encryptionkey/public)
+ locate_setting = TRACKER_FTL
//############################## ALPHA ###############################
/obj/item/device/radio/headset/almayer/marine/alpha
@@ -605,12 +606,14 @@
desc = "This is used by the marine Alpha squad leader. Channels are as follows: :v - marine command, :j - JTAC. When worn, grants access to Squad Leader tracker. Click tracker with empty hand to open Squad Info window."
initial_keys = list(/obj/item/device/encryptionkey/public, /obj/item/device/encryptionkey/squadlead)
volume = RADIO_VOLUME_CRITICAL
+ locate_setting = TRACKER_SL
/obj/item/device/radio/headset/almayer/marine/alpha/tl
name = "marine alpha team leader radio headset"
desc = "This is used by the marine Alpha team leader. Channels are as follows: :u - requisitions, :j - JTAC. When worn, grants access to Squad Leader tracker. Click tracker with empty hand to open Squad Info window."
initial_keys = list(/obj/item/device/encryptionkey/public, /obj/item/device/encryptionkey/jtac)
volume = RADIO_VOLUME_RAISED
+ locate_setting = TRACKER_SL
/obj/item/device/radio/headset/almayer/marine/alpha/engi
name = "marine alpha engineer radio headset"
@@ -634,12 +637,14 @@
desc = "This is used by the marine Bravo squad leader. Channels are as follows: :v - marine command, :j - JTAC. When worn, grants access to Squad Leader tracker. Click tracker with empty hand to open Squad Info window."
initial_keys = list(/obj/item/device/encryptionkey/public, /obj/item/device/encryptionkey/squadlead)
volume = RADIO_VOLUME_CRITICAL
+ locate_setting = TRACKER_SL
/obj/item/device/radio/headset/almayer/marine/bravo/tl
name = "marine bravo team leader radio headset"
desc = "This is used by the marine Bravo team leader. Channels are as follows: :u - requisitions, :j - JTAC. When worn, grants access to Squad Leader tracker. Click tracker with empty hand to open Squad Info window."
initial_keys = list(/obj/item/device/encryptionkey/public, /obj/item/device/encryptionkey/jtac)
volume = RADIO_VOLUME_RAISED
+ locate_setting = TRACKER_SL
/obj/item/device/radio/headset/almayer/marine/bravo/engi
name = "marine bravo engineer radio headset"
@@ -663,12 +668,14 @@
desc = "This is used by the marine Charlie squad leader. Channels are as follows: :v - marine command, :j - JTAC. When worn, grants access to Squad Leader tracker. Click tracker with empty hand to open Squad Info window."
initial_keys = list(/obj/item/device/encryptionkey/public, /obj/item/device/encryptionkey/squadlead)
volume = RADIO_VOLUME_CRITICAL
+ locate_setting = TRACKER_SL
/obj/item/device/radio/headset/almayer/marine/charlie/tl
name = "marine charlie team leader radio headset"
desc = "This is used by the marine Charlie team leader. Channels are as follows: :u - requisitions, :j - JTAC. When worn, grants access to Squad Leader tracker. Click tracker with empty hand to open Squad Info window."
initial_keys = list(/obj/item/device/encryptionkey/public, /obj/item/device/encryptionkey/jtac)
volume = RADIO_VOLUME_RAISED
+ locate_setting = TRACKER_SL
/obj/item/device/radio/headset/almayer/marine/charlie/engi
name = "marine charlie engineer radio headset"
@@ -692,12 +699,14 @@
desc = "This is used by the marine Delta squad leader. Channels are as follows: :v - marine command, :j - JTAC. When worn, grants access to Squad Leader tracker. Click tracker with empty hand to open Squad Info window."
initial_keys = list(/obj/item/device/encryptionkey/public, /obj/item/device/encryptionkey/squadlead)
volume = RADIO_VOLUME_CRITICAL
+ locate_setting = TRACKER_SL
/obj/item/device/radio/headset/almayer/marine/delta/tl
name = "marine delta team leader radio headset"
desc = "This is used by the marine Delta team leader. Channels are as follows: :u - requisitions, :j - JTAC. When worn, grants access to Squad Leader tracker. Click tracker with empty hand to open Squad Info window."
initial_keys = list(/obj/item/device/encryptionkey/public, /obj/item/device/encryptionkey/jtac)
volume = RADIO_VOLUME_RAISED
+ locate_setting = TRACKER_SL
/obj/item/device/radio/headset/almayer/marine/delta/engi
name = "marine delta engineer radio headset"
diff --git a/code/modules/gear_presets/uscm.dm b/code/modules/gear_presets/uscm.dm
index 4b018eea1d50..6cd00956fedd 100644
--- a/code/modules/gear_presets/uscm.dm
+++ b/code/modules/gear_presets/uscm.dm
@@ -105,7 +105,7 @@
access = list(ACCESS_MARINE_PREP, ACCESS_MARINE_SMARTPREP)
assignment = JOB_SQUAD_SMARTGUN
rank = JOB_SQUAD_SMARTGUN
- paygrade = PAY_SHORT_ME3
+ paygrade = PAY_SHORT_ME4
role_comm_title = "SG"
skills = /datum/skills/smartgunner
@@ -281,7 +281,7 @@
access = list(ACCESS_MARINE_PREP, ACCESS_MARINE_SPECPREP)
assignment = JOB_SQUAD_SPECIALIST
rank = JOB_SQUAD_SPECIALIST
- paygrade = PAY_SHORT_ME3
+ paygrade = PAY_SHORT_ME4
role_comm_title = "Spc"
skills = /datum/skills/specialist
@@ -368,14 +368,14 @@
//*****************************************************************************************************/
/datum/equipment_preset/uscm/tl
- name = "USCM Fireteam Leader"
+ name = "USCM Squad Leader"
flags = EQUIPMENT_PRESET_EXTRA|EQUIPMENT_PRESET_MARINE
access = list(ACCESS_MARINE_PREP, ACCESS_MARINE_TL_PREP)
assignment = JOB_SQUAD_TEAM_LEADER
rank = JOB_SQUAD_TEAM_LEADER
- paygrade = PAY_SHORT_ME4
- role_comm_title = "FTL"
+ paygrade = PAY_SHORT_ME5
+ role_comm_title = "SL"
skills = /datum/skills/tl
minimap_icon = "tl"
@@ -432,14 +432,14 @@
//*****************************************************************************************************/
/datum/equipment_preset/uscm/leader
- name = "USCM Squad Leader"
+ name = "USCM Platoon Sergeant"
flags = EQUIPMENT_PRESET_EXTRA|EQUIPMENT_PRESET_MARINE
- access = list(ACCESS_MARINE_PREP, ACCESS_MARINE_LEADER, ACCESS_MARINE_DROPSHIP)
+ access = list(ACCESS_MARINE_PREP, ACCESS_MARINE_LEADER, ACCESS_MARINE_DROPSHIP, ACCESS_MARINE_TL_PREP)
assignment = JOB_SQUAD_LEADER
rank = JOB_SQUAD_LEADER
- paygrade = PAY_SHORT_ME5
- role_comm_title = "SL"
+ paygrade = PAY_SHORT_ME6
+ role_comm_title = "PSGT"
minimum_age = 27
skills = /datum/skills/SL
@@ -521,8 +521,8 @@
access = list(ACCESS_MARINE_PREP, ACCESS_MARINE_LEADER, ACCESS_MARINE_DROPSHIP)
assignment = JOB_SQUAD_LEADER
rank = JOB_SQUAD_LEADER
- paygrade = PAY_SHORT_ME5
- role_comm_title = "SL"
+ paygrade = PAY_SHORT_ME6
+ role_comm_title = "PSGT"
minimum_age = 27
skills = /datum/skills/SL
@@ -563,7 +563,7 @@
access = list(ACCESS_MARINE_PREP, ACCESS_MARINE_SMARTPREP)
assignment = JOB_SQUAD_SMARTGUN
rank = JOB_SQUAD_SMARTGUN
- paygrade = PAY_SHORT_ME3
+ paygrade = PAY_SHORT_ME4
role_comm_title = "SG"
skills = /datum/skills/smartgunner
@@ -706,7 +706,7 @@
access = list(ACCESS_MARINE_PREP, ACCESS_MARINE_SPECPREP)
assignment = JOB_SQUAD_SPECIALIST
rank = JOB_SQUAD_SPECIALIST
- paygrade = PAY_SHORT_ME3
+ paygrade = PAY_SHORT_ME4
role_comm_title = "Spc"
skills = /datum/skills/specialist
@@ -772,14 +772,14 @@
//*****************************************************************************************************/
/datum/equipment_preset/uscm/tl_equipped
- name = "USCM Fireteam Leader (Equipped)"
+ name = "USCM Squad Leader (Equipped)"
flags = EQUIPMENT_PRESET_EXTRA|EQUIPMENT_PRESET_MARINE
access = list(ACCESS_MARINE_PREP, ACCESS_MARINE_TL_PREP)
assignment = JOB_SQUAD_TEAM_LEADER
rank = JOB_SQUAD_TEAM_LEADER
- paygrade = PAY_SHORT_ME4
- role_comm_title = "TL"
+ paygrade = PAY_SHORT_ME5
+ role_comm_title = "SL"
skills = /datum/skills/tl
minimap_icon = "tl"
diff --git a/code/modules/gear_presets/uscm_ship.dm b/code/modules/gear_presets/uscm_ship.dm
index a53504fec0c9..88876ea73f1f 100644
--- a/code/modules/gear_presets/uscm_ship.dm
+++ b/code/modules/gear_presets/uscm_ship.dm
@@ -396,13 +396,13 @@
//*****************************************************************************************************/
/datum/equipment_preset/uscm_ship/commander
- name = "USCM Commanding Officer (CO)"
+ name = "USCM Company Commander (CO)"
flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE
idtype = /obj/item/card/id/gold
assignment = JOB_CO
rank = JOB_CO
- paygrade = PAY_SHORT_MO4
+ paygrade = PAY_SHORT_MO3
role_comm_title = "CO"
minimum_age = 30
skills = /datum/skills/commander
@@ -517,7 +517,7 @@
idtype = /obj/item/card/id/silver
assignment = JOB_XO
rank = JOB_XO
- paygrade = PAY_SHORT_MO3
+ paygrade = PAY_SHORT_MO2
role_comm_title = "XO"
minimum_age = 35
skills = /datum/skills/XO
@@ -549,7 +549,7 @@
//*****************************************************************************************************/
/datum/equipment_preset/uscm_ship/so
- name = "USCM Staff Officer (SO)"
+ name = "USCM Platoon Commander (PCDR)"
flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE
idtype = /obj/item/card/id/silver
@@ -557,7 +557,7 @@
assignment = JOB_SO
rank = JOB_SO
paygrade = PAY_SHORT_MO1
- role_comm_title = "SO"
+ role_comm_title = "PCDR"
minimum_age = 25
skills = /datum/skills/SO
@@ -628,14 +628,14 @@
//*****************************************************************************************************/
/datum/equipment_preset/uscm_ship/auxiliary_officer
- name = "USCM Auxiliary Support Officer (ASO)"
+ name = "USCM Logistics Officer (LO)"
flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE
idtype = /obj/item/card/id/silver
assignment = JOB_AUXILIARY_OFFICER
rank = JOB_AUXILIARY_OFFICER
- paygrade = PAY_SHORT_MO2
- role_comm_title = "ASO"
+ paygrade = PAY_SHORT_MO1
+ role_comm_title = "LO"
minimum_age = 27
skills = /datum/skills/auxiliary_officer
diff --git a/code/modules/tents/folded_tents.dm b/code/modules/tents/folded_tents.dm
index 6496810f1a85..5a1e89808a22 100644
--- a/code/modules/tents/folded_tents.dm
+++ b/code/modules/tents/folded_tents.dm
@@ -132,6 +132,24 @@
desc = "A standard USCM Command Tent. This one comes equipped with a self-powered Overwatch Console and a Telephone. Unfold in a suitable location to maximize usefulness. Staff Officer not included. ENTRANCE TO THE SOUTH."
template_preset = "tent_cmd"
+/obj/item/folded_tent/cmd/alpha
+ name = "folded USCM Alpha Platoon Tent"
+ icon_state = "cmd_alpha"
+ desc = "A standard USCM Command Tent. This one comes equipped with a self-powered Overwatch Console and a Telephone. Unfold in a suitable location to maximize usefulness. Staff Officer not included. ENTRANCE TO THE SOUTH."
+ template_preset = "tent_cmd_alpha"
+
+/obj/item/folded_tent/cmd/bravo
+ name = "folded USCM Bravo Platoon Tent"
+ icon_state = "cmd_bravo"
+ desc = "A standard USCM Command Tent. This one comes equipped with a self-powered Overwatch Console and a Telephone. Unfold in a suitable location to maximize usefulness. Staff Officer not included. ENTRANCE TO THE SOUTH."
+ template_preset = "tent_cmd_bravo"
+
+/obj/item/folded_tent/cmd/charlie
+ name = "folded USCM Charlie Platoon Tent"
+ icon_state = "cmd_charlie"
+ desc = "A standard USCM Command Tent. This one comes equipped with a self-powered Overwatch Console and a Telephone. Unfold in a suitable location to maximize usefulness. Staff Officer not included. ENTRANCE TO THE SOUTH."
+ template_preset = "tent_cmd_charlie"
+
/obj/item/folded_tent/med
name = "folded USCM Medical Tent"
icon_state = "med"
diff --git a/code/modules/tents/templates.dm b/code/modules/tents/templates.dm
index c32c0214999e..fb648bae9002 100644
--- a/code/modules/tents/templates.dm
+++ b/code/modules/tents/templates.dm
@@ -21,3 +21,15 @@
/datum/map_template/tent/reqs
name = "Reqs Tent"
map_id = "tent_reqs"
+
+/datum/map_template/tent/cmda
+ name = "CMD Tent alpha"
+ map_id = "tent_cmd_alpha"
+
+/datum/map_template/tent/cmdb
+ name = "CMD Tent bravo"
+ map_id = "tent_cmd_bravo"
+
+/datum/map_template/tent/cmdc
+ name = "CMD Tent charlie"
+ map_id = "tent_cmd_charlie"
diff --git a/icons/mob/hud/marine_hud.dmi b/icons/mob/hud/marine_hud.dmi
index def6cdd56a0ec7baf9e61e97df779ad23c8b526c..ad4bfdcb5c05f48cbfb3540b3811a31ce742f847 100644
GIT binary patch
literal 13614
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
Bj(-3E
literal 13613
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⪼f
z>N*!m#0?z7;XQ_&zSu;(eEosLyQCx*5j8r}Y_$9=eu!2y>|5Ax>f;OjY1*wC_Ty56{S^kOk!bEKpf#WcPIYQG-UWrD#r6ME^uz`#kozqx
zh0BJ_*=p!T?zpKkF#8Xdq+I$nvRek_KDechL`r)8t$3cV^ZueJsIq%6`Exycikwv-
zm7N==FH6%f$IlS0T&c}mCNH)LdB2fPzlnPY87;}Cpv6Y8uJnyuDb*gLFDi2d>C_Ri
zgQz_g&mdR&{!f5A?9iZUgzC*e6STY;;u*SKcpUN3I#Ck4m9*ygD|b+l?eT0YVRtaJ
z{0CRk!%Q*4WA*gA01$9O#gQu}c8=3w0+y9m2{ZF(`cy7^r`OjKV*3R7Xk5J95Y`>l#2>&N#4D7%e;
zEqK*`lm5bDXq92pG?4!PP#-3zTt|oIXJ)uwKnIG1|6Kz8KP~Nl&Z~pX!%*Y|@B4CX
z1Q^71gEO7oN5NpYnSUGkKj|ggxx~1WakgL{|9`glPsZxMCh-54y{XX3&xFtBjWcuL
Qe}e+_t{Nfpuh>2Le>+-oIsgCw
diff --git a/icons/obj/structures/tents_deployed_classic.dmi b/icons/obj/structures/tents_deployed_classic.dmi
index 4a7575aff83331bff553ee3e694a15fc8e0dff9d..ce1325a4c1e7a102dfb5d7f68915f62e5c1b1392 100644
GIT binary patch
literal 7237
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
XV&Wu@C~tr>00000NkvXXu0mjftp@{)
delta 1083
zcmdnMI+t^TIG+Ot8v_HwQR#7nLYR^+X>MNFMY@M)R)}$+Ygkrj;
zh{pVlIk1m~LF22Vk`T`znrz8ALF2>9ycYCaLk1_+>m-lajTjyGfc>UTE?asMtTV9azVRvWC
z!>P_!%B(jkFRm7MVXJRwZFQY`Htp(0=jm6MFI6?QHGX!bGivR!wco##tnOUCevaG0
zQ`hIqx-Pul*6gf&?(31Qw_p7@t9|b4ncMEyaxeUpdy+k6Uxp;(biH{if*&8bumCLiIr(3tuB%-_K0QmVertLHi}3cQ`#Klz+Z8^6nf?3#?e&(~I8
zO?`drkz~sW_n9ne_pR3c{@VIp#KhDz`|e7E0D*>opN}q6U?`Zd?(SC|cy3yD>g{
zE*`q^#_Cn^`&Q0-8|`#g=KBHR`SboIKH#WllHT|F-OAV9(^56ovg9Rz6*CV1m-v8R|0|tT`SnTRYc4eTLAE+z#QN_6?GP80cHA!^)7P-1*hYTFMxbaOL0TZjg89
zd%vm3Y{938)mi^TFLO<}@{q;;!p{>e2B~{luLdrPeZu_pZQ$1}T^Bwrw|RQJy}tBL
zw7ccsM|%woy}s*pSjo4Xy?FiUlh-Z}>cp>@Fx_bvesH4k@8MSmAHRNeXQi}Xr?b@L
z^Y2ael|PT0^(rs$MN7wh4+)tUc~4%5bFH@jYtwPeIilR6(du?I*S8O`tcs6HmnQUI
z(RY4);-tUuu~ZG2%AZv+qTRda8co0bY>K00{m*;9vQAul?xO7=CF6hkXUmREL4}it
zIn^{KOYAScZr%FHX|Lw1%tagdA6U#`DEZBxmdKI;Vst00(CX