From f5164fa5267fa658866cc82e017abb74d2f4fbc1 Mon Sep 17 00:00:00 2001 From: magenoxx Date: Sat, 17 Sep 2011 00:48:35 +0400 Subject: [PATCH] Fixed Anowon, the Ruin Sage --- .../mage/abilities/effects/common/SacrificeAllEffect.java | 2 +- Mage/src/mage/target/TargetPermanent.java | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Mage/src/mage/abilities/effects/common/SacrificeAllEffect.java b/Mage/src/mage/abilities/effects/common/SacrificeAllEffect.java index fd0080ab3ac..17e85174572 100644 --- a/Mage/src/mage/abilities/effects/common/SacrificeAllEffect.java +++ b/Mage/src/mage/abilities/effects/common/SacrificeAllEffect.java @@ -77,7 +77,7 @@ public class SacrificeAllEffect extends OneShotEffect { for (Player player: game.getPlayers().values()) { int numTargets = Math.min(amount, game.getBattlefield().countAll(filter, player.getId())); TargetControlledPermanent target = new TargetControlledPermanent(numTargets, numTargets, filter, false); - if (target.canChoose(source.getControllerId(), game)) { + if (target.canChoose(player.getId(), game)) { while (!target.isChosen()) { player.choose(Outcome.Sacrifice, target, game); } diff --git a/Mage/src/mage/target/TargetPermanent.java b/Mage/src/mage/target/TargetPermanent.java index ce66fefc32d..1ed8cc4f9c7 100644 --- a/Mage/src/mage/target/TargetPermanent.java +++ b/Mage/src/mage/target/TargetPermanent.java @@ -136,8 +136,10 @@ public class TargetPermanent> extends TargetObject< @Override public boolean canChoose(UUID sourceControllerId, Game game) { int remainingTargets = this.minNumberOfTargets - targets.size(); - if (remainingTargets == 0) - return true; + if (remainingTargets == 0) { + // if we return true, then AnowonTheRuinSage will hang for AI when no targets in play + return false; + } int count = 0; for (Permanent permanent: game.getBattlefield().getActivePermanents(filter, sourceControllerId, game)) { if (!targets.containsKey(permanent.getId())) {