diff --git a/src/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Bee.java b/src/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Bee.java index 69aac467c..8c97d9f30 100644 --- a/src/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Bee.java +++ b/src/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Bee.java @@ -120,7 +120,7 @@ public class Bee extends Mob { //find all mobs near the pot HashSet enemies = new HashSet(); for (Mob mob : Dungeon.level.mobs) - if (!(mob instanceof Bee) && Level.distance(mob.pos, potPos) <= 3 && mob.hostile) + if (!(mob instanceof Bee) && Level.distance(mob.pos, potPos) <= 3 && (mob.hostile || mob.ally)) enemies.add(mob); //pick one, if there are none, check if the hero is near the pot, go for them, otherwise go for nothing. diff --git a/src/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mob.java b/src/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mob.java index 19887b0c0..5a0cfed6e 100644 --- a/src/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mob.java +++ b/src/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mob.java @@ -168,10 +168,12 @@ public abstract class Mob extends Char { } //resets target if: the target is dead, the target has been lost (wandering) - //or if the mob is amoked and targeting a friendly (will try to target something else) + //or if the mob is amoked and targeting the hero (will try to target something else) + //or if the mob is not amoked, and is targeting a hostile mob if ( enemy != null && !enemy.isAlive() || state == WANDERING || - (buff( Amok.class ) != null && (enemy == Dungeon.hero || (enemy instanceof Mob && ((Mob)enemy).ally)))) + (buff( Amok.class ) != null && enemy == Dungeon.hero ) || + (buff( Amok.class ) == null && enemy instanceof Mob && ((Mob) enemy).hostile )) enemy = null; //if there is no current target, find a new one.