From 7cdc881c2476bea7a915cca6198c47808b4d674b Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Tue, 31 Dec 2024 13:05:52 -0500 Subject: [PATCH] v3.0.0: fixed new target swapping causing removed enemies to be attacked --- .../shatteredpixel/shatteredpixeldungeon/actors/mobs/Mob.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mob.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mob.java index 448bf470b..de9f43530 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mob.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mob.java @@ -1205,7 +1205,7 @@ public abstract class Mob extends Char { if (!recentlyAttackedBy.isEmpty()){ boolean swapped = false; for (Char ch : recentlyAttackedBy){ - if (ch != null && alignment != ch.alignment && fieldOfView[ch.pos] && ch.invisible == 0 && !isCharmedBy(ch)) { + if (ch != null && ch.isActive() && Actor.chars().contains(ch) && alignment != ch.alignment && fieldOfView[ch.pos] && ch.invisible == 0 && !isCharmedBy(ch)) { if (canAttack(ch) || enemy == null || Dungeon.level.distance(pos, ch.pos) < Dungeon.level.distance(pos, enemy.pos)) { enemy = ch; target = ch.pos;