v0.9.2: fixed targeting issues when enemies become corrupted

This commit is contained in:
Evan Debenham 2021-02-05 17:58:55 -05:00
parent 4eb658c012
commit c9cec834cf
2 changed files with 5 additions and 4 deletions

View File

@ -92,7 +92,6 @@ import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfTenacity;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.Scroll;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicMapping;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfLivingEarth;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfWarding;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.SpiritBow;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Blocking;
@ -1190,8 +1189,8 @@ public class Hero extends Char {
Char lastTarget = QuickSlotButton.lastTarget;
if (target != null && (lastTarget == null ||
!lastTarget.isAlive() ||
!fieldOfView[lastTarget.pos]) ||
(lastTarget instanceof WandOfWarding.Ward && mindVisionEnemies.contains(lastTarget))){
lastTarget.alignment == Alignment.ALLY ||
!fieldOfView[lastTarget.pos])){
QuickSlotButton.target(target);
}

View File

@ -92,8 +92,9 @@ public class QuickSlotButton extends Button implements WndBag.Listener {
}
} else {
Item item = select(slotNum);
if (item.usesTargeting)
if (item.usesTargeting) {
useTargeting();
}
item.execute( Dungeon.hero );
}
}
@ -207,6 +208,7 @@ public class QuickSlotButton extends Button implements WndBag.Listener {
if (lastTarget != null &&
Actor.chars().contains( lastTarget ) &&
lastTarget.isAlive() &&
lastTarget.alignment != Char.Alignment.ALLY &&
Dungeon.level.heroFOV[lastTarget.pos]) {
targeting = true;