From 6a100c488926821dadf8e8d5129f8324112c265f Mon Sep 17 00:00:00 2001 From: SabreML Date: Tue, 23 Feb 2021 22:31:58 +0000 Subject: [PATCH] Swatting --- .../objects/effects/decals/Cleanable/misc.dm | 2 +- code/game/objects/items/weapons/melee/misc.dm | 27 ++++++++++--------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/code/game/objects/effects/decals/Cleanable/misc.dm b/code/game/objects/effects/decals/Cleanable/misc.dm index 721b28d09fd..17f37c4f478 100644 --- a/code/game/objects/effects/decals/Cleanable/misc.dm +++ b/code/game/objects/effects/decals/Cleanable/misc.dm @@ -222,7 +222,7 @@ anchored = TRUE /obj/effect/decal/cleanable/insectguts - name = "cockroach guts" + name = "bug guts" desc = "One bug squashed. Four more will rise in its place." icon = 'icons/effects/blood.dmi' icon_state = "xfloor1" diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm index fbc8c1031bd..cb1ce7086ab 100644 --- a/code/game/objects/items/weapons/melee/misc.dm +++ b/code/game/objects/items/weapons/melee/misc.dm @@ -89,17 +89,20 @@ /mob/living/simple_animal/hostile/poison/bees/, /mob/living/simple_animal/butterfly, /mob/living/simple_animal/cockroach, - /obj/item/queen_bee - )) + /obj/item/queen_bee)) + strong_against -= /mob/living/simple_animal/hostile/poison/bees/syndi // Syndi-bees have special anti-flyswatter tech installed -/obj/item/melee/flyswatter/afterattack(atom/target, mob/user, proximity_flag) +/obj/item/melee/flyswatter/attack(mob/living/M, mob/living/user, def_zone) . = ..() - if(proximity_flag) - if(is_type_in_typecache(target, strong_against)) - new /obj/effect/decal/cleanable/insectguts(target.drop_location()) - to_chat(user, "You easily splat the [target].") - if(istype(target, /mob/living/)) - var/mob/living/bug = target - bug.death(1) - else - qdel(target) + if(!.) + return + if(is_type_in_typecache(M, strong_against)) + new /obj/effect/decal/cleanable/insectguts(M.drop_location()) + user.visible_message("[user] splats [M] with [src].", + "You splat [M] with [src].", + "You hear a splat.") + if(isliving(M)) + var/mob/living/bug = M + bug.death(TRUE) + if(!QDELETED(M)) + qdel(M)