diff --git a/code/datums/research_upgrade_datum.dm b/code/datums/research_upgrade_datum.dm index fd571afdfcf0..c7f8370305af 100644 --- a/code/datums/research_upgrade_datum.dm +++ b/code/datums/research_upgrade_datum.dm @@ -209,3 +209,12 @@ minimum_price = 100 item_reference = /obj/item/clothing/accessory/health/research_plate/anti_decay +/datum/research_upgrades/armor/caustic + name = "XM-CL Armor Kit" + desc = "Part of an experimental armor set using the ANCW system to withstand acid." + value_upgrade = 2500 + on_init_argument = RESEARCH_UPGRADE_NOTHING_TO_PASS + behavior = RESEARCH_UPGRADE_ITEM + clearance_req = 5 + upgrade_type = ITEM_ARMOR_UPGRADE + item_reference = /obj/item/storage/box/kit/caustic diff --git a/code/modules/clothing/gloves/marine_gloves.dm b/code/modules/clothing/gloves/marine_gloves.dm index 6da362da30f4..15494a2dbfd8 100644 --- a/code/modules/clothing/gloves/marine_gloves.dm +++ b/code/modules/clothing/gloves/marine_gloves.dm @@ -219,3 +219,18 @@ item_state = "cbrn" armor_bio = CLOTHING_ARMOR_GIGAHIGHPLUS armor_rad = CLOTHING_ARMOR_GIGAHIGHPLUS + +//=RESEARCH ARMOR=\\ + +/obj/item/clothing/gloves/marine/caustic + name = "\improper XM-CL Gloves" + desc = "A pair of ANCW Gloves. Their insides are incredibly soft and cool to the touch." + icon_state = "caustic_h" + item_state = "caustic_h" + siemens_coefficient = 1 + armor_bullet = CLOTHING_ARMOR_VERYLOW + armor_laser = CLOTHING_ARMOR_VERYLOW + armor_bio = CLOTHING_ARMOR_HIGHPLUS + armor_rad = CLOTHING_ARMOR_HIGHPLUS + armor_internaldamage = CLOTHING_ARMOR_MEDIUM + adopts_squad_color = FALSE diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index 845ce2a6eb6e..9f370e9277ff 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -199,7 +199,6 @@ armor_internaldamage = CLOTHING_ARMOR_MEDIUM siemens_coefficient = 0.7 - //===========================//MARINES HELMETS\\=================================\\ //=======================================================================\\ @@ -995,6 +994,26 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list( built_in_visors = list(new /obj/item/device/helmet_visor/night_vision/marine_raider, new /obj/item/device/helmet_visor/security) start_down_visor_type = /obj/item/device/helmet_visor/night_vision/marine_raider +//=============================//Research\\==================================\\ + +/obj/item/clothing/head/helmet/marine/caustic + name = "\improper XM10-CL Helmet" + desc = "It's an ANCW Helmet. It is fitted with an integrated gas mask and visor. The inside is cushioned with cool gel pads to protect against harsh temperature changes and heavy impacts." + icon_state = "caustic_h" + item_state = "caustic_h" + armor_bullet = CLOTHING_ARMOR_VERYLOW + armor_laser = CLOTHING_ARMOR_VERYLOW + armor_bomb = CLOTHING_ARMOR_MEDIUM + armor_bio = CLOTHING_ARMOR_HIGH + armor_rad = CLOTHING_ARMOR_HIGH + armor_internaldamage = CLOTHING_ARMOR_MEDIUMHIGH + min_cold_protection_temperature = ICE_PLANET_MIN_COLD_PROT + max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROT + flags_cold_protection = BODY_FLAG_HEAD + siemens_coefficient = 1 + flags_inventory = BLOCKSHARPOBJ|COVERMOUTH|COVEREYES|ALLOWINTERNALS|BLOCKGASEFFECT|ALLOWREBREATH|ALLOWCPR + flags_inv_hide = HIDEEYES|HIDELOWHAIR|HIDEFACE + //=============================//PMCS\\==================================\\ //=======================================================================\\ diff --git a/code/modules/clothing/shoes/marine_shoes.dm b/code/modules/clothing/shoes/marine_shoes.dm index 7855075c2fb4..17ddd5abbc92 100644 --- a/code/modules/clothing/shoes/marine_shoes.dm +++ b/code/modules/clothing/shoes/marine_shoes.dm @@ -80,6 +80,21 @@ armor_internaldamage = CLOTHING_ARMOR_MEDIUMLOW spawn_item_type = /obj/item/attachable/bayonet +/obj/item/clothing/shoes/marine/caustic + name = "\improper XM-CL combat boots" + desc = "A pair of ANCW Boots. Their insides are cushioned with soft gel pads to give you an optimal footbed. You wish you had a pair like this at home." + icon_state = "caustic_h" + item_state = "caustic_h" + armor_bullet = CLOTHING_ARMOR_VERYLOW + armor_laser = CLOTHING_ARMOR_VERYLOW + armor_bomb = CLOTHING_ARMOR_MEDIUMHIGH + armor_bio = CLOTHING_ARMOR_HIGH + armor_rad = CLOTHING_ARMOR_HIGH + armor_internaldamage = CLOTHING_ARMOR_MEDIUMHIGH + min_cold_protection_temperature = SHOE_MIN_COLD_PROT + max_heat_protection_temperature = SHOE_MAX_HEAT_PROT + siemens_coefficient = 1 + /obj/item/clothing/shoes/dress name = "dress shoes" desc = "Pre-polished fancy dress shoes. You can see your reflection in them." diff --git a/code/modules/clothing/suits/marine_armor/_marine_armor.dm b/code/modules/clothing/suits/marine_armor/_marine_armor.dm index 3d89ecb7cabb..07fe2bd732df 100644 --- a/code/modules/clothing/suits/marine_armor/_marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor/_marine_armor.dm @@ -682,3 +682,46 @@ icon_state = "cc_armor" flags_atom = NO_SNOW_TYPE|NO_NAME_OVERRIDE +//==================Research Armor==================\\ + +/obj/item/clothing/suit/storage/marine/caustic + name = "\improper XM3-CL Armor" + desc = "A lightweight piece of XM3-CL ANCW armor. It has incredibly soft cushioning on the inside, thanks to the gel pads. A truck could hit you and you will be fine in this." + desc_lore = "An experimental model of Anti-Caustic Light armormend, or XM3-CL, developed against the xenomorph threat by the USMC and WY. Based on the Model 3 Light Armor, this armor system has been modified to allow soldiers to perform unrestricted in battle. It uses CN-Gel to neutralize even the heaviest of xenomorph acids, turning their PH level to 7, which then glides right off the ultrahydrophobic surface on the armor plates. Its insides are lined with a combination of fiber and gel cushioning, serving as a storage for the CN-Gel, and protecting the user from heavy impacts. CN-Gel also serves as a great insulator, protecting the user from from the harshest of colds, to the blazing sun. Allowing the user to perform in any environment. The weight of the internal systems required the XM3-CL armor to be striped down tremendously, barely leaving room for any form of protection against projectiles. Making it unsuitable for combat against human combatants. The biological functions of XX-121 revealed to WY and USMC scientists the anti caustic properties in their bodily fluids and allowed them to create a version of the gel using XX-121 bio-matter, primarily their saliva, as a base for a Compound Neutralizing Gel, or CN-Gel. Resulting in a clear, thermoinsulating, thick, and overall economic gel. The Gel itself expands greatly when oxidized though the internal nozzles, allowing XM3-CL Armor system to be fully operational for weeks before needing to be refilled." + icon = 'icons/obj/items/clothing/cm_suits.dmi' + icon_state = "caustic_h" + item_state = "caustic_h" + flags_atom = parent_type::flags_atom | NO_NAME_OVERRIDE|NO_SNOW_TYPE //Code i dont remember writing, and only learned about afterwards. Applys the parents flags to the atom. The more you know. Dont remove the ghost code, it migth haunt you. + armor_melee = CLOTHING_ARMOR_MEDIUMLOW + armor_bullet = CLOTHING_ARMOR_VERYLOW + armor_energy = CLOTHING_ARMOR_VERYLOW + armor_bomb = CLOTHING_ARMOR_MEDIUMHIGH + armor_bio = CLOTHING_ARMOR_HIGH + armor_rad = CLOTHING_ARMOR_HIGH + armor_internaldamage = CLOTHING_ARMOR_MEDIUMHIGH + max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROT + storage_slots = 2 + siemens_coefficient = 1 + slowdown = SLOWDOWN_ARMOR_LIGHT + +/obj/item/clothing/suit/storage/marine/caustic/equipped(mob/user, slot) + if(slot == WEAR_JACKET) + RegisterSignal(user, COMSIG_LIVING_FLAMER_CROSSED, PROC_REF(flamer_fire_callback)) + ..() + + +/obj/item/clothing/suit/storage/marine/caustic/proc/flamer_fire_callback(mob/living/L, datum/reagent/R) + SIGNAL_HANDLER + + if(R.fire_penetrating) + return + + . = COMPONENT_NO_IGNITE + +/obj/item/clothing/suit/storage/marine/caustic/dropped(mob/user) + if (!istype(user)) + return + UnregisterSignal(user, + COMSIG_LIVING_FLAMER_CROSSED + ) + ..() diff --git a/code/modules/clothing/under/marine_uniform.dm b/code/modules/clothing/under/marine_uniform.dm index 74cb5ea552ee..ae9b2927147a 100644 --- a/code/modules/clothing/under/marine_uniform.dm +++ b/code/modules/clothing/under/marine_uniform.dm @@ -649,6 +649,20 @@ icon_state = "mercenary_engineer_uniform" worn_state = "mercenary_engineer_uniform" +// Research Armnor \\ + +/obj/item/clothing/under/marine/caustic + name = "\improper ANCW Unifrom" + desc = "A modified version of standart issue USMC uniform. Lacking Kevlar, it possses soft gel pads instead. It almost feels like wearing a pyjama." + siemens_coefficient = 1 + icon_state = "caustic_h" + worn_state = "caustic_h" + armor_bullet = CLOTHING_ARMOR_NONE + armor_bomb = CLOTHING_ARMOR_NONE + armor_bio = CLOTHING_ARMOR_LOW + armor_rad = CLOTHING_ARMOR_LOW + armor_internaldamage = CLOTHING_ARMOR_MEDIUMLOW + drop_sound = "armorequip" ////// Civilians ///////// diff --git a/code/modules/cm_marines/equipment/kit_boxes.dm b/code/modules/cm_marines/equipment/kit_boxes.dm index c1621baa9b5d..a0ea565e918f 100644 --- a/code/modules/cm_marines/equipment/kit_boxes.dm +++ b/code/modules/cm_marines/equipment/kit_boxes.dm @@ -582,3 +582,14 @@ new /obj/item/storage/pouch/construction/low_grade_full(src) new /obj/item/storage/pouch/electronics/full(src) new /obj/item/clothing/glasses/welding(src) + +/obj/item/storage/box/kit/caustic + name = "\improper XM-CL Armor Kit" + pro_case_overlay = "haz" + +/obj/item/storage/box/kit/caustic/fill_preset_inventory() + new /obj/item/clothing/suit/storage/marine/caustic(src) + new /obj/item/clothing/head/helmet/marine/caustic(src) + new /obj/item/clothing/gloves/marine/caustic(src) + new /obj/item/clothing/shoes/marine/caustic(src) + new /obj/item/clothing/under/marine/caustic(src) diff --git a/icons/mob/humans/onmob/feet.dmi b/icons/mob/humans/onmob/feet.dmi index fdf6a4a40e80..766655669ecd 100644 Binary files a/icons/mob/humans/onmob/feet.dmi and b/icons/mob/humans/onmob/feet.dmi differ diff --git a/icons/mob/humans/onmob/hands.dmi b/icons/mob/humans/onmob/hands.dmi index 923a417f4f89..e6a8de8f2d63 100644 Binary files a/icons/mob/humans/onmob/hands.dmi and b/icons/mob/humans/onmob/hands.dmi differ diff --git a/icons/mob/humans/onmob/head_1.dmi b/icons/mob/humans/onmob/head_1.dmi index 696ab464252d..27876dd2f064 100644 Binary files a/icons/mob/humans/onmob/head_1.dmi and b/icons/mob/humans/onmob/head_1.dmi differ diff --git a/icons/mob/humans/onmob/suit_1.dmi b/icons/mob/humans/onmob/suit_1.dmi index 85266a2077ac..7bca73cb8135 100644 Binary files a/icons/mob/humans/onmob/suit_1.dmi and b/icons/mob/humans/onmob/suit_1.dmi differ diff --git a/icons/mob/humans/onmob/uniform_0.dmi b/icons/mob/humans/onmob/uniform_0.dmi index 2dd645697684..1c4443fe02f7 100644 Binary files a/icons/mob/humans/onmob/uniform_0.dmi and b/icons/mob/humans/onmob/uniform_0.dmi differ diff --git a/icons/obj/items/clothing/cm_hats.dmi b/icons/obj/items/clothing/cm_hats.dmi index 923a26b55c20..02b21fd89538 100644 Binary files a/icons/obj/items/clothing/cm_hats.dmi and b/icons/obj/items/clothing/cm_hats.dmi differ diff --git a/icons/obj/items/clothing/cm_suits.dmi b/icons/obj/items/clothing/cm_suits.dmi index 8c39aa77c7d1..3c3658977fc6 100644 Binary files a/icons/obj/items/clothing/cm_suits.dmi and b/icons/obj/items/clothing/cm_suits.dmi differ diff --git a/icons/obj/items/clothing/gloves.dmi b/icons/obj/items/clothing/gloves.dmi index b290778d2d28..107bc277dc71 100644 Binary files a/icons/obj/items/clothing/gloves.dmi and b/icons/obj/items/clothing/gloves.dmi differ diff --git a/icons/obj/items/clothing/hats.dmi b/icons/obj/items/clothing/hats.dmi index 3e2a1dcfc243..bcc8ac563ef7 100644 Binary files a/icons/obj/items/clothing/hats.dmi and b/icons/obj/items/clothing/hats.dmi differ diff --git a/icons/obj/items/clothing/shoes.dmi b/icons/obj/items/clothing/shoes.dmi index 90e626503963..733761225faf 100644 Binary files a/icons/obj/items/clothing/shoes.dmi and b/icons/obj/items/clothing/shoes.dmi differ diff --git a/icons/obj/items/clothing/uniforms.dmi b/icons/obj/items/clothing/uniforms.dmi index e444d7a5a40a..97a5ff98d113 100644 Binary files a/icons/obj/items/clothing/uniforms.dmi and b/icons/obj/items/clothing/uniforms.dmi differ diff --git a/icons/obj/items/storage.dmi b/icons/obj/items/storage.dmi index ff702586e16b..29fe735d3b10 100644 Binary files a/icons/obj/items/storage.dmi and b/icons/obj/items/storage.dmi differ