From fc3cc9517ede41cc69e074a3af42183b09b168be Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 1 Mar 2020 00:48:49 -0500 Subject: [PATCH] Earlyports rig surgery fix --- code/modules/clothing/spacesuits/rig/rig.dm | 18 ++++++++++++++++++ code/modules/surgery/other.dm | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm index b35c1d65a54..00bdffdc3c9 100644 --- a/code/modules/clothing/spacesuits/rig/rig.dm +++ b/code/modules/clothing/spacesuits/rig/rig.dm @@ -232,6 +232,24 @@ update_airtight(piece, 0) // Unseal update_icon(1) +/obj/item/weapon/rig/proc/cut_suit() + offline = 2 + canremove = 1 + for(var/obj/item/piece in list(helmet,boots,gloves,chest)) + if(!piece) continue + piece.icon_state = "[suit_state]" + if(airtight) + update_airtight(piece, 0) // Unseal + piece.canremove = 1 + if(istype(loc, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = loc + H.drop_from_inventory(piece) + piece.forceMove(get_turf(src)) + piece.dropped() + piece.canremove = 0 + piece.forceMove(src) + update_icon(1) + /obj/item/weapon/rig/proc/toggle_seals(var/mob/living/carbon/human/M,var/instant) if(sealing) return diff --git a/code/modules/surgery/other.dm b/code/modules/surgery/other.dm index 411ecf75d3c..b6ec121adf6 100644 --- a/code/modules/surgery/other.dm +++ b/code/modules/surgery/other.dm @@ -225,7 +225,7 @@ rig = target.belt if(!istype(rig)) return - rig.reset() + rig.cut_suit() user.visible_message("[user] has cut through the support systems of \the [rig] on [target] with \the [tool].", \ "You have cut through the support systems of \the [rig] on [target] with \the [tool].")