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 b3642eff146..5505367fbda 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 [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)