From 60091c50b56d6f4cbf5cf2ccba23a7be779cab00 Mon Sep 17 00:00:00 2001 From: Davidj361 Date: Wed, 28 Mar 2018 14:43:42 -0400 Subject: [PATCH] Fixes "ocular wardens don't target buckled mobs" (#36628) * Ocular wardens now shoot handcuffed and buckled, but not if they're spelled handcuffed. * Clock cultists can spell cuff sec cuffed carbon mobs, so the ocular doesn't shoot them. * Added in review suggestions * More oversight --- .../antagonists/clockcult/clock_helpers/slab_abilities.dm | 4 ++-- .../antagonists/clockcult/clock_structures/ocular_warden.dm | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/code/modules/antagonists/clockcult/clock_helpers/slab_abilities.dm b/code/modules/antagonists/clockcult/clock_helpers/slab_abilities.dm index 95a46705f0..fedcfa0e97 100644 --- a/code/modules/antagonists/clockcult/clock_helpers/slab_abilities.dm +++ b/code/modules/antagonists/clockcult/clock_helpers/slab_abilities.dm @@ -40,7 +40,7 @@ else if(L.stat) to_chat(ranged_ability_user, "\"There is use in shackling the dead, but for examples.\"") return TRUE - else if(L.handcuffed) + else if (istype(L.handcuffed,/obj/item/restraints/handcuffs/clockwork)) to_chat(ranged_ability_user, "\"They are already helpless, no?\"") return TRUE @@ -49,7 +49,7 @@ "You begin shaping replicant alloy into manacles around [L]'s wrists...") to_chat(L, "[ranged_ability_user] begins forming manacles around your wrists!") if(do_mob(ranged_ability_user, L, 30)) - if(!L.handcuffed) + if(!(istype(L.handcuffed,/obj/item/restraints/handcuffs/clockwork))) L.handcuffed = new/obj/item/restraints/handcuffs/clockwork(L) L.update_handcuffed() to_chat(ranged_ability_user, "You shackle [L].") diff --git a/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm b/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm index 86d9497934..f6df9efbbe 100644 --- a/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm +++ b/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm @@ -112,8 +112,12 @@ continue if(is_servant_of_ratvar(L) || (L.has_trait(TRAIT_BLIND)) || L.anti_magic_check(TRUE, TRUE)) continue - if(L.stat || L.restrained() || L.buckled || L.lying) + if(L.stat || L.lying) continue + if (iscarbon(L)) + var/mob/living/carbon/c = L + if (istype(c.handcuffed,/obj/item/restraints/handcuffs/clockwork)) + continue if(ishostile(L)) var/mob/living/simple_animal/hostile/H = L if(("ratvar" in H.faction) || (!H.mind && "neutral" in H.faction))