Files
mistyLuminescenceandAtermonera a190ec5725 Allows modkits to be created for any item. (#4450)
* Adds modular modkits
* Adds explorer suit functionality to voidsuit modkits.
2018-01-19 18:11:28 -08:00

63 lines
1.7 KiB
Plaintext

//Hoods for winter coats and chaplain hoodie etc
/obj/item/clothing/suit/storage/hooded
var/obj/item/clothing/head/hood
var/hoodtype = null //so the chaplain hoodie or other hoodies can override this
var/suittoggled = 0
var/hooded = 0
var/toggleicon
action_button_name = "Toggle Hood"
/obj/item/clothing/suit/storage/hooded/New()
toggleicon = "[initial(icon_state)]"
MakeHood()
..()
/obj/item/clothing/suit/storage/hooded/Destroy()
qdel(hood)
return ..()
/obj/item/clothing/suit/storage/hooded/proc/MakeHood()
if(!hood)
var/obj/item/clothing/head/hood/winter/W = new hoodtype(src)
hood = W
/obj/item/clothing/suit/storage/hooded/ui_action_click()
ToggleHood()
/obj/item/clothing/suit/storage/hooded/equipped(mob/user, slot)
if(slot != slot_wear_suit)
RemoveHood()
..()
/obj/item/clothing/suit/storage/hooded/proc/RemoveHood()
icon_state = toggleicon
suittoggled = 0
hood.canremove = TRUE // This shouldn't matter anyways but just incase.
if(ishuman(hood.loc))
var/mob/living/carbon/H = hood.loc
H.unEquip(hood, 1)
H.update_inv_wear_suit()
hood.forceMove(src)
/obj/item/clothing/suit/storage/hooded/dropped()
RemoveHood()
/obj/item/clothing/suit/storage/hooded/proc/ToggleHood()
if(!suittoggled)
if(ishuman(loc))
var/mob/living/carbon/human/H = src.loc
if(H.wear_suit != src)
to_chat(H, "<span class='warning'>You must be wearing [src] to put up the hood!</span>")
return
if(H.head)
to_chat(H, "<span class='warning'>You're already wearing something on your head!</span>")
return
else
H.equip_to_slot_if_possible(hood,slot_head,0,0,1)
suittoggled = 1
hood.canremove = FALSE
icon_state = "[toggleicon]_t"
H.update_inv_wear_suit()
else
RemoveHood()