From a849010ab1462f4acc9e19e0467cda8da4c969fe Mon Sep 17 00:00:00 2001 From: Aronai Sieyes Date: Wed, 25 Apr 2018 15:03:10 -0400 Subject: [PATCH] Makes organ removal/attachment right again (#5192) * Makes organ removal/attachment right again * Limb reattach - Changeo Loggo --- code/modules/organs/organ_external.dm | 2 ++ code/modules/surgery/limb_reattach.dm | 9 ++---- html/changelogs/arokha - pol-limbprint.yml | 37 ++++++++++++++++++++++ 3 files changed, 42 insertions(+), 6 deletions(-) create mode 100644 html/changelogs/arokha - pol-limbprint.yml diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index 6becbcaaf43..57c06cbb8ec 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -1189,6 +1189,8 @@ Note that amputating the affected organ does in fact remove the infection from t victim.organs -= src victim.organs_by_name[organ_tag] = null // Remove from owner's vars. + status |= ORGAN_CUT_AWAY //Checked during surgeries to reattach it + //Robotic limbs explode if sabotaged. if(is_robotic && sabotaged) victim.visible_message( diff --git a/code/modules/surgery/limb_reattach.dm b/code/modules/surgery/limb_reattach.dm index df1f24eec2f..391b83fe0c9 100644 --- a/code/modules/surgery/limb_reattach.dm +++ b/code/modules/surgery/limb_reattach.dm @@ -84,7 +84,7 @@ /datum/surgery_step/limb/connect/can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/E = target.get_organ(target_zone) - return E && !E.is_stump() && (E.status & ORGAN_DESTROYED) + return E && !E.is_stump() && (E.status & ORGAN_CUT_AWAY) /datum/surgery_step/limb/connect/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/E = target.get_organ(target_zone) @@ -95,11 +95,8 @@ var/obj/item/organ/external/E = target.get_organ(target_zone) user.visible_message("[user] has connected tendons and muscles in [target]'s [E.amputation_point] with [tool].", \ "You have connected tendons and muscles in [target]'s [E.amputation_point] with [tool].") - E.status &= ~ORGAN_DESTROYED - if(E.children) - for(var/obj/item/organ/external/C in E.children) - C.status &= ~ORGAN_DESTROYED - target.update_icons_body(FALSE) + E.status &= ~ORGAN_CUT_AWAY + target.update_icons_body() target.updatehealth() target.UpdateDamageIcon() diff --git a/html/changelogs/arokha - pol-limbprint.yml b/html/changelogs/arokha - pol-limbprint.yml new file mode 100644 index 00000000000..b80cbe68d0e --- /dev/null +++ b/html/changelogs/arokha - pol-limbprint.yml @@ -0,0 +1,37 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Arokha + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - bugfix: "Nerve reattaching surgery now works correctly. (Hemostat on limb)" + - bugfix: "Limbs dropped by people don't have appropriate flags."