mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-15 12:43:13 +00:00
262 lines
9.8 KiB
Plaintext
262 lines
9.8 KiB
Plaintext
|
|
/obj/item/clothing/suit/armor
|
|
allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
|
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO
|
|
flags = FPRINT | TABLEPASS | THICKMATERIAL
|
|
|
|
cold_protection = UPPER_TORSO|LOWER_TORSO
|
|
min_cold_protection_temperature = ARMOR_MIN_COLD_PROTECTION_TEMPERATURE
|
|
heat_protection = UPPER_TORSO|LOWER_TORSO
|
|
max_heat_protection_temperature = ARMOR_MAX_HEAT_PROTECTION_TEMPERATURE
|
|
siemens_coefficient = 0.6
|
|
|
|
|
|
/obj/item/clothing/suit/armor/vest
|
|
name = "armor"
|
|
desc = "An armored vest that protects against some damage."
|
|
icon_state = "armor"
|
|
item_state = "armor"
|
|
blood_overlay_type = "armor"
|
|
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
|
|
armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0)
|
|
|
|
/obj/item/clothing/suit/armor/vest/security
|
|
name = "security armor"
|
|
desc = "An armored vest that protects against some damage. This one has NanoTrasen corporate badge."
|
|
icon_state = "armorsec"
|
|
item_state = "armor"
|
|
|
|
/obj/item/clothing/suit/armor/vest/warden
|
|
name = "Warden's jacket"
|
|
desc = "An armoured jacket with silver rank pips and livery."
|
|
icon_state = "warden_jacket"
|
|
item_state = "armor"
|
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
|
|
|
|
|
|
/obj/item/clothing/suit/armor/riot
|
|
name = "Riot Suit"
|
|
desc = "A suit of armor with heavy padding to protect against melee attacks. Looks like it might impair movement."
|
|
icon_state = "riot"
|
|
item_state = "swat_suit"
|
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
|
|
slowdown = 1
|
|
armor = list(melee = 80, bullet = 10, laser = 10, energy = 10, bomb = 0, bio = 0, rad = 0)
|
|
flags_inv = HIDEJUMPSUIT
|
|
siemens_coefficient = 0.5
|
|
|
|
|
|
/obj/item/clothing/suit/armor/bulletproof
|
|
name = "Bulletproof Vest"
|
|
desc = "A vest that excels in protecting the wearer against high-velocity solid projectiles."
|
|
icon_state = "bulletproof"
|
|
item_state = "armor"
|
|
blood_overlay_type = "armor"
|
|
armor = list(melee = 10, bullet = 80, laser = 10, energy = 10, bomb = 0, bio = 0, rad = 0)
|
|
siemens_coefficient = 0.7
|
|
|
|
/obj/item/clothing/suit/armor/laserproof
|
|
name = "Ablative Armor Vest"
|
|
desc = "A vest that excels in protecting the wearer against energy projectiles."
|
|
icon_state = "armor_reflec"
|
|
item_state = "armor_reflec"
|
|
blood_overlay_type = "armor"
|
|
armor = list(melee = 10, bullet = 10, laser = 80, energy = 50, bomb = 0, bio = 0, rad = 0)
|
|
siemens_coefficient = 0
|
|
|
|
/obj/item/clothing/suit/armor/swat
|
|
name = "swat suit"
|
|
desc = "A heavily armored suit that protects against moderate damage. Used in special operations."
|
|
icon_state = "deathsquad"
|
|
item_state = "swat_suit"
|
|
gas_transfer_coefficient = 0.01
|
|
permeability_coefficient = 0.01
|
|
flags = FPRINT | TABLEPASS
|
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS
|
|
allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
|
|
slowdown = 1
|
|
armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 0, rad = 0)
|
|
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
|
|
cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS
|
|
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
|
|
siemens_coefficient = 0.5
|
|
|
|
|
|
/obj/item/clothing/suit/armor/swat/officer
|
|
name = "officer jacket"
|
|
desc = "An armored jacket used in special operations."
|
|
icon_state = "detective"
|
|
item_state = "det_suit"
|
|
blood_overlay_type = "coat"
|
|
flags_inv = 0
|
|
body_parts_covered = UPPER_TORSO|ARMS
|
|
|
|
|
|
/obj/item/clothing/suit/armor/det_suit
|
|
name = "armor"
|
|
desc = "An armored vest with a detective's badge on it."
|
|
icon_state = "detective-armor"
|
|
item_state = "armor"
|
|
blood_overlay_type = "armor"
|
|
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
|
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO
|
|
armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0)
|
|
|
|
|
|
//Reactive armor
|
|
//When the wearer gets hit, this armor will teleport the user a short distance away (to safety or to more danger, no one knows. That's the fun of it!)
|
|
/obj/item/clothing/suit/armor/reactive
|
|
name = "Reactive Teleport Armor"
|
|
desc = "Someone seperated our Research Director from his own head!"
|
|
var/active = 0.0
|
|
icon_state = "reactiveoff"
|
|
item_state = "reactiveoff"
|
|
blood_overlay_type = "armor"
|
|
slowdown = 1
|
|
flags = FPRINT | TABLEPASS
|
|
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0)
|
|
|
|
/obj/item/clothing/suit/armor/reactive/IsShield()
|
|
if(active)
|
|
return 1
|
|
return 0
|
|
|
|
/obj/item/clothing/suit/armor/reactive/attack_self(mob/user as mob)
|
|
src.active = !( src.active )
|
|
if (src.active)
|
|
user << "\blue The reactive armor is now active."
|
|
src.icon_state = "reactive"
|
|
src.item_state = "reactive"
|
|
else
|
|
user << "\blue The reactive armor is now inactive."
|
|
src.icon_state = "reactiveoff"
|
|
src.item_state = "reactiveoff"
|
|
src.add_fingerprint(user)
|
|
return
|
|
|
|
/obj/item/clothing/suit/armor/reactive/emp_act(severity)
|
|
active = 0
|
|
src.icon_state = "reactiveoff"
|
|
src.item_state = "reactiveoff"
|
|
..()
|
|
|
|
|
|
//All of the armor below is mostly unused
|
|
|
|
|
|
/obj/item/clothing/suit/armor/centcomm
|
|
name = "Cent. Com. armor"
|
|
desc = "A suit that protects against some damage."
|
|
icon_state = "centcom"
|
|
item_state = "centcom"
|
|
w_class = 4//bulky item
|
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
|
|
allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
|
|
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
|
|
cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS
|
|
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
|
|
siemens_coefficient = 0
|
|
|
|
/obj/item/clothing/suit/armor/heavy
|
|
name = "heavy armor"
|
|
desc = "A heavily armored suit that protects against moderate damage."
|
|
icon_state = "heavy"
|
|
item_state = "swat_suit"
|
|
w_class = 4//bulky item
|
|
gas_transfer_coefficient = 0.90
|
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
|
|
slowdown = 3
|
|
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
|
|
siemens_coefficient = 0
|
|
|
|
/obj/item/clothing/suit/armor/tdome
|
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
|
|
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
|
|
|
|
/obj/item/clothing/suit/armor/tdome/red
|
|
name = "Thunderdome suit (red)"
|
|
desc = "Reddish armor."
|
|
icon_state = "tdred"
|
|
item_state = "tdred"
|
|
siemens_coefficient = 1
|
|
|
|
/obj/item/clothing/suit/armor/tdome/green
|
|
name = "Thunderdome suit (green)"
|
|
desc = "Pukish armor."
|
|
icon_state = "tdgreen"
|
|
item_state = "tdgreen"
|
|
siemens_coefficient = 1
|
|
|
|
/obj/item/clothing/suit/armor/tactical
|
|
name = "tactical armor"
|
|
desc = "A suit of armor most often used by Special Weapons and Tactics squads. Includes padded vest with pockets along with shoulder and kneeguards."
|
|
icon_state = "swatarmor"
|
|
item_state = "armor"
|
|
var/obj/item/weapon/gun/holstered = null
|
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
|
|
slowdown = 1
|
|
armor = list(melee = 60, bullet = 60, laser = 60, energy = 40, bomb = 20, bio = 0, rad = 0)
|
|
siemens_coefficient = 0.7
|
|
|
|
/obj/item/clothing/suit/armor/tactical/verb/holster()
|
|
set name = "Holster"
|
|
set category = "Object"
|
|
set src in usr
|
|
if(!istype(usr, /mob/living)) return
|
|
if(usr.stat) return
|
|
|
|
if(!holstered)
|
|
if(!istype(usr.get_active_hand(), /obj/item/weapon/gun))
|
|
usr << "\blue You need your gun equiped to holster it."
|
|
return
|
|
var/obj/item/weapon/gun/W = usr.get_active_hand()
|
|
if (!W.isHandgun())
|
|
usr << "\red This gun won't fit in \the belt!"
|
|
return
|
|
holstered = usr.get_active_hand()
|
|
usr.drop_item()
|
|
holstered.loc = src
|
|
usr.visible_message("\blue \The [usr] holsters \the [holstered].", "You holster \the [holstered].")
|
|
else
|
|
if(istype(usr.get_active_hand(),/obj) && istype(usr.get_inactive_hand(),/obj))
|
|
usr << "\red You need an empty hand to draw the gun!"
|
|
else
|
|
if(usr.a_intent == "hurt")
|
|
usr.visible_message("\red \The [usr] draws \the [holstered], ready to shoot!", \
|
|
"\red You draw \the [holstered], ready to shoot!")
|
|
else
|
|
usr.visible_message("\blue \The [usr] draws \the [holstered], pointing it at the ground.", \
|
|
"\blue You draw \the [holstered], pointing it at the ground.")
|
|
usr.put_in_hands(holstered)
|
|
holstered = null
|
|
|
|
//Non-hardsuit ERT armor.
|
|
/obj/item/clothing/suit/armor/vest/ert
|
|
name = "emergency response team armor"
|
|
desc = "A set of armor worn by members of the NanoTrasen Emergency Response Team."
|
|
icon_state = "ertarmor_cmd"
|
|
item_state = "armor"
|
|
armor = list(melee = 60, bullet = 60, laser = 60, energy = 40, bomb = 20, bio = 0, rad = 0)
|
|
|
|
//Commander
|
|
/obj/item/clothing/suit/armor/vest/ert/command
|
|
name = "emergency response team commander armor"
|
|
desc = "A set of armor worn by the commander of a NanoTrasen Emergency Response Team. Has blue highlights."
|
|
|
|
//Security
|
|
/obj/item/clothing/suit/armor/vest/ert/security
|
|
name = "emergency response team security armor"
|
|
desc = "A set of armor worn by security members of the NanoTrasen Emergency Response Team. Has red highlights."
|
|
icon_state = "ertarmor_sec"
|
|
|
|
//Engineer
|
|
/obj/item/clothing/suit/armor/vest/ert/engineer
|
|
name = "emergency response team engineer armor"
|
|
desc = "A set of armor worn by engineering members of the NanoTrasen Emergency Response Team. Has orange highlights."
|
|
icon_state = "ertarmor_eng"
|
|
|
|
//Medical
|
|
/obj/item/clothing/suit/armor/vest/ert/medical
|
|
name = "emergency response team medical armor"
|
|
desc = "A set of armor worn by medical members of the NanoTrasen Emergency Response Team. Has red and white highlights."
|
|
icon_state = "ertarmor_med" |