Files
GS13NG/code/modules/clothing/suits/utility.dm
2018-04-30 00:06:58 -05:00

156 lines
5.4 KiB
Plaintext

/*
* Contains:
* Fire protection
* Bomb protection
* Radiation protection
*/
/*
* Fire protection
*/
/obj/item/clothing/suit/fire
name = "emergency firesuit"
desc = "A suit that helps protect against fire and heat."
icon_state = "fire"
item_state = "ro_suit"
w_class = WEIGHT_CLASS_BULKY
gas_transfer_coefficient = 0.9
permeability_coefficient = 0.5
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
allowed = list(/obj/item/flashlight, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman, /obj/item/extinguisher, /obj/item/crowbar)
slowdown = 1
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
flags_1 = STOPSPRESSUREDMAGE_1 | THICKMATERIAL_1
heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT
cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
strip_delay = 60
equip_delay_other = 60
resistance_flags = FIRE_PROOF
/obj/item/clothing/suit/fire/firefighter
icon_state = "firesuit"
item_state = "firefighter"
/obj/item/clothing/suit/fire/heavy
name = "heavy firesuit"
desc = "An old, bulky thermal protection suit."
icon_state = "thermal"
item_state = "ro_suit"
slowdown = 1.5
/obj/item/clothing/suit/fire/atmos
name = "firesuit"
desc = "An expensive firesuit that protects against even the most deadly of station fires. Designed to protect even if the wearer is set aflame."
icon_state = "atmos_firesuit"
item_state = "firesuit_atmos"
max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT
/*
* Bomb protection
*/
/obj/item/clothing/head/bomb_hood
name = "bomb hood"
desc = "Use in case of bomb."
icon_state = "bombsuit"
flags_1 = THICKMATERIAL_1
armor = list("melee" = 20, "bullet" = 0, "laser" = 20,"energy" = 10, "bomb" = 100, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 50)
flags_inv = HIDEFACE|HIDEMASK|HIDEEARS|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR
dynamic_hair_suffix = ""
dynamic_fhair_suffix = ""
cold_protection = HEAD
min_cold_protection_temperature = HELMET_MIN_TEMP_PROTECT
heat_protection = HEAD
max_heat_protection_temperature = HELMET_MAX_TEMP_PROTECT
strip_delay = 70
equip_delay_other = 70
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
resistance_flags = NONE
/obj/item/clothing/suit/bomb_suit
name = "bomb suit"
desc = "A suit designed for safety when handling explosives."
icon_state = "bombsuit"
item_state = "bombsuit"
w_class = WEIGHT_CLASS_BULKY
gas_transfer_coefficient = 0.01
permeability_coefficient = 0.01
flags_1 = THICKMATERIAL_1
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
slowdown = 2
armor = list("melee" = 20, "bullet" = 0, "laser" = 20,"energy" = 10, "bomb" = 100, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 50)
flags_inv = HIDEJUMPSUIT
heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT
cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
min_cold_protection_temperature = ARMOR_MIN_TEMP_PROTECT
strip_delay = 70
equip_delay_other = 70
resistance_flags = NONE
/obj/item/clothing/head/bomb_hood/security
icon_state = "bombsuit_sec"
item_state = "bombsuit_sec"
/obj/item/clothing/suit/bomb_suit/security
icon_state = "bombsuit_sec"
item_state = "bombsuit_sec"
allowed = list(/obj/item/gun/energy, /obj/item/melee/baton, /obj/item/restraints/handcuffs)
/obj/item/clothing/head/bomb_hood/white
icon_state = "bombsuit_white"
item_state = "bombsuit_white"
/obj/item/clothing/suit/bomb_suit/white
icon_state = "bombsuit_white"
item_state = "bombsuit_white"
/*
* Radiation protection
*/
/obj/item/clothing/head/radiation
name = "radiation hood"
icon_state = "rad"
desc = "A hood with radiation protective properties. The label reads, 'Made with lead. Please do not consume insulation.'"
flags_1 = THICKMATERIAL_1
flags_inv = HIDEMASK|HIDEEARS|HIDEFACE|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 60, "rad" = 100, "fire" = 30, "acid" = 30)
strip_delay = 60
equip_delay_other = 60
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
resistance_flags = NONE
/obj/item/clothing/head/radiation/ComponentInitialize()
. = ..()
AddComponent(/datum/component/rad_insulation, RAD_NO_INSULATION, TRUE, FALSE)
/obj/item/clothing/suit/radiation
name = "radiation suit"
desc = "A suit that protects against radiation. The label reads, 'Made with lead. Please do not consume insulation.'"
icon_state = "rad"
item_state = "rad_suit"
w_class = WEIGHT_CLASS_BULKY
gas_transfer_coefficient = 0.9
permeability_coefficient = 0.5
flags_1 = THICKMATERIAL_1
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
allowed = list(/obj/item/flashlight, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman, /obj/item/geiger_counter)
slowdown = 1.5
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 60, "rad" = 100, "fire" = 30, "acid" = 30)
strip_delay = 60
equip_delay_other = 60
flags_inv = HIDEJUMPSUIT
resistance_flags = NONE
/obj/item/clothing/suit/radiation/ComponentInitialize()
. = ..()
AddComponent(/datum/component/rad_insulation, RAD_NO_INSULATION, TRUE, FALSE)
// Just don't want things to be irradiated inside this
// Except things on the mob aren't even inside the suit so ehhhhhh