From d2ae96d7b06b2ad07df3f872ac1bc0e6cefa5d08 Mon Sep 17 00:00:00 2001 From: Alberyk Date: Mon, 29 Jan 2018 19:17:18 -0200 Subject: [PATCH] Ports more missing limb checks from polaris and fixes removing hands not dropping items. (#4212) -adds more checks for missing limbs in the icon updates -fixes #4140 --- code/modules/mob/living/carbon/human/update_icons.dm | 4 ++-- code/modules/organs/subtypes/standard.dm | 4 ++++ html/changelogs/alberyk-nohand.yml | 6 ++++++ 3 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 html/changelogs/alberyk-nohand.yml diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 82cefe68702..7219ab38168 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -169,7 +169,7 @@ There are several things that need to be remembered: var/damage_appearance = "" for(var/obj/item/organ/external/O in organs) - if(O.is_stump()) + if(isnull(O) || O.is_stump()) continue //if(O.status & ORGAN_DESTROYED) damage_appearance += "d" //what is this? //else @@ -187,7 +187,7 @@ There are several things that need to be remembered: // blend the individual damage states with our icons for(var/obj/item/organ/external/O in organs) - if(O.is_stump()) + if(isnull(O) || O.is_stump()) continue O.update_icon() diff --git a/code/modules/organs/subtypes/standard.dm b/code/modules/organs/subtypes/standard.dm index 5d20d5b405d..abcb2a98958 100644 --- a/code/modules/organs/subtypes/standard.dm +++ b/code/modules/organs/subtypes/standard.dm @@ -125,6 +125,10 @@ /obj/item/organ/external/hand/removed() owner.drop_from_inventory(owner.gloves) + if(body_part == HAND_LEFT) + owner.drop_l_hand() + else + owner.drop_r_hand() ..() /obj/item/organ/external/hand/right diff --git a/html/changelogs/alberyk-nohand.yml b/html/changelogs/alberyk-nohand.yml new file mode 100644 index 00000000000..bb14ea7d4a0 --- /dev/null +++ b/html/changelogs/alberyk-nohand.yml @@ -0,0 +1,6 @@ +author: Alberyk + +delete-after: True + +changes: + - bugfix: "Cutting someone's hand should now force them to drop the item they are holding on said hand."