From 8353428c43707c9e60ba35bf48e0f136c6e66e3b Mon Sep 17 00:00:00 2001 From: oranges Date: Tue, 17 Oct 2017 21:43:53 +1300 Subject: [PATCH 1/2] Merge pull request #31761 from tgstation/Cyberboss-patch-3 obj_break() will always be called before obj_destruction() --- code/game/objects/obj_defense.dm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/code/game/objects/obj_defense.dm b/code/game/objects/obj_defense.dm index 646548bbca..ad5f69672b 100644 --- a/code/game/objects/obj_defense.dm +++ b/code/game/objects/obj_defense.dm @@ -7,8 +7,12 @@ damage_amount = run_obj_armor(damage_amount, damage_type, damage_flag, attack_dir) if(damage_amount >= 0.1) . = damage_amount - obj_integrity = max(obj_integrity - damage_amount, 0) + var/old_integ = obj_integrity + obj_integrity = max(old_integ - damage_amount, 0) if(obj_integrity <= 0) + var/int_fail = integrity_failure + if(int_fail && old_integ > int_fail) + obj_break(damage_flag) obj_destruction(damage_flag) else if(integrity_failure) if(obj_integrity <= integrity_failure)