From 1156dee51d27a9626d2576da19e09d716ae68a3b Mon Sep 17 00:00:00 2001
From: Migratingcocofruit
<69551563+Migratingcocofruit@users.noreply.github.com>
Date: Sat, 26 Apr 2025 21:15:55 +0300
Subject: [PATCH] Fix some spider attacks being improperly parried (#29062)
* Fix black and white terror spider attacks being improperly parried
* Update green.dm
---
.../mob/living/simple_animal/hostile/terror_spiders/black.dm | 4 +++-
.../mob/living/simple_animal/hostile/terror_spiders/green.dm | 3 ++-
.../mob/living/simple_animal/hostile/terror_spiders/white.dm | 3 ++-
3 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/black.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/black.dm
index 7a886a3d6dc..642246b3d99 100644
--- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/black.dm
+++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/black.dm
@@ -34,8 +34,10 @@
if(L.reagents.has_reagent("terror_black_toxin", 100))
return ..()
var/inject_target = pick("chest", "head")
+ // Stop if we got blocked/parried
+ if(!L.attack_animal(src))
+ return
L.apply_damage(30, STAMINA)
- L.attack_animal(src)
if(L.can_inject(null, FALSE, inject_target, FALSE) || (HAS_TRAIT(L, TRAIT_HANDS_BLOCKED) && HAS_TRAIT(L, TRAIT_IMMOBILIZED)))
L.reagents.add_reagent("terror_black_toxin", 30) // inject our special poison
visible_message("[src] buries its long fangs deep into the [inject_target] of [target]!")
diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/green.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/green.dm
index c642423c91b..2dfd327f79e 100644
--- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/green.dm
+++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/green.dm
@@ -89,13 +89,14 @@
..()
return
var/inject_target = pick("chest","head")
+ if(!L.attack_animal(src))
+ return
if(L.IsStunned() || L.can_inject(null, FALSE, inject_target, FALSE))
L.AdjustEyeBlurry(20 SECONDS, 0, 120 SECONDS)
// instead of having a venom that only lasts seconds, we just add the eyeblur directly.
visible_message("[src] buries its fangs deep into the [inject_target] of [target]!")
else
visible_message("[src] bites [target], but cannot inject venom into [target.p_their()] [inject_target]!")
- L.attack_animal(src)
/obj/structure/spider/terrorweb/green
name = "slimy web"
diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/white.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/white.dm
index fcb808b4168..7187d64eede 100644
--- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/white.dm
+++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/white.dm
@@ -39,7 +39,8 @@
..()
return
var/inject_target = pick("chest","head")
- L.attack_animal(src)
+ if(!L.attack_animal(src))
+ return
L.KnockDown(10 SECONDS)
L.apply_damage(30, STAMINA)
if(L.can_inject(null, FALSE, inject_target, FALSE) || (HAS_TRAIT(L, TRAIT_HANDS_BLOCKED) && HAS_TRAIT(L, TRAIT_IMMOBILIZED)))