-
Notifications
You must be signed in to change notification settings - Fork 565
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
FORECON Gear Preset + Admin ERT Addition (#6364)
# About the pull request Adds a set of FORECON gear presets set to simulate the FORECON marines, but properly equipped. Furthermore adds two admin only ERT's to summon a squad (6 people) or a platoon (30 people) of FORECON. - Adds a set of recon light armour for FORECON, has same defence as medium armour but light armour move speed. - Tactical attachment variant of the custom M4RA and regular M4RA that FORECON use - Adds squad settings for ERT FORECON No changes to regular FORECON are made. # Explain why it's good for the game The intention behind this is to give staff more tools to make use of FORECON in regular gameplay, either to spawn in individual FORECON marines or to send in FORECON ERT's for an event. The PR does not add FORECON to the regular Distress Beacon pool. # Testing Photographs and Procedure ![Screenshot 2024-06-03 02 37 06](https://github.com/cmss13-devs/cmss13/assets/6595389/f0291deb-0646-44c8-865f-9a4c21a8124c) # Changelog :cl: add: Marine force reconnaissance gear presets have been added for admin use. add: ERT force reconnaissance have functional squad settings, including a squad colour (green) and a radio channel. These settings do not apply for survivor force reconnaissance marines. add: A marine force reconnaissance distress signal has been added. Spawning either a 6-man squad, or a 30-man platoon. These are currently for admin use only. add: A set of customized M3-R armour has been added for force reconnaissance marines. It has comparable defensive values to M3 armour but has the speed slowdown of M3-L armour. Only ERT force reconnaissance marines will spawn with this. /:cl: --------- Co-authored-by: Steelpoint <[email protected]>
- Loading branch information
1 parent
b72dc18
commit 5b11896
Showing
11 changed files
with
365 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
/datum/emergency_call/forecon | ||
name = "FORECON (Squad)" | ||
arrival_message = "A Force Reconnaissance squad has been dispatched to your ship. Stand by." | ||
objectives = "Handle whatever threat is present. Further orders may be provided." | ||
home_base = /datum/lazy_template/ert/weyland_station | ||
probability = 0 | ||
mob_min = 3 | ||
mob_max = 6 | ||
|
||
max_heavies = 1 | ||
max_medics = 1 | ||
max_smartgunners = 1 | ||
|
||
/datum/emergency_call/forecon/create_member(datum/mind/new_mind, turf/override_spawn_loc) | ||
var/turf/spawn_loc = override_spawn_loc ? override_spawn_loc : get_spawn_point() | ||
|
||
if(!istype(spawn_loc)) | ||
return //Didn't find a useable spawn point. | ||
|
||
var/mob/living/carbon/human/mob = new(spawn_loc) | ||
new_mind.transfer_to(mob, TRUE) | ||
|
||
if(!leader && HAS_FLAG(mob.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(mob.client, JOB_SQUAD_LEADER, time_required_for_job)) | ||
leader = mob | ||
arm_equipment(mob, /datum/equipment_preset/uscm/forecon/squad_leader, TRUE, TRUE) | ||
to_chat(mob, SPAN_ROLE_HEADER("You are the FORECON Squad Leader!")) | ||
|
||
else if(medics < max_medics && HAS_FLAG(mob.client.prefs.toggles_ert, PLAY_MEDIC) && check_timelock(mob.client, JOB_SQUAD_MEDIC, time_required_for_job)) | ||
medics++ | ||
arm_equipment(mob, /datum/equipment_preset/uscm/forecon/tech, TRUE, TRUE) | ||
to_chat(mob, SPAN_ROLE_HEADER("You are the FORECON Support Technician!")) | ||
|
||
else if(smartgunners < max_smartgunners && HAS_FLAG(mob.client.prefs.toggles_ert, PLAY_SMARTGUNNER) && check_timelock(mob.client, JOB_SQUAD_SMARTGUN)) | ||
smartgunners++ | ||
to_chat(mob, SPAN_ROLE_HEADER("You are a FORECON Smartgunner!")) | ||
arm_equipment(mob, /datum/equipment_preset/uscm/forecon/smartgunner, TRUE, TRUE) | ||
|
||
else if(heavies < max_heavies && HAS_FLAG(mob.client.prefs.toggles_ert, PLAY_HEAVY) && check_timelock(mob.client, JOB_SQUAD_SPECIALIST)) | ||
heavies++ | ||
to_chat(mob, SPAN_ROLE_HEADER("You are a FORECON Designated Marskman!")) | ||
arm_equipment(mob, /datum/equipment_preset/uscm/forecon/marksman, TRUE, TRUE) | ||
|
||
else | ||
arm_equipment(mob, /datum/equipment_preset/uscm/forecon/standard, TRUE, TRUE) | ||
to_chat(mob, SPAN_ROLE_HEADER("You are a FORECON Rifleman!")) | ||
|
||
to_chat(mob, SPAN_ROLE_BODY("You are a member of the USCM's Force Reconnisance. FORECON is a force that specializes in special operations behind enemy lines, or conducting reconnisance in situations regular Marines are not expected to handle.")) | ||
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), mob, SPAN_BOLD("Objectives:</b> [objectives]")), 1 SECONDS) | ||
|
||
/datum/emergency_call/forecon/platoon | ||
name = "FORECON (Platoon)" | ||
mob_min = 6 | ||
mob_max = 30 | ||
probability = 0 | ||
max_medics = 6 | ||
max_heavies = 1 | ||
max_smartgunners = 2 | ||
|
||
/datum/emergency_call/forecon/platoon/New() | ||
..() | ||
arrival_message = "A Force Reconnaissance squad has been dispatched to your ship. Stand by." | ||
objectives = "Handle whatever threat is present. Further orders may be provided." |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.