Skip to content

Commit

Permalink
TGS Test Merge (#136)
Browse files Browse the repository at this point in the history
  • Loading branch information
tgstation-server committed May 23, 2024
2 parents bf56402 + 6cc9e0e commit 5d703a0
Show file tree
Hide file tree
Showing 57 changed files with 28,796 additions and 71 deletions.
7 changes: 7 additions & 0 deletions code/__DEFINES/access.dm
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,10 @@ most of them are tied into map-placed objects. This should be reworked in the fu
///WY access given to field executives, like a marine liaison.
#define ACCESS_WY_EXEC 207

//theta
#define ACCESS_PMC_SQUAD_ONE 208
#define ACCESS_PMC_SQUAD_TWO 209

#define ACCESS_WY_PMC 210
#define ACCESS_WY_PMC_TL 211
#define ACCESS_WY_ARMORY 212
Expand All @@ -96,6 +100,9 @@ most of them are tied into map-placed objects. This should be reworked in the fu
///Senior leadership, the highest ranks
#define ACCESS_WY_SENIOR_LEAD 216

#define ACCESS_PMC_GUNNER 217


//=================================================

//Union of Progressive Peoples access levels (230-259)
Expand Down
11 changes: 11 additions & 0 deletions code/__DEFINES/job.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
#define SQUAD_SOF "SOF"
#define SQUAD_CBRN "CBRN"
#define SQUAD_UPP "Red Dawn"
#define SQUAD_PMCPLT "AZURE-15"
#define SQUAD_LRRP "Snake Eaters"

// Job name defines
Expand Down Expand Up @@ -226,6 +227,16 @@ var/global/list/job_command_roles = JOB_COMMAND_ROLES_LIST

#define JOB_WY_GOON_LIST list(JOB_WY_GOON, JOB_WY_GOON_LEAD)

////-------- PMC PLATOON --------//

#define JOB_PMCPLAT_OW "OVERWATCH"
#define JOB_PMCPLAT_LEADER "Operations Leader"
#define JOB_PMCPLAT_FTL "Team Leader"
#define JOB_PMCPLAT_SG "Heavy Weapons Specialist"
#define JOB_PMCPLAT_STANDARD "Tactical Unit"
#define JOB_PMCPLAT_MEDIC "Medical Specialist"


//---- Contractors ----//
#define JOB_CONTRACTOR "VAIPO Mercenary"
#define JOB_CONTRACTOR_ST "VAIPO Mercenary"
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/minimap.dm
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ GLOBAL_LIST_INIT(all_minimap_flags, bitfield2list(MINIMAP_FLAG_ALL))
#define MINIMAP_SQUAD_SOF "#400000"
#define MINIMAP_SQUAD_INTEL "#053818"
#define MINIMAP_SQUAD_UPP "#B22222"
#define MINIMAP_SQUAD_PMC "#ccffe9"

#define MINIMAP_ICON_BACKGROUND_CIVILIAN "#7D4820"
#define MINIMAP_ICON_BACKGROUND_CIC "#3f3f3f"
Expand Down
3 changes: 2 additions & 1 deletion code/__DEFINES/mode.dm
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ var/global/list/ROLES_ENGINEERING = list(JOB_CHIEF_ENGINEER, JOB_ORDNANCE_TECH,
var/global/list/ROLES_REQUISITION = list(JOB_CHIEF_REQUISITION, JOB_CARGO_TECH, JOB_WO_CHIEF_REQUISITION, JOB_WO_REQUISITION)
var/global/list/ROLES_MEDICAL = list(JOB_CMO, JOB_RESEARCHER, JOB_DOCTOR, JOB_NURSE, JOB_WO_CMO, JOB_WO_RESEARCHER, JOB_WO_DOCTOR)
var/global/list/ROLES_MARINES = list(JOB_SQUAD_LEADER, JOB_SQUAD_TEAM_LEADER, JOB_SQUAD_SPECIALIST, JOB_SQUAD_SMARTGUN, JOB_SQUAD_MEDIC, JOB_SQUAD_ENGI, JOB_SQUAD_MARINE, JOB_SQUAD_RTO)
var/global/list/ROLES_SQUAD_ALL = list(SQUAD_MARINE_1, SQUAD_MARINE_2, SQUAD_MARINE_3, SQUAD_MARINE_4, SQUAD_MARINE_5, SQUAD_MARINE_CRYO, SQUAD_MARINE_INTEL, SQUAD_UPP, SQUAD_LRRP)
var/global/list/ROLES_SQUAD_ALL = list(SQUAD_MARINE_1, SQUAD_MARINE_2, SQUAD_MARINE_3, SQUAD_MARINE_4, SQUAD_MARINE_5, SQUAD_MARINE_CRYO, SQUAD_MARINE_INTEL, SQUAD_UPP, SQUAD_PMCPLT, SQUAD_LRRP)

//Groundside roles
var/global/list/ROLES_XENO = list(JOB_XENOMORPH_QUEEN, JOB_XENOMORPH)
Expand All @@ -142,6 +142,7 @@ var/global/list/ROLES_AI = list(JOB_SO, JOB_SQUAD_LEADER, JOB_SQUAD_MEDIC, JOB_S
var/global/list/ROLES_AI_UPP = list(JOB_SO_UPP, JOB_SQUAD_LEADER_UPP, JOB_SQUAD_MEDIC_UPP, JOB_SQUAD_TEAM_LEADER_UPP, JOB_SQUAD_SMARTGUN_UPP, JOB_SQUAD_MARINE_UPP)
var/global/list/ROLES_AI_FORECON = list(JOB_SQUAD_LEADER_FORECON, JOB_SQUAD_MEDIC_FORECON, JOB_SQUAD_TEAM_LEADER_FORECON, JOB_SQUAD_SMARTGUN_FORECON, JOB_SQUAD_MARINE_FORECON, JOB_SQUAD_RTO)
var/global/list/ROLES_WO = list(JOB_WO_CO, JOB_WO_XO, JOB_WO_CORPORATE_LIAISON, JOB_WO_SYNTH, JOB_WO_CHIEF_POLICE, JOB_WO_SO, JOB_WO_CREWMAN, JOB_WO_POLICE, JOB_WO_PILOT, JOB_WO_CHIEF_ENGINEER, JOB_WO_ORDNANCE_TECH, JOB_WO_CHIEF_REQUISITION, JOB_WO_REQUISITION, JOB_WO_CMO, JOB_WO_DOCTOR, JOB_WO_RESEARCHER, JOB_WO_SQUAD_MARINE, JOB_WO_SQUAD_MEDIC, JOB_WO_SQUAD_ENGINEER, JOB_WO_SQUAD_SMARTGUNNER, JOB_WO_SQUAD_SPECIALIST, JOB_WO_SQUAD_LEADER)
var/global/list/ROLES_PMCPLT = list(JOB_PMCPLAT_OW, JOB_PMCPLAT_LEADER, JOB_PMCPLAT_FTL, JOB_PMCPLAT_SG, JOB_PMCPLAT_STANDARD, JOB_PMCPLAT_MEDIC)
//Role lists used for switch() checks in show_blurb_uscm(). Cosmetic, determines ex. "Engineering, USS Almayer", "2nd Bat. 'Falling Falcons'" etc.
#define BLURB_USCM_COMBAT JOB_CO, JOB_XO, JOB_SO, JOB_WO_CO, JOB_WO_XO, JOB_WO_CHIEF_POLICE, JOB_WO_SO, JOB_WO_CREWMAN, JOB_WO_POLICE, JOB_SEA,\
JOB_SQUAD_LEADER, JOB_SQUAD_TEAM_LEADER, JOB_SQUAD_SPECIALIST, JOB_SQUAD_SMARTGUN, JOB_SQUAD_MEDIC, JOB_SQUAD_ENGI, JOB_SQUAD_MARINE
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/shuttles.dm
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,7 @@
#define DROPSHIP_NORMANDY "dropship_normandy"
#define DROPSHIP_UPP "dropship_upp"
#define DROPSHIP_CYCLONE "dropship_cyclone"
#define DROPSHIP_PMC "dropship_pmc"

#define ALMAYER_DROPSHIP_LZ1 "almayer-hangar-lz1"
#define ALMAYER_DROPSHIP_LZ2 "almayer-hangar-lz2"
Expand Down
11 changes: 10 additions & 1 deletion code/datums/ammo/bullet/smg.dm
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,18 @@
/datum/ammo/bullet/smg/m39
name = "high-velocity submachinegun bullet" //i don't want all smgs to inherit 'high velocity'

/datum/ammo/bullet/smg/pve
name = "squash-head submachinegun duplex bullet"
shell_speed = AMMO_SPEED_TIER_4 //high velocitisn't
bonus_projectiles_type = /datum/ammo/bullet/smg/duplex
bonus_projectiles_amount = EXTRA_PROJECTILES_TIER_1 //1 extra

/datum/ammo/bullet/smg/duplex
name = "squash-head submachinegun duplex bullet"
shell_speed = AMMO_SPEED_TIER_3 //high velocitisn't - lags behind first

/datum/ammo/bullet/smg/ap
name = "armor-piercing submachinegun bullet"

damage = 26
penetration = ARMOR_PENETRATION_TIER_6
shell_speed = AMMO_SPEED_TIER_4
Expand Down
5 changes: 5 additions & 0 deletions code/datums/ammo/misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,11 @@
R.durationfire = BURN_TIME_INSTANT
new /obj/flamer_fire(T, cause_data, R, 0)

/datum/ammo/flamethrower/pve/drop_flame(turf/T, datum/cause_data/cause_data)
if(!istype(T)) return
var/datum/reagent/R = new flamer_reagent_type()
new /obj/flamer_fire(T, cause_data, R, 1)

/datum/ammo/flare
name = "flare"
ping = null //no bounce off.
Expand Down
35 changes: 34 additions & 1 deletion code/datums/factions/pmc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
else if(ID)
_role = ID.rank
switch(_role)
if(JOB_PMC_DIRECTOR)
if(JOB_PMC_DIRECTOR, JOB_SO)
hud_icon_state = "sd"
if(JOB_PMC_LEADER, JOB_PMC_LEAD_INVEST)
hud_icon_state = "ld"
Expand All @@ -26,6 +26,39 @@
if(hud_icon_state)
holder.overlays += image('icons/mob/hud/marine_hud.dmi', H, "pmc_[hud_icon_state]")


var/datum/squad/squad = H.assigned_squad
if(istype(squad, /datum/squad/marine/pmc))
var/squad_clr = H.assigned_squad.equipment_color
switch(GET_DEFAULT_ROLE(_role))
if(JOB_SQUAD_MEDIC) hud_icon_state = "med"
if(JOB_SQUAD_SMARTGUN) hud_icon_state = "gun"
if(JOB_SQUAD_TEAM_LEADER) hud_icon_state = "tl"
if(JOB_SQUAD_LEADER) hud_icon_state = "leader_a"
if(squad.fireteam_leaders["SQ1"] == H || squad.fireteam_leaders["SQ2"] == H)
H.langchat_styles = "langchat_smaller_bolded"
else
H.langchat_styles = initial(H.langchat_styles)
H.langchat_color = H.assigned_squad.chat_color

if(!hud_icon_state) hud_icon_state = H.rank_fallback
if(hud_icon_state)
var/image/IMG = image('icons/mob/hud/marine_hud.dmi', H, "hudsquad")
if(squad_clr)
IMG.color = squad_clr
else
IMG.color = "#5A934A"
holder.overlays += IMG
holder.overlays += image('icons/mob/hud/marine_hud.dmi', H, "hudsquad_[hud_icon_state]")
if(H.assigned_squad && H.assigned_fireteam)
var/image/IMG2 = image('icons/mob/hud/marine_hud.dmi', H, "hudsquad_[H.assigned_fireteam]")
IMG2.color = squad_clr
holder.overlays += IMG2
if(H.assigned_squad.fireteam_leaders[H.assigned_fireteam] == H)
var/image/IMG3 = image('icons/mob/hud/marine_hud.dmi', H, "hudsquad_ftl")
IMG3.color = squad_clr
holder.overlays += IMG3

/datum/faction/pmc/get_antag_guns_snowflake_equipment()
return list(
list("PRIMARY FIREARMS", 0, null, null, null),
Expand Down
13 changes: 13 additions & 0 deletions code/datums/paygrades/factions/wy/pmc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,13 @@
prefix = "TML."
pay_multiplier = 3.5

/datum/paygrade/pmc/oplead
paygrade = "PMC-OL"
name = "Operations Leader"
prefix = "OPL."
pay_multiplier = 3.5


/datum/paygrade/pmc/elitelead
paygrade = "PMC-ETL"
name = "Elite Team Leader"
Expand All @@ -95,3 +102,9 @@
name = "Site Director"
prefix = "DIR."
pay_multiplier = 10 //it's a corpo director. money is what they care about.

/datum/paygrade/pmc/overwatch
paygrade = "PMC-OW"
name = "Overwatch"
prefix = "OW."
pay_multiplier = 10
12 changes: 12 additions & 0 deletions code/game/area/Sulaco.dm
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,18 @@
return FALSE
return TRUE

/area/shuttle/pmc
name = "dropship Orphan Stomper"
icon_state = "shuttlered"
base_muffle = MUFFLE_HIGH
soundscape_interval = 30
is_landing_zone = TRUE
ceiling = CEILING_REINFORCED_METAL

/area/shuttle/pmc/Enter(atom/movable/O, atom/oldloc)
if(istype(O, /obj/structure/barricade))
return FALSE
return TRUE

//DISTRESS SHUTTLES

Expand Down
50 changes: 50 additions & 0 deletions code/game/area/lead_hawk.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
/area/lead_hawk
icon = 'icons/turf/area_almayer.dmi'
icon_state = "almayer"
ceiling = CEILING_METAL
powernet_name = "lead_hawk"
sound_environment = SOUND_ENVIRONMENT_ROOM
soundscape_interval = 30
ambience_exterior = AMBIENCE_ALMAYER
ceiling_muffle = FALSE

/area/lead_hawk/medical
name = "Medical"

/area/lead_hawk/cryo_cell
name = "Cryo Cell"

/area/lead_hawk/engineer
name = "Engineering"

/area/lead_hawk/squad_theta
name = "Theta Squad Prep"

/area/lead_hawk/squad_omega
name = "Omega Squad Prep"

/area/lead_hawk/cafeteria
name = "Cafeteria"

/area/lead_hawk/briefing
name = "Briefing"

/area/lead_hawk/ares
name = "OVERLORD Restricted Area"
soundscape_playlist = SCAPE_PL_ARES
soundscape_interval = 120

/area/lead_hawk/supply
name = "Supply"

/area/lead_hawk/ptsgt
name = "Operational Leaders' Room"

/area/lead_hawk/co
name = "OVERWATCH Center"

/area/lead_hawk/hangar
name = "\improper Hangar"
icon_state = "hangar"
soundscape_playlist = SCAPE_PL_HANGAR
soundscape_interval = 50
12 changes: 10 additions & 2 deletions code/game/gamemodes/colonialmarines/ai/colonialmarines_ai.dm
Original file line number Diff line number Diff line change
Expand Up @@ -85,13 +85,19 @@ GLOBAL_LIST_INIT(platoon_to_jobs, list(/datum/squad/marine/alpha = list(/datum/j
/datum/job/marine/medic/ai = JOB_SQUAD_MEDIC,\
/datum/job/marine/tl/ai = JOB_SQUAD_TEAM_LEADER,
/datum/job/marine/smartgunner/ai = JOB_SQUAD_SMARTGUN,\
/datum/job/marine/standard/ai = JOB_SQUAD_MARINE), \
/datum/job/marine/standard/ai = JOB_SQUAD_MARINE),\
/datum/squad/marine/upp = list(/datum/job/command/bridge/ai/upp = JOB_SO,\
/datum/job/marine/leader/ai/upp = JOB_SQUAD_LEADER,\
/datum/job/marine/medic/ai/upp = JOB_SQUAD_MEDIC,\
/datum/job/marine/tl/ai/upp = JOB_SQUAD_TEAM_LEADER,
/datum/job/marine/smartgunner/ai/upp = JOB_SQUAD_SMARTGUN,\
/datum/job/marine/standard/ai/upp = JOB_SQUAD_MARINE),\
/datum/job/marine/standard/ai/upp = JOB_SQUAD_MARINE),
/datum/squad/marine/pmc = list(/datum/job/marine/tl/ai/pmc = JOB_SQUAD_MARINE,\
/datum/job/marine/standard/ai/pmc = JOB_SQUAD_TEAM_LEADER,\
/datum/job/marine/medic/ai/pmc = JOB_SQUAD_MEDIC,\
/datum/job/marine/smartgunner/ai/pmc = JOB_SQUAD_SMARTGUN,\
/datum/job/marine/leader/ai/pmc = JOB_SQUAD_LEADER,\
/datum/job/command/bridge/ai/pmc = JOB_PMCPLAT_OW),\
/datum/squad/marine/forecon = list(/datum/job/marine/standard/ai/forecon = JOB_SQUAD_MARINE,\
/datum/job/marine/standard/ai/rto = JOB_SQUAD_RTO,\
/datum/job/marine/leader/ai/forecon = JOB_SQUAD_LEADER,\
Expand All @@ -101,4 +107,6 @@ GLOBAL_LIST_INIT(platoon_to_jobs, list(/datum/squad/marine/alpha = list(/datum/j

GLOBAL_LIST_INIT(platoon_to_role_list, list(/datum/squad/marine/alpha = ROLES_AI,\
/datum/squad/marine/upp = ROLES_AI_UPP,\
/datum/squad/marine/pmc = ROLES_PMCPLT,\
/datum/squad/marine/forecon = ROLES_AI_FORECON))

12 changes: 12 additions & 0 deletions code/game/jobs/job/command/cic/staffofficer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -79,5 +79,17 @@ AddTimelock(/datum/job/command/bridge, list(
icon_state = "so_spawn"
job = /datum/job/command/bridge/ai/upp

/datum/job/command/bridge/ai/pmc
title = JOB_PMCPLAT_OW
// todo: funny AR goggles perma cyan gear_preset =
// todo: above gear_preset_secondary = /datum/equipment_preset/uscm_ship/so/upp/lesser_rank

gear_preset = /datum/equipment_preset/uscm_ship/so/pmc
job_options = list(FIRST_LT_VARIANT = "OVERWATCH", SECOND_LT_VARIANT = "OVERLORD")

/obj/effect/landmark/start/bridge/pmc
name = JOB_PMCPLAT_OW
job = /datum/job/command/bridge/ai/pmc

#undef SECOND_LT_VARIANT
#undef FIRST_LT_VARIANT
12 changes: 12 additions & 0 deletions code/game/jobs/job/marine/squad/leader.dm
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,22 @@ AddTimelock(/datum/job/marine/leader, list(
squad = SQUAD_UPP
job = /datum/job/marine/leader/ai/upp


/datum/job/marine/leader/ai/pmc
title = JOB_PMCPLAT_LEADER
gear_preset = /datum/equipment_preset/uscm/pmc/sl
gear_preset_secondary = /datum/equipment_preset/uscm/pmc/sl

/obj/effect/landmark/start/marine/leader/pmc
name = JOB_PMCPLAT_LEADER
squad = SQUAD_PMCPLT
job = /datum/job/marine/leader/ai/pmc

/obj/effect/landmark/start/marine/leader/forecon
name = JOB_SQUAD_LEADER_FORECON
squad = SQUAD_LRRP
job = /datum/job/marine/leader/ai/forecon


#undef SSGT_VARIANT
#undef GYSGT_VARIANT
12 changes: 12 additions & 0 deletions code/game/jobs/job/marine/squad/medic.dm
Original file line number Diff line number Diff line change
Expand Up @@ -96,10 +96,22 @@ AddTimelock(/datum/job/marine/medic, list(
squad = SQUAD_UPP
job = /datum/job/marine/medic/ai/upp


/datum/job/marine/medic/ai/pmc
title = JOB_PMCPLAT_MEDIC
gear_preset = /datum/equipment_preset/uscm/pmc/med
gear_preset_secondary = /datum/equipment_preset/uscm/pmc/med

/obj/effect/landmark/start/marine/medic/pmc
name = JOB_PMCPLAT_MEDIC
squad = SQUAD_PMCPLT
job = /datum/job/marine/medic/ai/pmc

/obj/effect/landmark/start/marine/medic/forecon
name = JOB_SQUAD_MEDIC_FORECON
squad = SQUAD_LRRP
job = /datum/job/marine/medic/ai/forecon


#undef LCPL_VARIANT
#undef CPL_VARIANT
12 changes: 12 additions & 0 deletions code/game/jobs/job/marine/squad/smartgunner.dm
Original file line number Diff line number Diff line change
Expand Up @@ -93,10 +93,22 @@ AddTimelock(/datum/job/marine/smartgunner, list(
job = JOB_SQUAD_SMARTGUN_UPP
squad = SQUAD_UPP


/datum/job/marine/smartgunner/ai/pmc
title = JOB_PMCPLAT_SG
gear_preset = /datum/equipment_preset/uscm/pmc/sg
gear_preset_secondary = /datum/equipment_preset/uscm/pmc/sg


/obj/effect/landmark/start/marine/smartgunner/pmc
name = JOB_PMCPLAT_SG
squad = SQUAD_PMCPLT

/obj/effect/landmark/start/marine/smartgunner/forecon
name = JOB_SQUAD_SMARTGUN_FORECON
job = JOB_SQUAD_SMARTGUN_FORECON
squad = SQUAD_LRRP


#undef LCPL_VARIANT
#undef CPL_VARIANT
12 changes: 12 additions & 0 deletions code/game/jobs/job/marine/squad/standard.dm
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,17 @@
squad = SQUAD_UPP
job = /datum/job/marine/standard/ai/upp


/datum/job/marine/standard/ai/pmc
title = JOB_PMCPLAT_STANDARD
gear_preset = /datum/equipment_preset/uscm/pmc
gear_preset_secondary = /datum/equipment_preset/uscm/pmc

/obj/effect/landmark/start/marine/pmc
name = JOB_PMCPLAT_STANDARD
squad = SQUAD_PMCPLT
job = /datum/job/marine/standard/ai/pmc

/obj/effect/landmark/start/marine/forecon
name = JOB_SQUAD_MARINE_FORECON
squad = SQUAD_LRRP
Expand All @@ -92,5 +103,6 @@
squad = SQUAD_LRRP
job = /datum/job/marine/standard/ai/rto


#undef PVT_VARIANT
#undef PFC_VARIANT
Loading

0 comments on commit 5d703a0

Please sign in to comment.