From a5aa7d923b14d6ef3f38c3cd2b5f51770fa0aa6c Mon Sep 17 00:00:00 2001 From: Charlie Nolan Date: Mon, 18 Mar 2024 11:25:35 -0700 Subject: [PATCH] Retaliate mobs no longer break stuff after revived with a laz injector. (#24665) --- code/__DEFINES/mob_defines.dm | 1 + code/modules/mining/equipment/lazarus_injector.dm | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/code/__DEFINES/mob_defines.dm b/code/__DEFINES/mob_defines.dm index 74dd4548680..dbb01b03ab9 100644 --- a/code/__DEFINES/mob_defines.dm +++ b/code/__DEFINES/mob_defines.dm @@ -241,6 +241,7 @@ #define isguardian(A) (istype((A), /mob/living/simple_animal/hostile/guardian)) #define isnymph(A) (istype((A), /mob/living/simple_animal/diona)) #define ishostile(A) (istype((A), /mob/living/simple_animal/hostile)) +#define isretaliate(A) (istype((A), /mob/living/simple_animal/hostile/retaliate)) #define isterrorspider(A) (istype((A), /mob/living/simple_animal/hostile/poison/terror_spider)) #define isslaughterdemon(A) (istype((A), /mob/living/simple_animal/demon/slaughter)) #define isdemon(A) (istype((A), /mob/living/simple_animal/demon)) diff --git a/code/modules/mining/equipment/lazarus_injector.dm b/code/modules/mining/equipment/lazarus_injector.dm index 821a77b0c9a..db8fa02badc 100644 --- a/code/modules/mining/equipment/lazarus_injector.dm +++ b/code/modules/mining/equipment/lazarus_injector.dm @@ -29,6 +29,12 @@ M.can_collar = TRUE if(ishostile(target)) var/mob/living/simple_animal/hostile/H = M + if(isretaliate(target)) + // Clear the enemies list so we don't break windows + // to get to people we no longer hate. + var/mob/living/simple_animal/hostile/retaliate/R = H + R.enemies.Cut() + if(malfunctioning) H.faction |= list("lazarus", "\ref[user]") H.robust_searching = TRUE