Skip to content

Commit

Permalink
Lore, DMI changes, preset updates
Browse files Browse the repository at this point in the history
- New armor & helmet lore
- UPP helmet now has HUD optics
- UPP armor no longer as slow
- Presets brought into cohesion
  • Loading branch information
AmoryBlaine committed Aug 21, 2024
1 parent 28c4764 commit 663d4f2
Show file tree
Hide file tree
Showing 16 changed files with 76 additions and 108 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -225,8 +225,8 @@ GLOBAL_LIST_INIT(cm_vending_clothing_upp_medic, list(
list("Ration", 0, /obj/item/reagent_container/food/snacks/upp, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY),

list("ARMOR (CHOOSE 1)", 0, null, null, null),
list("Support Armor", 0, /obj/item/clothing/suit/storage/marine/faction/UPP/support, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_RECOMMENDED),
list("Personal Armor", 0, /obj/item/clothing/suit/storage/marine/faction/UPP, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_REGULAR),
list("6B72-03 Combat Vest", 0, /obj/item/clothing/suit/storage/marine/faction/UPP/light, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_RECOMMENDED),
list("6B90 Carapace Armor", 0, /obj/item/clothing/suit/storage/marine/faction/UPP, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_REGULAR),

list("BACKPACK (CHOOSE 1)", 0, null, null, null),
list("Medical Backpack", 0, /obj/item/storage/backpack/marine/medic/upp, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_REGULAR),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@
list("Military Combat Boots", round(scale * 15), /obj/item/clothing/shoes/marine/upp, VENDOR_ITEM_REGULAR),
list("UPP Uniform", round(scale * 15), /obj/item/clothing/under/marine/veteran/UPP, VENDOR_ITEM_REGULAR),
list("Combat Gloves", round(scale * 15), /obj/item/clothing/gloves/marine, VENDOR_ITEM_REGULAR),
list("UM4 Pattern Helmet", round(scale * 15), /obj/item/clothing/head/helmet/marine/veteran/UPP, VENDOR_ITEM_REGULAR),
list("6B75 Combat Helmet", round(scale * 15), /obj/item/clothing/head/helmet/marine/veteran/UPP, VENDOR_ITEM_REGULAR),
list("Radio Headset", round(scale * 15), /obj/item/device/radio/headset/distress/UPP, VENDOR_ITEM_REGULAR),

list("WEBBINGS", -1, null, null),
Expand All @@ -178,11 +178,11 @@
list("Shoulder Holster", round(max(1,(scale * 0.5))), /obj/item/clothing/accessory/storage/holster, VENDOR_ITEM_REGULAR),

list("ARMOR", -1, null, null),
list("Type 5 carapace armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/faction/UPP, VENDOR_ITEM_REGULAR),
list("Type 3 vest armor", round(scale * 10), /obj/item/clothing/suit/storage/marine/faction/UPP/support, VENDOR_ITEM_REGULAR),
list("6B90 Carapace Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/faction/UPP, VENDOR_ITEM_REGULAR),
list("6B91 Carapace Armor", round(scale * 10), /obj/item/clothing/suit/storage/marine/faction/UPP/heavy, VENDOR_ITEM_REGULAR),
list("6B72-03 Combat Vest", round(scale * 10), /obj/item/clothing/suit/storage/marine/faction/UPP/light, VENDOR_ITEM_REGULAR),

list("BACKPACK", -1, null, null, null),
list("Lightweight IMP Backpack", round(scale * 15), /obj/item/storage/backpack/marine, VENDOR_ITEM_REGULAR),
list("UPP Satchel", round(scale * 15), /obj/item/storage/backpack/lightpack/upp, VENDOR_ITEM_REGULAR),

list("RESTRICTED BACKPACKS", -1, null, null),
Expand Down
5 changes: 5 additions & 0 deletions code/game/objects/items/devices/helmet_visors.dm
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,11 @@
/obj/item/device/helmet_visor/proc/get_helmet_examine_text()
return SPAN_NOTICE("\A [name] is flipped down.")

/obj/item/device/helmet_visor/upp
name = "squad optic"
desc = "An insertable visor HUD into a standard UPP helmet."
hud_type = MOB_HUD_FACTION_UPP

/obj/item/device/helmet_visor/medical
name = "basic medical optic"
icon_state = "med_sight"
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/items/storage/backpack.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1069,7 +1069,7 @@
/obj/item/storage/backpack/marine/satchel/scout_cloak/upp
name = "\improper V86 Thermal Cloak"
desc = "A thermo-optic camouflage cloak commonly used by UPP commando units."
uniform_restricted = list(/obj/item/clothing/suit/storage/marine/faction/UPP/commando) //Need to wear UPP commando armor to equip this.
uniform_restricted = list(/obj/item/clothing/suit/storage/marine/faction/UPP/light) //Need to wear UPP commando armor to equip this.

max_storage_space = 21
camo_alpha = 10
Expand Down
60 changes: 26 additions & 34 deletions code/modules/clothing/head/helmet.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1107,8 +1107,8 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list(

// UPP Are very powerful against bullets (marines) but middling against melee (xenos)
/obj/item/clothing/head/helmet/marine/veteran/UPP
name = "\improper Type 5 helmet"
desc = "EVA-capable enclosed helmet of the UPP's Naval Infantry. This instance lacks the attachable visor to properly seal the helmet, which is typically foregone in favour of better visibility."
name = "\improper 6B75 helmet"
desc = "Union combat helmet Almaz. Part of protective complex Kuija-M, constructed of a thin alloy shattering plate and para-aramid underlayers. The helmet includes cheek shields for shrapnel or ricochet protection, a low resolution camera system, hearing protection, and an integrated communications system. Ports for connecting infrared visors or night vision systems are also provided."
icon_state = "upp_helmet"
armor_bullet = CLOTHING_ARMOR_HIGH
armor_energy = CLOTHING_ARMOR_MEDIUM
Expand All @@ -1117,31 +1117,25 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list(
armor_rad = CLOTHING_ARMOR_MEDIUMLOW
armor_internaldamage = CLOTHING_ARMOR_HIGH
min_cold_protection_temperature = ICE_PLANET_MIN_COLD_PROT
clothing_traits = list(TRAIT_EAR_PROTECTION) //the sprites clearly fully cover the ears and most of the head
clothing_traits = list(TRAIT_EAR_PROTECTION)
flags_marine_helmet = HELMET_SQUAD_OVERLAY|HELMET_GARB_OVERLAY|HELMET_DAMAGE_OVERLAY
built_in_visors = list(new /obj/item/device/helmet_visor/upp)

/obj/item/clothing/head/helmet/marine/veteran/UPP/engi
name = "\improper UM4-V helmet"
desc = "This version of the UM4 helmet has a ballistic-glass visor, allowing for the UPP Engineers to safely weld, but by some reports hindering sight in the process."
icon_state = "upp_helmet_engi"
armor_melee = CLOTHING_ARMOR_MEDIUMHIGH
armor_energy = CLOTHING_ARMOR_MEDIUM
armor_bomb = CLOTHING_ARMOR_HIGH
var/protection_on = TRUE

/obj/item/clothing/head/helmet/marine/veteran/UPP/heavy
name = "\improper Type 6 helmet"
/* /obj/item/clothing/head/helmet/marine/veteran/UPP/heavy
name = "\improper 6B79 helmet"
desc = "EVA-capable enclosed helmet of the UPP's Naval Infantry. Despite offering a higher armor rating, this helmet's cumbersome design has kept it from outright replacing the Type 5, instead being utilized mostly by heavy machinegunners."
icon_state = "upp_helmet_heavy"
armor_melee = CLOTHING_ARMOR_MEDIUMHIGH
armor_bullet = CLOTHING_ARMOR_HIGHPLUS
armor_energy = CLOTHING_ARMOR_MEDIUM
armor_bomb = CLOTHING_ARMOR_HIGH
armor_bio = CLOTHING_ARMOR_MEDIUM
armor_internaldamage = CLOTHING_ARMOR_HIGHPLUS
armor_internaldamage = CLOTHING_ARMOR_HIGHPLUS */

/obj/item/clothing/head/uppcap
name = "\improper UL2 UPP cap"
desc = "UPP headgear issued to soldiers when they're not expected to face combat, and may be requested by officers and above."
name = "\improper UL2 cap"
desc = "Standard issue patrol cap of the UPP's military."
icon = 'icons/obj/items/clothing/cm_hats.dmi'
icon_state = "upp_cap"
item_icons = list(
Expand All @@ -1161,39 +1155,40 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list(
min_cold_protection_temperature = ICE_PLANET_MIN_COLD_PROT
flags_inventory = null

/obj/item/clothing/head/uppcap/civi
name = "\improper UL2c cap"
icon_state = "upp_cap_civi"

/obj/item/clothing/head/uppcap/boonie
name = "\improper UL3 UPP hat"
desc = "UPP headgear issued to soldiers when they're not expected to face combat, and may be requested by officers and above."
name = "\improper UL5 hat"
desc = "Standard issue soft brimmed hat for Territorial Guard units stationed in areas with extreme heat."
icon = 'icons/obj/items/clothing/cm_hats.dmi'
icon_state = "upp_boonie"

/obj/item/clothing/head/uppcap/beret/naval
name = "\improper UL4 UPP Naval Infantry beret"
desc = "A Naval Infantry beret worn by the UPP's equivalent of the USCM. Wear it with pride."
name = "\improper UL4 Naval Infantry beret"
desc = "A black beret worn by the UPP's Naval Infantry. Wear it with pride."
icon = 'icons/obj/items/clothing/cm_hats.dmi'
icon_state = "upp_beret_naval"

/obj/item/clothing/head/uppcap/civi
name = "\improper UL2 UPP cap"
desc = "UPP civilian headgear. It's of poor quality, and isn't expected to last all that long, however for as long as it's whole, it appears quite stylish."
icon_state = "upp_cap_civi"

/obj/item/clothing/head/uppcap/beret
name = "\improper UL3 UPP beret"
name = "\improper UL3 beret"
desc = "Standard issue beret of the UPP's military."
icon_state = "upp_beret"

/obj/item/clothing/head/uppcap/peaked
name = "\improper UL3 UPP peaked cap"
desc = "UPP headgear issued to Kapitans and above. It is made of high-quality materials, and has the officers rank in gold placed upon the front of the cap."
name = "\improper UL3 peaked cap"
desc = "Standard issue peaked service cap of the UPP's military."
icon_state = "upp_peaked"

/obj/item/clothing/head/uppcap/peaked/police
name = "\improper UL3 PaP peaked cap"
desc = "UPP headgear issued to constables of the People's Police."
desc = "Standard issue peaked cap of the People's Police."
icon_state = "upp_peaked_police"

/obj/item/clothing/head/uppcap/ushanka
name = "\improper UL8 UPP ushanka"
name = "\improper UL2 ushanka"
desc = "Standard issue cold weather hat of the UPP's military."
icon_state = "upp_ushanka"
item_state = "upp_ushanka"
var/tied = FALSE
Expand All @@ -1219,10 +1214,8 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list(

update_clothing_icon(src) //Update the on-mob icon.



/obj/item/clothing/head/uppcap/ushanka/civi
name = "\improper UL8c UPP ushanka"
name = "\improper UL2c ushanka"
icon_state = "upp_ushanka_civi"
item_state = "upp_ushanka_civi"
original_state = "upp_ushanka_civi"
Expand All @@ -1235,7 +1228,6 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list(
item_state = "s_helmet"
flags_marine_helmet = NO_FLAGS


//head rag

/obj/item/clothing/head/helmet/specrag
Expand Down
67 changes: 30 additions & 37 deletions code/modules/clothing/suits/marine_armor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
)
flags_atom = FPRINT|CONDUCT
flags_inventory = BLOCKSHARPOBJ
flags_armor_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN|BODY_FLAG_ARMS|BODY_FLAG_LEGS
flags_armor_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN|BODY_FLAG_LEGS
flags_cold_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN|BODY_FLAG_ARMS|BODY_FLAG_LEGS
flags_heat_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN|BODY_FLAG_ARMS|BODY_FLAG_LEGS
min_cold_protection_temperature = HELMET_MIN_COLD_PROT
Expand Down Expand Up @@ -437,17 +437,15 @@
flags_atom = NO_SNOW_TYPE
icon_state = "8fancy"

/obj/item/clothing/suit/storage/marine/faction/UPP/heavy

/obj/item/clothing/suit/storage/marine/smartgunner/upp
name = "\improper Type 5-H UPP armor"
desc = "Experimental variant of the standard body armor of the UPP Naval Infantry, the Type 5 provides excellent defense against everything up to and including peer service rifle rounds, putting it slightly ahead of the lighter M3 pattern armor in service with the USCM. This variant has included the less popular arm plates providing total coverage as well as an experimental harness for the QYJ-72-I smartmachinegun. Another aspect of the armor is the sealed neckguard designed to work in tandem with the armor's EVA-capable helmet."
icon_state = "upp_armor_heavy"
name = "\improper 6B91-2 UPP armor"
desc = "Deep modification of the standard body armor, intended for Union machinegunners. Contains compact fire control computers and an encrypted data processing unit in the lower back, as well as an armored cable to connect to the machine gun. Covers all requirements to operate the weapon, but a common complaint is the bulkiness."
icon_state = "upp_armor_support"
storage_slots = 1
slowdown = SLOWDOWN_ARMOR_HEAVY
slowdown = SLOWDOWN_ARMOR_LOWHEAVY
flags_atom = NO_SNOW_TYPE|NO_NAME_OVERRIDE
flags_inventory = BLOCKSHARPOBJ|SMARTGUN_HARNESS
flags_armor_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN|BODY_FLAG_ARMS|BODY_FLAG_LEGS
flags_armor_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN|BODY_FLAG_LEGS
armor_melee = CLOTHING_ARMOR_HIGH
armor_bullet = CLOTHING_ARMOR_HIGH
armor_laser = CLOTHING_ARMOR_MEDIUMLOW
Expand Down Expand Up @@ -1322,13 +1320,12 @@
slowdown = SLOWDOWN_ARMOR_MEDIUM
movement_compensation = SLOWDOWN_ARMOR_LIGHT


/obj/item/clothing/suit/storage/marine/faction/UPP
name = "\improper Type 5 UPP armor"
desc = "Standard body armor of the UPP Naval Infantry, the Type 5 armor system provides excellent defense against everything up to and including peer service rifle rounds, putting it slightly ahead of the lighter M3 pattern armor in service with the USCM. It lacks the fullbody coverage that would otherwise be offered by the missing arm plating. Another aspect of the armor is the sealed neckguard designed to work in tandem with the armor's EVA-capable helmet."
name = "\improper 6B90 pattern UPP armor"
desc = "Union frontline issue body armor. Part of protective complex Kuija-M, 6B90 is capable of rifle threats with new ultralight alloy plates over the vitals, while ballistic mesh inserts provide torso protection from shrapnel or ricochets. A small transmitter on the lower back supports low resolution video/audio and biotelemetry feeds for the TOC. While designed to be one size fits all, the support system proves difficult to comfortably adjust."
icon_state = "upp_armor"
flags_armor_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN|BODY_FLAG_LEGS
slowdown = SLOWDOWN_ARMOR_LOWHEAVY
slowdown = SLOWDOWN_ARMOR_MEDIUM
flags_inventory = BLOCKSHARPOBJ
armor_melee = CLOTHING_ARMOR_HIGH
armor_bullet = CLOTHING_ARMOR_HIGH
Expand All @@ -1337,37 +1334,16 @@
armor_rad = CLOTHING_ARMOR_MEDIUMHIGH
armor_internaldamage = CLOTHING_ARMOR_HIGH
storage_slots = 3

/obj/item/clothing/suit/storage/marine/faction/UPP/support
name = "\improper Type 3 UPP armor"
desc = "A lightweight alternative to the Type 5, the Type 3 is weaker than its heavier, modernized alternative but provides better mobility."
icon_state = "upp_armor_light"
flags_armor_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN
slowdown = SLOWDOWN_ARMOR_LIGHT
armor_melee = CLOTHING_ARMOR_MEDIUM
armor_bullet = CLOTHING_ARMOR_MEDIUM
armor_bomb = CLOTHING_ARMOR_LOW
armor_bio = CLOTHING_ARMOR_LOW
armor_rad = CLOTHING_ARMOR_LOW
armor_internaldamage = CLOTHING_ARMOR_MEDIUM
time_to_unequip = 10
time_to_equip = 10
storage_slots = 3

/obj/item/clothing/suit/storage/marine/faction/UPP/commando
name = "\improper UM5CU personal armor"
desc = "A modification of the UM5, designed for stealth operations."
icon_state = "upp_armor_commando"
storage_slots = 2
slowdown = SLOWDOWN_ARMOR_LIGHT
flags_inventory = BLOCKSHARPOBJ

/obj/item/clothing/suit/storage/marine/faction/UPP/heavy
name = "\improper Type 5-H UPP armor"
desc = "Standard body armor of the UPP Naval Infantry, the Type 5 armor system provides excellent defense against everything up to and including peer service rifle rounds, putting it slightly ahead of the lighter M3 pattern armor in service with the USCM. This variant has included the less popular arm plates providing total coverage. Another aspect of the armor is the sealed neckguard designed to work in tandem with the armor's EVA-capable helmet."
name = "\improper 6B91 pattern UPP armor"
desc = "Union heavy armor system. Part of protective complex Kuija-M, 6B91 is an add-on kit that extends rifle grade protection along the arms, and AP protection along the chest. Because of drastically higher stamina requirements, the armor proves unpopular with most infantry, and is mostly seen in assault units or internal security forces."
icon_state = "upp_armor_heavy"
storage_slots = 3
flags_inventory = BLOCKSHARPOBJ
flags_armor_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN|BODY_FLAG_ARMS|BODY_FLAG_LEGS
slowdown = SLOWDOWN_ARMOR_LOWHEAVY

/obj/item/clothing/suit/storage/marine/faction/UPP/heavy/Initialize()
. = ..()
Expand All @@ -1376,6 +1352,23 @@
/obj/item/ammo_magazine/pkp,
)

/obj/item/clothing/suit/storage/marine/faction/UPP/light
name = "\improper 6B72-03 pattern UPP armor"
desc = "Vintage UPP armor system Vadasz. Provides basic ballistic/shrapnel protection for armor crew or rear line forces with wraparound soft armor and ceramic composite chestplate. Lightweight, but lacking protection class and coverage. Still issued to territorial forces, and used by some spetznaz."
icon_state = "upp_armor_light"
flags_armor_protection = BODY_FLAG_CHEST|BODY_FLAG_GROIN
slowdown = SLOWDOWN_ARMOR_VERY_LIGHT
armor_melee = CLOTHING_ARMOR_MEDIUM
armor_bullet = CLOTHING_ARMOR_MEDIUM
armor_bomb = CLOTHING_ARMOR_LOW
armor_bio = CLOTHING_ARMOR_LOW
armor_rad = CLOTHING_ARMOR_LOW
armor_internaldamage = CLOTHING_ARMOR_MEDIUM
time_to_unequip = 10
time_to_equip = 10
storage_slots = 2
flags_inventory = null

/obj/item/clothing/suit/storage/marine/faction/UPP/jacket
name = "\improper UH4 camouflaged jacket"
icon_state = "upp_coat"
Expand Down
21 changes: 0 additions & 21 deletions code/modules/clothing/under/marine_uniform.dm
Original file line number Diff line number Diff line change
Expand Up @@ -522,27 +522,6 @@
worn_state = "upp_boiler"
flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE|UNIFORM_JACKET_REMOVABLE

/obj/item/clothing/under/marine/veteran/UPP/medic
name = "\improper UPP medic fatigues"
desc = "A set of medic UPP fatigues, mass produced for the armed-forces of the Union of Progressive Peoples. A rare sight, especially in ICC zones. This particular set sports the dark drab pattern of the UPP 17th battalion, 'Smoldering Sons', operating in the sparse UPP frontier in the Anglo-Japanese arm."
icon_state = "upp_uniform_medic"
worn_state = "upp_uniform_medic"
flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE

/obj/item/clothing/under/marine/veteran/UPP/engi
name = "\improper UPP engineer fatigues"
desc = "A set of Engineer UPP fatigues, mass produced for the armed-forces of the Union of Progressive Peoples. A rare sight, especially in ICC zones. This particular set sports the dark drab pattern of the UPP 17th battalion, 'Smoldering Sons', operating in the sparse UPP frontier in the Anglo-Japanese arm."
icon_state = "upp_uniform_engi"
worn_state = "upp_uniform_engi"
flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE

/obj/item/clothing/under/marine/veteran/UPP/mp
name = "\improper UPP Military Police fatigues"
desc = "A set of Military Police UPP fatigues, mass produced for the armed-forces of the Union of Progressive Peoples. A rare sight, especially in ICC zones. This particular set sports the dark drab pattern of the UPP 17th battalion, 'Smoldering Sons', operating in the sparse UPP frontier in the Anglo-Japanese arm."
icon_state = "upp_uniform_mp"
worn_state = "upp_uniform_mp"
flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE

/obj/item/clothing/under/marine/veteran/UPP/officer
name = "\improper UPP Officer fatigues"
desc = "A set of Officer UPP fatigues, mass produced for the armed-forces of the Union of Progressive Peoples. A rare sight, especially in ICC zones. This particular set sports the dark drab pattern of the UPP 17th battalion, 'Smoldering Sons', operating in the sparse UPP frontier in the Anglo-Japanese arm."
Expand Down
2 changes: 1 addition & 1 deletion code/modules/gear_presets/_select_equipment.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1113,7 +1113,7 @@ var/list/rebel_rifles = list(
new_human.equip_to_slot_or_del(new /obj/item/tool/crowbar(new_human), WEAR_IN_JACKET)
if (5)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/veteran/UPP (new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/marine/faction/UPP/support(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/marine/faction/UPP/light(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/tool/crowbar(new_human), WEAR_IN_JACKET)

/datum/equipment_preset/proc/spawn_random_upp_belt(mob/living/carbon/human/new_human)
Expand Down
Loading

0 comments on commit 663d4f2

Please sign in to comment.