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

362 lines
16 KiB
Plaintext

//miscellaneous spacesuits
/*
Contains:
- Captain's spacesuit
- Death squad's hardsuit
- SWAT suit
- Officer's beret/spacesuit
- NASA Voidsuit
- Father Christmas' magical clothes
- Pirate's spacesuit
- ERT hardsuit: command, sec, engi, med
- EVA spacesuit
- Freedom's spacesuit (freedom from vacuum's oppression)
- Carp hardsuit
*/
//Death squad armored space suits, not hardsuits!
/obj/item/clothing/head/helmet/space/hardsuit/deathsquad
name = "MK.III SWAT Helmet"
desc = "An advanced tactical space helmet."
icon_state = "deathsquad"
item_state = "deathsquad"
armor = list("melee" = 80, "bullet" = 80, "laser" = 50, "energy" = 50, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100)
strip_delay = 130
max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT
resistance_flags = FIRE_PROOF | ACID_PROOF
actions_types = list()
/obj/item/clothing/head/helmet/space/hardsuit/deathsquad/attack_self(mob/user)
return
/obj/item/clothing/suit/space/hardsuit/deathsquad
name = "MK.III SWAT Suit"
desc = "A prototype designed to replace the ageing MK.II SWAT suit. Based on the streamlined MK.II model, the traditional ceramic and graphene plate construction was replaced with plasteel, allowing superior armor against most threats. There's room for some kind of energy projection device on the back."
icon_state = "deathsquad"
item_state = "swat_suit"
allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/kitchen/knife/combat)
armor = list("melee" = 80, "bullet" = 80, "laser" = 50, "energy" = 50, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100)
strip_delay = 130
max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT
resistance_flags = FIRE_PROOF | ACID_PROOF
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/deathsquad
dog_fashion = /datum/dog_fashion/back/deathsquad
//NEW SWAT suit
/obj/item/clothing/suit/space/swat
name = "MK.I SWAT Suit"
desc = "A tactical space suit first developed in a joint effort by the defunct IS-ERI and Nanotrasen in 20XX for military space operations. A tried and true workhorse, it is very difficult to move in but offers robust protection against all threats!"
icon_state = "heavy"
item_state = "swat_suit"
allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/kitchen/knife/combat)
armor = list("melee" = 40, "bullet" = 30, "laser" = 30,"energy" = 30, "bomb" = 50, "bio" = 90, "rad" = 20, "fire" = 100, "acid" = 100)
strip_delay = 120
resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/clothing/head/helmet/space/beret
name = "officer's beret"
desc = "An armored beret commonly used by special operations officers. Uses advanced force field technology to protect the head from space."
icon_state = "beret_badge"
dynamic_hair_suffix = "+generic"
dynamic_fhair_suffix = "+generic"
flags_1 = STOPSPRESSUREDMAGE_1
flags_inv = 0
armor = list("melee" = 80, "bullet" = 80, "laser" = 50, "energy" = 50, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100)
strip_delay = 130
max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT
resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/clothing/suit/space/officer
name = "officer's jacket"
desc = "An armored, space-proof jacket used in special operations."
icon_state = "detective"
item_state = "det_suit"
blood_overlay_type = "coat"
slowdown = 0
flags_inv = 0
w_class = WEIGHT_CLASS_NORMAL
allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals)
armor = list("melee" = 80, "bullet" = 80, "laser" = 50, "energy" = 50, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100)
strip_delay = 130
max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT
resistance_flags = FIRE_PROOF | ACID_PROOF
//NASA Voidsuit
/obj/item/clothing/head/helmet/space/nasavoid
name = "NASA Void Helmet"
desc = "An old, NASA CentCom branch designed, dark red space suit helmet."
icon_state = "void"
item_state = "void"
/obj/item/clothing/suit/space/nasavoid
name = "NASA Voidsuit"
icon_state = "void"
item_state = "void"
desc = "An old, NASA CentCom branch designed, dark red space suit."
allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/multitool)
/obj/item/clothing/head/helmet/space/nasavoid/old
name = "Engineering Void Helmet"
desc = "A CentCom engineering dark red space suit helmet. While old and dusty, it still gets the job done."
icon_state = "void"
item_state = "void"
/obj/item/clothing/suit/space/nasavoid/old
name = "Engineering Voidsuit"
icon_state = "void"
item_state = "void"
desc = "A CentCom engineering dark red space suit. Age has degraded the suit making is difficult to move around in."
slowdown = 4
allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/multitool)
//Space santa outfit suit
/obj/item/clothing/head/helmet/space/santahat
name = "Santa's hat"
desc = "Ho ho ho. Merrry X-mas!"
icon_state = "santahat"
flags_1 = STOPSPRESSUREDMAGE_1
flags_cover = HEADCOVERSEYES
dog_fashion = /datum/dog_fashion/head/santa
/obj/item/clothing/suit/space/santa
name = "Santa's suit"
desc = "Festive!"
icon_state = "santa"
item_state = "santa"
slowdown = 0
flags_1 = STOPSPRESSUREDMAGE_1
allowed = list(/obj/item) //for stuffing exta special presents
//Space pirate outfit
/obj/item/clothing/head/helmet/space/pirate
name = "pirate hat"
desc = "Yarr."
icon_state = "pirate"
item_state = "pirate"
armor = list("melee" = 30, "bullet" = 50, "laser" = 30,"energy" = 15, "bomb" = 30, "bio" = 30, "rad" = 30, "fire" = 60, "acid" = 75)
flags_1 = STOPSPRESSUREDMAGE_1
flags_inv = HIDEHAIR
strip_delay = 40
equip_delay_other = 20
flags_cover = HEADCOVERSEYES
/obj/item/clothing/head/helmet/space/pirate/bandana
name = "pirate bandana"
icon_state = "bandana"
item_state = "bandana"
/obj/item/clothing/suit/space/pirate
name = "pirate coat"
desc = "Yarr."
icon_state = "pirate"
item_state = "pirate"
w_class = WEIGHT_CLASS_NORMAL
flags_inv = 0
allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/melee/transforming/energy/sword/pirate, /obj/item/clothing/glasses/eyepatch, /obj/item/reagent_containers/food/drinks/bottle/rum)
slowdown = 0
armor = list("melee" = 30, "bullet" = 50, "laser" = 30,"energy" = 15, "bomb" = 30, "bio" = 30, "rad" = 30, "fire" = 60, "acid" = 75)
strip_delay = 40
equip_delay_other = 20
//Emergency Response Team suits
/obj/item/clothing/head/helmet/space/hardsuit/ert
name = "emergency response unit helmet"
desc = "Standard issue command helmet for the ERT."
icon_state = "hardsuit0-ert_commander"
item_state = "hardsuit0-ert_commander"
item_color = "ert_commander"
armor = list("melee" = 65, "bullet" = 50, "laser" = 50, "energy" = 50, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 80)
strip_delay = 130
flags_1 = STOPSPRESSUREDMAGE_1 | THICKMATERIAL_1 | NODROP_1
brightness_on = 7
/obj/item/clothing/suit/space/hardsuit/ert
name = "emergency response team suit"
desc = "Standard issue command suit for the ERT."
icon_state = "ert_command"
item_state = "ert_command"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert
allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals)
armor = list("melee" = 65, "bullet" = 50, "laser" = 50, "energy" = 50, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 80)
slowdown = 0
strip_delay = 130
//ERT Security
/obj/item/clothing/head/helmet/space/hardsuit/ert/sec
desc = "Standard issue security helmet for the ERT."
icon_state = "hardsuit0-ert_security"
item_state = "hardsuit0-ert_security"
item_color = "ert_security"
/obj/item/clothing/suit/space/hardsuit/ert/sec
desc = "Standard issue security suit for the ERT."
icon_state = "ert_security"
item_state = "ert_security"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/sec
//ERT Engineering
/obj/item/clothing/head/helmet/space/hardsuit/ert/engi
desc = "Standard issue engineer helmet for the ERT."
icon_state = "hardsuit0-ert_engineer"
item_state = "hardsuit0-ert_engineer"
item_color = "ert_engineer"
/obj/item/clothing/suit/space/hardsuit/ert/engi
desc = "Standard issue engineer suit for the ERT."
icon_state = "ert_engineer"
item_state = "ert_engineer"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/engi
//ERT Medical
/obj/item/clothing/head/helmet/space/hardsuit/ert/med
desc = "Standard issue medical helmet for the ERT."
icon_state = "hardsuit0-ert_medical"
item_state = "hardsuit0-ert_medical"
item_color = "ert_medical"
/obj/item/clothing/suit/space/hardsuit/ert/med
desc = "Standard issue medical suit for the ERT."
icon_state = "ert_medical"
item_state = "ert_medical"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/med
species_exception = list(/datum/species/angel)
/obj/item/clothing/suit/space/eva
name = "EVA suit"
icon_state = "space"
item_state = "s_suit"
desc = "A lightweight space suit with the basic ability to protect the wearer from the vacuum of space during emergencies."
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 20, "fire" = 50, "acid" = 65)
/obj/item/clothing/head/helmet/space/eva
name = "EVA helmet"
icon_state = "space"
item_state = "space"
desc = "A lightweight space helmet with the basic ability to protect the wearer from the vacuum of space during emergencies."
flash_protect = 0
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 20, "fire" = 50, "acid" = 65)
/obj/item/clothing/head/helmet/space/freedom
name = "eagle helmet"
desc = "An advanced, space-proof helmet. It appears to be modeled after an old-world eagle."
icon_state = "griffinhat"
item_state = "griffinhat"
armor = list("melee" = 20, "bullet" = 40, "laser" = 30, "energy" = 25, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 80)
strip_delay = 130
max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT
resistance_flags = ACID_PROOF | FIRE_PROOF
/obj/item/clothing/suit/space/freedom
name = "eagle suit"
desc = "An advanced, light suit, fabricated from a mixture of synthetic feathers and space-resistant material. A gun holster appears to be integrated into the suit and the wings appear to be stuck in 'freedom' mode."
icon_state = "freedom"
item_state = "freedom"
allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals)
armor = list("melee" = 20, "bullet" = 40, "laser" = 30,"energy" = 25, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 80)
strip_delay = 130
max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT
resistance_flags = ACID_PROOF | FIRE_PROOF
slowdown = 0
//Carpsuit, bestsuit, lovesuit
/obj/item/clothing/head/helmet/space/hardsuit/carp
name = "carp helmet"
desc = "Spaceworthy and it looks like a space carp's head, smells like one too."
icon_state = "carp_helm"
item_state = "syndicate"
armor = list("melee" = -20, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 75, "fire" = 60, "acid" = 75) //As whimpy as a space carp
brightness_on = 0 //luminosity when on
actions_types = list()
flags_1 = STOPSPRESSUREDMAGE_1 | THICKMATERIAL_1 | NODROP_1
/obj/item/clothing/suit/space/hardsuit/carp
name = "carp space suit"
desc = "A slimming piece of dubious space carp technology, you suspect it won't stand up to hand-to-hand blows."
icon_state = "carp_suit"
item_state = "space_suit_syndicate"
slowdown = 0 //Space carp magic, never stop believing
armor = list("melee" = -20, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 75, "fire" = 60, "acid" = 75) //As whimpy whimpy whoo
allowed = list(/obj/item/tank/internals, /obj/item/gun/ballistic/automatic/speargun) //I'm giving you a hint here
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/carp
/obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal
name = "paranormal response unit helmet"
desc = "A helmet worn by those who deal with paranormal threats for a living."
icon_state = "hardsuit0-prt"
item_state = "hardsuit0-prt"
item_color = "knight_grey"
max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT
actions_types = list()
resistance_flags = FIRE_PROOF
/obj/item/clothing/suit/space/hardsuit/ert/paranormal
name = "paranormal response team suit"
desc = "Powerful wards are built into this hardsuit, protecting the user from all manner of paranormal threats."
icon_state = "knight_grey"
item_state = "knight_grey"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal
max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT
resistance_flags = FIRE_PROOF
/obj/item/clothing/suit/space/hardsuit/ert/paranormal/Initialize()
. = ..()
AddComponent(/datum/component/anti_magic, TRUE, TRUE)
/obj/item/clothing/suit/space/hardsuit/ert/paranormal/inquisitor
name = "inquisitor's hardsuit"
icon_state = "hardsuit-inq"
item_state = "hardsuit-inq"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal/inquisitor
/obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal/inquisitor
name = "inquisitor's helmet"
icon_state = "hardsuit0-inq"
item_state = "hardsuit0-inq"
/obj/item/clothing/suit/space/hardsuit/ert/paranormal/beserker
name = "champion's hardsuit"
desc = "Voices echo from the hardsuit, driving the user insane."
icon_state = "hardsuit-beserker"
item_state = "hardsuit-beserker"
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal/beserker
/obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal/beserker
name = "champion's helmet"
desc = "Peering into the eyes of the helmet is enough to seal damnation."
icon_state = "hardsuit0-beserker"
item_state = "hardsuit0-beserker"
/obj/item/clothing/head/helmet/space/fragile
name = "emergency space helmet"
desc = "A bulky, air-tight helmet meant to protect the user during emergency situations. It doesn't look very durable."
icon_state = "syndicate-helm-orange"
item_state = "syndicate-helm-orange"
armor = list("melee" = 5, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 10, "fire" = 0, "acid" = 0)
strip_delay = 65
/obj/item/clothing/suit/space/fragile
name = "emergency space suit"
desc = "A bulky, air-tight suit meant to protect the user during emergency situations. It doesn't look very durable."
var/torn = FALSE
icon_state = "syndicate-orange"
item_state = "syndicate-orange"
slowdown = 2
armor = list("melee" = 5, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 10, "fire" = 0, "acid" = 0)
strip_delay = 65
/obj/item/clothing/suit/space/fragile/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK)
if(!torn && prob(50))
to_chat(owner, "<span class='warning'>[src] tears from the damage, breaking the air-tight seal!</span>")
src.flags_1 &= ~STOPSPRESSUREDMAGE_1
src.name = "torn [src]."
src.desc = "A bulky suit meant to protect the user during emergency situations, at least until someone tore a hole in the suit."
src.torn = TRUE
playsound(loc, 'sound/weapons/slashmiss.ogg', 50, 1)
playsound(loc, 'sound/effects/refill.ogg', 50, 1)