Also reworks internals code a little to be much more friendly. Any head or mask item with the flag should now function as an internals mask if it has the ALLOWSINTERNALS flag.
204 lines
6.8 KiB
Plaintext
204 lines
6.8 KiB
Plaintext
/obj/item/clothing/mask/gas
|
|
name = "gas mask"
|
|
desc = "A face-covering mask that can be connected to an air supply. While good for concealing your identity, it isn't good for blocking gas flow." //More accurate
|
|
icon_state = "gas_alt"
|
|
clothing_flags = BLOCK_GAS_SMOKE_EFFECT | ALLOWINTERNALS
|
|
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEFACIALHAIR|HIDESNOUT
|
|
w_class = WEIGHT_CLASS_NORMAL
|
|
item_state = "gas_alt"
|
|
gas_transfer_coefficient = 0.01
|
|
permeability_coefficient = 0.01
|
|
flags_cover = MASKCOVERSEYES | MASKCOVERSMOUTH
|
|
resistance_flags = NONE
|
|
mutantrace_variation = MUTANTRACE_VARIATION
|
|
|
|
/obj/item/clothing/mask/gas/glass
|
|
name = "glass gas mask"
|
|
desc = "A face-covering mask that can be connected to an air supply. This one doesn't obscure your face however." //More accurate
|
|
icon_state = "gas_clear"
|
|
flags_inv = HIDEEYES
|
|
|
|
|
|
// **** Welding gas mask ****
|
|
|
|
/obj/item/clothing/mask/gas/welding
|
|
name = "welding mask"
|
|
desc = "A gas mask with built-in welding goggles and a face shield. Looks like a skull - clearly designed by a nerd."
|
|
icon_state = "weldingmask"
|
|
materials = list(MAT_METAL=4000, MAT_GLASS=2000)
|
|
flash_protect = 2
|
|
tint = 2
|
|
armor = list("melee" = 10, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 55)
|
|
actions_types = list(/datum/action/item_action/toggle)
|
|
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE
|
|
flags_cover = MASKCOVERSEYES
|
|
visor_flags_inv = HIDEEYES
|
|
visor_flags_cover = MASKCOVERSEYES
|
|
resistance_flags = FIRE_PROOF
|
|
|
|
/obj/item/clothing/mask/gas/welding/attack_self(mob/user)
|
|
weldingvisortoggle(user)
|
|
|
|
|
|
// ********************************************************************
|
|
|
|
//Plague Dr suit can be found in clothing/suits/bio.dm
|
|
/obj/item/clothing/mask/gas/plaguedoctor
|
|
name = "plague doctor mask"
|
|
desc = "A modernised version of the classic design, this mask will not only filter out toxins but it can also be connected to an air supply."
|
|
icon_state = "plaguedoctor"
|
|
item_state = "gas_mask"
|
|
armor = list("melee" = 0, "bullet" = 0, "laser" = 2,"energy" = 2, "bomb" = 0, "bio" = 75, "rad" = 0, "fire" = 0, "acid" = 0)
|
|
|
|
/obj/item/clothing/mask/gas/syndicate
|
|
name = "syndicate mask"
|
|
desc = "A close-fitting tactical mask that can be connected to an air supply."
|
|
icon_state = "syndicate"
|
|
strip_delay = 60
|
|
|
|
/obj/item/clothing/mask/gas/clown_hat
|
|
name = "clown wig and mask"
|
|
desc = "A true prankster's facial attire. A clown is incomplete without his wig and mask."
|
|
clothing_flags = ALLOWINTERNALS
|
|
icon_state = "clown"
|
|
item_state = "clown_hat"
|
|
flags_cover = MASKCOVERSEYES
|
|
resistance_flags = FLAMMABLE
|
|
actions_types = list(/datum/action/item_action/adjust)
|
|
dog_fashion = /datum/dog_fashion/head/clown
|
|
|
|
/obj/item/clothing/mask/gas/clown_hat/ui_action_click(mob/user)
|
|
if(!istype(user) || user.incapacitated())
|
|
return
|
|
|
|
var/list/options = list()
|
|
options["True Form"] = "clown"
|
|
options["The Feminist"] = "sexyclown"
|
|
options["The Madman"] = "joker"
|
|
options["The Rainbow Color"] ="rainbow"
|
|
|
|
var/choice = input(user,"To what form do you wish to Morph this mask?","Morph Mask") in options
|
|
|
|
if(src && choice && !user.incapacitated() && in_range(user,src))
|
|
icon_state = options[choice]
|
|
user.update_inv_wear_mask()
|
|
for(var/X in actions)
|
|
var/datum/action/A = X
|
|
A.UpdateButtonIcon()
|
|
to_chat(user, "<span class='notice'>Your Clown Mask has now morphed into [choice], all praise the Honkmother!</span>")
|
|
return 1
|
|
|
|
/obj/item/clothing/mask/gas/sexyclown
|
|
name = "sexy-clown wig and mask"
|
|
desc = "A feminine clown mask for the dabbling crossdressers or female entertainers."
|
|
clothing_flags = ALLOWINTERNALS
|
|
icon_state = "sexyclown"
|
|
item_state = "sexyclown"
|
|
flags_cover = MASKCOVERSEYES
|
|
resistance_flags = FLAMMABLE
|
|
|
|
/obj/item/clothing/mask/gas/mime
|
|
name = "mime mask"
|
|
desc = "The traditional mime's mask. It has an eerie facial posture."
|
|
clothing_flags = ALLOWINTERNALS
|
|
icon_state = "mime"
|
|
item_state = "mime"
|
|
flags_cover = MASKCOVERSEYES
|
|
resistance_flags = FLAMMABLE
|
|
actions_types = list(/datum/action/item_action/adjust)
|
|
|
|
|
|
/obj/item/clothing/mask/gas/mime/ui_action_click(mob/user)
|
|
if(!istype(user) || user.incapacitated())
|
|
return
|
|
|
|
var/list/options = list()
|
|
options["Blanc"] = "mime"
|
|
options["Triste"] = "sadmime"
|
|
options["Effrayé"] = "scaredmime"
|
|
options["Excité"] ="sexymime"
|
|
|
|
var/choice = input(user,"To what form do you wish to Morph this mask?","Morph Mask") in options
|
|
|
|
if(src && choice && !user.incapacitated() && in_range(user,src))
|
|
icon_state = options[choice]
|
|
user.update_inv_wear_mask()
|
|
for(var/X in actions)
|
|
var/datum/action/A = X
|
|
A.UpdateButtonIcon()
|
|
to_chat(user, "<span class='notice'>Your Mime Mask has now morphed into [choice]!</span>")
|
|
return 1
|
|
|
|
/obj/item/clothing/mask/gas/monkeymask
|
|
name = "monkey mask"
|
|
desc = "A mask used when acting as a monkey."
|
|
clothing_flags = ALLOWINTERNALS
|
|
icon_state = "monkeymask"
|
|
item_state = "monkeymask"
|
|
flags_cover = MASKCOVERSEYES
|
|
resistance_flags = FLAMMABLE
|
|
|
|
/obj/item/clothing/mask/gas/sexymime
|
|
name = "sexy mime mask"
|
|
desc = "A traditional female mime's mask."
|
|
clothing_flags = ALLOWINTERNALS
|
|
icon_state = "sexymime"
|
|
item_state = "sexymime"
|
|
flags_cover = MASKCOVERSEYES
|
|
resistance_flags = FLAMMABLE
|
|
|
|
/obj/item/clothing/mask/gas/death_commando
|
|
name = "Death Commando Mask"
|
|
icon_state = "death_commando_mask"
|
|
item_state = "death_commando_mask"
|
|
|
|
/obj/item/clothing/mask/gas/cyborg
|
|
name = "cyborg visor"
|
|
desc = "Beep boop."
|
|
icon_state = "death"
|
|
resistance_flags = FLAMMABLE
|
|
|
|
/obj/item/clothing/mask/gas/owl_mask
|
|
name = "owl mask"
|
|
desc = "Twoooo!"
|
|
icon_state = "owl"
|
|
clothing_flags = ALLOWINTERNALS
|
|
flags_cover = MASKCOVERSEYES
|
|
resistance_flags = FLAMMABLE
|
|
|
|
/obj/item/clothing/mask/gas/carp
|
|
name = "carp mask"
|
|
desc = "Gnash gnash."
|
|
icon_state = "carp_mask"
|
|
|
|
/obj/item/clothing/mask/gas/tiki_mask
|
|
name = "tiki mask"
|
|
desc = "A creepy wooden mask. Surprisingly expressive for a poorly carved bit of wood."
|
|
icon_state = "tiki_eyebrow"
|
|
item_state = "tiki_eyebrow"
|
|
resistance_flags = FLAMMABLE
|
|
max_integrity = 100
|
|
actions_types = list(/datum/action/item_action/adjust)
|
|
dog_fashion = null
|
|
|
|
|
|
/obj/item/clothing/mask/gas/tiki_mask/ui_action_click(mob/user)
|
|
|
|
var/mob/M = usr
|
|
var/list/options = list()
|
|
options["Original Tiki"] = "tiki_eyebrow"
|
|
options["Happy Tiki"] = "tiki_happy"
|
|
options["Confused Tiki"] = "tiki_confused"
|
|
options["Angry Tiki"] ="tiki_angry"
|
|
|
|
var/choice = input(M,"To what form do you wish to change this mask?","Morph Mask") in options
|
|
|
|
if(src && choice && !M.stat && in_range(M,src))
|
|
icon_state = options[choice]
|
|
user.update_inv_wear_mask()
|
|
for(var/X in actions)
|
|
var/datum/action/A = X
|
|
A.UpdateButtonIcon()
|
|
to_chat(M, "The Tiki Mask has now changed into the [choice] Mask!")
|
|
return 1
|