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

Sweeping LV522 Changes + FORECON GL replaced by FORECON Sniper (Without the sniper) #3917

Merged
merged 18 commits into from
Jul 28, 2023
Merged
11 changes: 11 additions & 0 deletions code/__DEFINES/job.dm
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,17 @@ var/global/list/job_command_roles = JOB_COMMAND_ROLES_LIST

#define CMB_GRUNT_LIST list(JOB_CMB, JOB_CMB_TL)

//-------- FORECON --------//

#define JOB_FORECON_CO "Reconnaissance Commander"
#define JOB_FORECON_SL "Reconnaissance Squad Leader"
#define JOB_FORECON_SYN "Reconnaissance Synthetic"
#define JOB_FORECON_SNIPER "Reconnaissance Sniper"
#define JOB_FORECON_MARKSMAN "Reconnaissance Marksman"
#define JOB_FORECON_SUPPORT "Reconnaissance Support Technician"
#define JOB_FORECON_RIFLEMAN "Reconnaissance Rifleman"
#define JOB_FORECON_SMARTGUNNER "Reconnaissance Smartgunner"

//-------- UPP --------//
#define JOB_UPP "UPP Private"
#define JOB_UPP_CONSCRIPT "UPP Conscript"
Expand Down
6 changes: 3 additions & 3 deletions code/datums/skills.dm
Original file line number Diff line number Diff line change
Expand Up @@ -503,15 +503,15 @@ MILITARY SURVIVORS
SKILL_JTAC = SKILL_JTAC_TRAINED,
)

/datum/skills/military/survivor/forecon_grenadier
name = "Reconnaissance Grenadier"
/datum/skills/military/survivor/forecon_sniper
name = "Reconnaissance Sniper"
skills = list(
SKILL_ENGINEER = SKILL_ENGINEER_ENGI,
SKILL_CONSTRUCTION = SKILL_CONSTRUCTION_DEFAULT,
SKILL_MELEE_WEAPONS = SKILL_MELEE_TRAINED,
SKILL_CQC = SKILL_CQC_TRAINED,
SKILL_FIREARMS = SKILL_FIREARMS_TRAINED,
SKILL_SPEC_WEAPONS = SKILL_SPEC_GRENADIER,
SKILL_SPEC_WEAPONS = SKILL_SPEC_SNIPER,
SKILL_MEDICAL = SKILL_MEDICAL_TRAINED,
SKILL_ENDURANCE = SKILL_ENDURANCE_TRAINED,
SKILL_LEADERSHIP = SKILL_LEAD_NOVICE,
Expand Down
15 changes: 15 additions & 0 deletions code/game/area/LV522_Chances_Claim.dm
Original file line number Diff line number Diff line change
Expand Up @@ -456,3 +456,18 @@
name = "Atmospheric Processor - Filtration System"
icon_state = "mechbay"
ceiling = CEILING_UNDERGROUND_METAL_BLOCK_CAS

/area/lv522/atmos/way_in_command_centre
name = "Atmospheric Processor - North Corpo Reactor Entrance"
icon_state = "blue"
ceiling = CEILING_UNDERGROUND_METAL_BLOCK_CAS

/area/lv522/atmos/sewer
name = "Atmospheric Processor - Sewer"
icon_state = "red"
ceiling = CEILING_UNDERGROUND_METAL_BLOCK_CAS

/area/lv522/atmos/reactor_garage
name = "Atmospheric Processor - Garage"
icon_state = "green"
ceiling = CEILING_UNDERGROUND_METAL_BLOCK_CAS
6 changes: 6 additions & 0 deletions code/game/objects/effects/landmarks/corpsespawner.dm
Original file line number Diff line number Diff line change
Expand Up @@ -201,3 +201,9 @@
/obj/effect/landmark/corpsespawner/gladiator/burst
name = "Burst Gladiator"
equip_path = /datum/equipment_preset/corpse/gladiator/burst

//FORECON

/obj/effect/landmark/corpsespawner/forecon_spotter
name = "USCM Reconnaissance Spotter"
equip_path = /datum/equipment_preset/corpse/forecon_spotter
4 changes: 2 additions & 2 deletions code/game/objects/effects/landmarks/survivor_spawner.dm
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,8 @@
equipment = /datum/equipment_preset/survivor/forecon/smartgunner
spawn_priority = SPAWN_PRIORITY_MEDIUM

/obj/effect/landmark/survivor_spawner/lv522_forecon_grenadier
equipment = /datum/equipment_preset/survivor/forecon/grenadier
/obj/effect/landmark/survivor_spawner/lv522_forecon_sniper
equipment = /datum/equipment_preset/survivor/forecon/sniper
spawn_priority = SPAWN_PRIORITY_MEDIUM

/obj/effect/landmark/survivor_spawner/lv522_forecon_squad_leader
Expand Down
5 changes: 5 additions & 0 deletions code/game/objects/items/devices/radio/encryptionkey.dm
Original file line number Diff line number Diff line change
Expand Up @@ -210,6 +210,11 @@
icon_state = "binary_key"
channels = list(RADIO_CHANNEL_COMMAND = TRUE, RADIO_CHANNEL_REQ = TRUE, RADIO_CHANNEL_MEDSCI = TRUE, RADIO_CHANNEL_ENGI = TRUE, RADIO_CHANNEL_INTEL = TRUE, RADIO_CHANNEL_JTAC = TRUE, SQUAD_MARINE_1 = FALSE, SQUAD_MARINE_2 = FALSE, SQUAD_MARINE_3 = FALSE, SQUAD_MARINE_4 = FALSE, SQUAD_MARINE_5 = FALSE, SQUAD_MARINE_CRYO = FALSE)

/obj/item/device/encryptionkey/soc/forecon
name = "\improper SOF Radio Encryption Key"
icon_state = "binary_key"
channels = list(RADIO_CHANNEL_COLONY= TRUE)

//ERT, PMC

/obj/item/device/encryptionkey/dutch
Expand Down
11 changes: 11 additions & 0 deletions code/game/objects/items/devices/radio/headset.dm
Original file line number Diff line number Diff line change
Expand Up @@ -996,6 +996,17 @@
volume = RADIO_VOLUME_IMPORTANT
ignore_z = TRUE

/obj/item/device/radio/headset/almayer/sof/survivor_forecon
name = "USCM SOF headset"
desc = "Issued exclusively to Marine Raiders and members of the USCM's Force Reconnaissance."
icon_state = "soc_headset"
frequency = SOF_FREQ
initial_keys = list(/obj/item/device/encryptionkey/soc/forecon)
volume = RADIO_VOLUME_QUIET
ignore_z = FALSE
has_hud = TRUE
hud_type = MOB_HUD_FACTION_USCM

/obj/item/device/radio/headset/almayer/mcom/vc
name = "marine vehicle crew radio headset"
desc = "Used by USCM vehicle crew, features a non-standard brace. Channels are as follows: :v - marine command, :n - engineering, :m - medbay, :u - requisitions"
Expand Down
12 changes: 10 additions & 2 deletions code/game/objects/structures/props.dm
Original file line number Diff line number Diff line change
Expand Up @@ -837,8 +837,8 @@
icon_state = "van"
bound_height = 64
bound_width = 64
unslashable = TRUE
unacidable = TRUE
unslashable = FALSE
unacidable = FALSE

/obj/structure/prop/vehicles/crawler
name = "colony crawler"
Expand Down Expand Up @@ -1144,3 +1144,11 @@
/obj/structure/prop/wooden_cross/update_icon()
if(tagged)
overlays += mutable_appearance('icons/obj/structures/props/crosses.dmi', "cross_overlay")


/obj/structure/prop/invuln/rope
name = "rope"
desc = "A secure rope looks like someone might've been hiding out on those rocks."
icon = 'icons/obj/structures/props/almayer_props.dmi'
icon_state = "rope"
density = FALSE
6 changes: 6 additions & 0 deletions code/modules/clothing/suits/marine_armor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1030,6 +1030,12 @@ var/list/squad_colors_chat = list(rgb(230,125,125), rgb(255,230,80), rgb(255,150

#undef FULL_CAMOUFLAGE_ALPHA

/obj/item/clothing/suit/storage/marine/ghillie/forecon
name = "UDEP Thermal Poncho"
desc = "UDEP or the Ultra Diffusive Environmental Poncho is a camouflaged rain-cover worn to protect against the elements and chemical spills. It's commonly treated with an infrared absorbing coating, making a marine almost invisible in the rain. Favoured by USCM specialists for it's comfort and practicality."
icon_state = "mercenary_miner_armor"
flags_atom = MOB_LOCK_ON_EQUIP|NO_SNOW_TYPE|NO_NAME_OVERRIDE

/obj/item/clothing/suit/storage/marine/sof
name = "\improper SOF Armor"
desc = "A heavily customized suit of M3 armor. Used by Marine Raiders."
Expand Down
40 changes: 40 additions & 0 deletions code/modules/gear_presets/corpses.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1035,3 +1035,43 @@
/datum/equipment_preset/corpse/gladiator/burst
name = "Corpse - Burst Gladiator"
xenovictim = TRUE


//FORECON

/datum/equipment_preset/corpse/forecon_spotter
name = "Corpse - USCM Reconnaissance Spotter"
assignment = "Reconnaissance Spotter"
xenovictim = FALSE
paygrade = "ME5"
idtype = /obj/item/card/id/dogtag
role_comm_title = "FORECON"
faction_group = list(FACTION_USCM, FACTION_SURVIVOR)
access = list(
ACCESS_CIVILIAN_PUBLIC,
ACCESS_CIVILIAN_ENGINEERING,
ACCESS_CIVILIAN_LOGISTICS,
)

/datum/equipment_preset/corpse/forecon_spotter/load_gear(mob/living/carbon/human/new_human)
var/obj/item/clothing/under/marine/reconnaissance/uniform = new()
var/obj/item/clothing/accessory/storage/droppouch/pouch = new()
var/obj/item/clothing/accessory/ranks/marine/e5/pin = new()
var/obj/item/clothing/accessory/patch/patch_uscm = new()
var/obj/item/clothing/accessory/patch/forecon/patch_forecon = new()
uniform.attach_accessory(new_human,pouch)
uniform.attach_accessory(new_human,patch_uscm)
uniform.attach_accessory(new_human,pin)
uniform.attach_accessory(new_human,patch_forecon)
new_human.equip_to_slot_or_del(uniform, WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/webbing(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/marine/satchel(new_human), WEAR_BACK)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/firstaid/full(new_human), WEAR_R_STORE)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/firstaid/full/alternate(new_human), WEAR_L_STORE)
new_human.equip_to_slot_or_del(new /obj/item/reagent_container/food/drinks/flask/marine(new_human), WEAR_IN_ACCESSORY)
new_human.equip_to_slot_or_del(new /obj/item/facepaint/sniper(new_human), WEAR_IN_ACCESSORY)
new_human.equip_to_slot_or_del(new /obj/item/storage/box/MRE(new_human), WEAR_IN_ACCESSORY)
new_human.equip_to_slot_or_del(new /obj/item/device/flashlight(new_human), WEAR_J_STORE)
new_human.equip_to_slot_or_del(new /obj/item/tool/crowbar/tactical(new_human), WEAR_IN_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/device/radio(new_human), WEAR_IN_BACK)
58 changes: 38 additions & 20 deletions code/modules/gear_presets/forcon_survivors.dm
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
///*****************************LV-522 Force Recon Survivors*******************************************************/
//Nanu told me to put them here so they dont clutter up survivors.dm

/datum/equipment_preset/survivor/forecon
paygrade = "ME5"
idtype = /obj/item/card/id/dogtag
Expand Down Expand Up @@ -36,6 +35,7 @@
new_human.equip_to_slot_or_del(new /obj/item/tool/crowbar/tactical(new_human), WEAR_IN_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/device/radio(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/sof/survivor_forecon(new_human), WEAR_L_EAR)
GLOB.character_traits[/datum/character_trait/skills/spotter].apply_trait(new_human)

/datum/equipment_preset/survivor/forecon/add_survivor_weapon_security(mob/living/carbon/human/new_human)
Expand Down Expand Up @@ -102,7 +102,7 @@

/datum/equipment_preset/survivor/forecon/standard
name = "Survivor - USCM Reconnaissance Marine"
assignment = "Reconnaissance Rifleman"
assignment = JOB_FORECON_RIFLEMAN
skills = /datum/skills/military/survivor/forecon_standard

/datum/equipment_preset/survivor/forecon/standard/load_gear(mob/living/carbon/human/new_human)
Expand All @@ -116,7 +116,7 @@

/datum/equipment_preset/survivor/forecon/tech
name = "Survivor - USCM Reconnaissance Support Technician"
assignment = "Reconnaissance Support Technician"
assignment = JOB_FORECON_SUPPORT
skills = /datum/skills/military/survivor/forecon_techician

/datum/equipment_preset/survivor/forecon/tech/load_gear(mob/living/carbon/human/new_human)
Expand All @@ -138,7 +138,7 @@

/datum/equipment_preset/survivor/forecon/marksman
name = "Survivor - USCM Reconnaissance Designated Marksman"
assignment = "Reconnaissance Marksman"
assignment = JOB_FORECON_MARKSMAN
skills = /datum/skills/military/survivor/forecon_marksman

/datum/equipment_preset/survivor/forecon/marksman/load_gear(mob/living/carbon/human/new_human)
Expand All @@ -154,7 +154,7 @@

/datum/equipment_preset/survivor/forecon/smartgunner
name = "Survivor - USCM Reconnaissance Smartgunner"
assignment = "Reconnaissance Smartgunner"
assignment = JOB_FORECON_SMARTGUNNER
skills = /datum/skills/military/survivor/forecon_smartgunner

/datum/equipment_preset/survivor/forecon/smartgunner/load_gear(mob/living/carbon/human/new_human)
Expand All @@ -163,33 +163,50 @@
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/m1911(new_human), WEAR_IN_BELT)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT)
new_human.equip_to_slot(new /obj/item/smartgun_battery(new_human), WEAR_IN_BACK)
add_forecon_weapon(new_human)
spawn_random_headgear(new_human)
add_forecon_equipment(new_human)

///*****************************//

/datum/equipment_preset/survivor/forecon/grenadier
name = "Survivor - USCM Reconnaissance Grenadier"
assignment = "Reconnaissance Grenadier"
skills = /datum/skills/military/survivor/forecon_grenadier
/datum/equipment_preset/survivor/forecon/sniper
name = "Survivor - USCM Reconnaissance Sniper"
assignment = JOB_FORECON_SNIPER
skills = /datum/skills/military/survivor/forecon_sniper

/datum/equipment_preset/survivor/forecon/grenadier/load_gear(mob/living/carbon/human/new_human)
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/launcher/grenade/m81/m79(new_human), WEAR_L_HAND)
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/m1911(new_human), WEAR_R_HAND)
..()
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/grenade(new_human), WEAR_WAIST)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/incendiary(new_human), WEAR_IN_BACK)
/datum/equipment_preset/survivor/forecon/sniper/load_gear(mob/living/carbon/human/new_human)
var/obj/item/clothing/under/marine/reconnaissance/uniform = new()
var/obj/item/clothing/accessory/storage/droppouch/pouch = new()
var/obj/item/clothing/accessory/ranks/marine/e5/pin = new()
var/obj/item/clothing/accessory/patch/patch_uscm = new()
var/obj/item/clothing/accessory/patch/forecon/patch_forecon = new()
uniform.attach_accessory(new_human,pouch)
uniform.attach_accessory(new_human,patch_uscm)
uniform.attach_accessory(new_human,pin)
uniform.attach_accessory(new_human,patch_forecon)
new_human.equip_to_slot_or_del(uniform, WEAR_BODY)
new_human.equip_to_slot(new /obj/item/clothing/suit/storage/marine/ghillie/forecon(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/marine/satchel(new_human), WEAR_BACK)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/firstaid/full(new_human), WEAR_R_STORE)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/firstaid/full/alternate(new_human), WEAR_L_STORE)
new_human.equip_to_slot_or_del(new /obj/item/reagent_container/food/drinks/flask/marine(new_human), WEAR_IN_ACCESSORY)
new_human.equip_to_slot_or_del(new /obj/item/facepaint/sniper(new_human), WEAR_IN_ACCESSORY)
new_human.equip_to_slot_or_del(new /obj/item/storage/box/MRE(new_human), WEAR_IN_ACCESSORY)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/general_belt(new_human), WEAR_J_STORE)
new_human.equip_to_slot_or_del(new /obj/item/tool/crowbar/tactical(new_human), WEAR_IN_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/device/radio(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/sof/survivor_forecon(new_human), WEAR_L_EAR)
spawn_random_headgear(new_human)
add_forecon_equipment(new_human)
add_forecon_weapon_pistol(new_human)

//---------------------------\\

/datum/equipment_preset/survivor/forecon/squad_leader
name = "Survivor - USCM Reconnaissance Squad Leader"
assignment = "Reconnaissance Squad Leader"
assignment = JOB_FORECON_SL
skills = /datum/skills/military/survivor/forecon_squad_leader
paygrade = "MO1"

Expand All @@ -215,7 +232,7 @@

/datum/equipment_preset/survivor/forecon/major
name = "Survivor - USCM Reconnaissance Major"
assignment = "Reconnaissance Commander"
assignment = JOB_FORECON_CO
skills = /datum/skills/commander
paygrade = "MO4"
idtype = /obj/item/card/id/gold
Expand Down Expand Up @@ -248,7 +265,7 @@

/datum/equipment_preset/synth/survivor/forecon
name = "Survivor - USCM Synthetic"
assignment = "Reconnaissance Synthetic"
assignment = JOB_FORECON_SYN
faction_group = list(FACTION_MARINE, FACTION_SURVIVOR)
idtype = /obj/item/card/id/gold

Expand All @@ -261,3 +278,4 @@
preset_human.equip_to_slot_or_del(new /obj/item/storage/firstaid/regular(preset_human), WEAR_R_HAND)
preset_human.equip_to_slot_or_del(new /obj/item/storage/pouch/tools/full(preset_human), WEAR_R_STORE)
preset_human.equip_to_slot_or_del(new /obj/item/storage/pouch/survival/synth/full(preset_human), WEAR_L_STORE)
preset_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/sof/survivor_forecon(preset_human), WEAR_L_EAR)
2 changes: 1 addition & 1 deletion maps/lv522_chances_claim.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
580,
spartanbobby marked this conversation as resolved.
Show resolved Hide resolved
0.0
],
"survivor_message": "You are USCM Force Reconnaissance (FORECON) marine from the USS Hanyut, stranded on this planet after your team was wiped out while investigating the distress signal. With your pilot dead along with the majority of your unit, you and your team have been running and gunning to survive... until now.",
"survivor_message": "You are USCM Force Reconnaissance (FORECON) marine from the USS Hanyut, stranded on this planet after your team was wiped out while investigating the distress signal. With your pilot dead along with the majority of your unit, you and your team have been running and gunning to survive... but with supplies low and food running out maybe your only means of survival is to move west to the crashed dropship to salvage anything useful.",
"announce_text": "Pan-Pan. This is the commanding officer of the USS Hanyut, USCMC FORECON. We are currently grounded on planet LV-522 in the immediate area of Chance's Claim. We are unable to contact the Hanyut and our dropships are unable to take off at this time. We are requesting assistance from any nearby vessels; this broadcast is set to repeat every 24 hours.",
"map_item_type": "/obj/item/map/lv522_map",
"monkey_types": [
Expand Down
Loading