From 80c3aeaccbdb3f9d4eb70a86b6ec6e719c023f8a Mon Sep 17 00:00:00 2001 From: Tayyyyyyy Date: Tue, 23 May 2017 00:25:47 -0700 Subject: [PATCH] Add necessary skrell headpocket functions --- .../modules/surgery/organs/subtypes/skrell.dm | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/code/modules/surgery/organs/subtypes/skrell.dm b/code/modules/surgery/organs/subtypes/skrell.dm index 58610e1ccbb..a3edc708a21 100644 --- a/code/modules/surgery/organs/subtypes/skrell.dm +++ b/code/modules/surgery/organs/subtypes/skrell.dm @@ -1,3 +1,5 @@ +#define HEADPOCKET_DAMAGE_THRESHOLD 8 + /obj/item/organ/internal/liver/skrell alcohol_intensity = 4 species = "Skrell" @@ -13,6 +15,7 @@ species = "Skrell" actions_types = list(/datum/action/item_action/organ_action/toggle) var/obj/item/weapon/storage/internal/pocket + var/head_damage = 0 /obj/item/organ/internal/headpocket/New() ..() @@ -23,8 +26,26 @@ // Fit only pocket sized items pocket.max_w_class = 2 pocket.max_combined_w_class = 2 + +/obj/item/organ/internal/headpocket/on_life() ..() + var/obj/item/organ/external/head/head = owner.get_organ("head") + if(pocket.contents.len && (head.brute_dam - head_damage >= HEADPOCKET_DAMAGE_THRESHOLD || !findtextEx(head.h_style, "Tentacles"))) + owner.visible_message("Something falls from [owner]'s head!", + "Something falls from your head!") + pocket.empty_object_contents(0, get_turf(owner)) + head_damage = head.brute_dam /obj/item/organ/internal/headpocket/ui_action_click() + if(!loc) + loc = owner pocket.MouseDrop(owner) - return + +/obj/item/organ/internal/headpocket/on_owner_death() + pocket.empty_object_contents(0, get_turf(owner)) + +/obj/item/organ/internal/headpocket/remove() + pocket.empty_object_contents(0, get_turf(owner)) + . = ..() + +#undef HEADPOCKET_DAMAGE_THRESHOLD