diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/HuntressArmor.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/HuntressArmor.java index 04d2bbb88..d4f36edcb 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/HuntressArmor.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/HuntressArmor.java @@ -48,7 +48,8 @@ public class HuntressArmor extends ClassArmor { Item proto = new Shuriken(); for (Mob mob : Dungeon.level.mobs) { - if (Dungeon.level.heroFOV[mob.pos]) { + if (Dungeon.level.distance(curUser.pos, mob.pos) <= 12 + && Dungeon.level.heroFOV[mob.pos]) { Callback callback = new Callback() { @Override diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/RogueArmor.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/RogueArmor.java index 9a6bc5521..b1e2484e7 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/RogueArmor.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/armor/RogueArmor.java @@ -36,6 +36,7 @@ import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene; import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSpriteSheet; import com.shatteredpixel.shatteredpixeldungeon.utils.GLog; import com.watabou.noosa.audio.Sample; +import com.watabou.utils.PathFinder; public class RogueArmor extends ClassArmor { @@ -53,8 +54,11 @@ public class RogueArmor extends ClassArmor { @Override public void onSelect( Integer target ) { if (target != null) { - - if (!Dungeon.level.heroFOV[target] || + + PathFinder.buildDistanceMap(curUser.pos, Dungeon.level.passable, 8); + + if ( PathFinder.distance[target] == Integer.MAX_VALUE || + !Dungeon.level.heroFOV[target] || !(Dungeon.level.passable[target] || Dungeon.level.avoid[target]) || Actor.findChar( target ) != null) {