From 11e738e6c625526048fd2721456e5903c20bae4d Mon Sep 17 00:00:00 2001 From: Sloth Date: Thu, 5 Sep 2013 11:27:54 +0000 Subject: [PATCH] - Fixed possibility of getting stuck with no targets. --- .../java/forge/card/spellability/TargetRestrictions.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/forge/card/spellability/TargetRestrictions.java b/src/main/java/forge/card/spellability/TargetRestrictions.java index 6ccf0c2d42b..bd54cdbf15f 100644 --- a/src/main/java/forge/card/spellability/TargetRestrictions.java +++ b/src/main/java/forge/card/spellability/TargetRestrictions.java @@ -462,7 +462,7 @@ public class TargetRestrictions { if (!c.isValid(this.validTgts, srcCard.getController(), srcCard)) { continue; } - if (isTargeted && !c.canBeTargetedBy(sa)) { + if (isTargeted && !sa.canTarget(c)) { continue; } if (sa.getTargets().isTargeting(c)) { @@ -513,10 +513,9 @@ public class TargetRestrictions { final Card srcCard = sa.getSourceCard(); // should there be OrginalHost at any moment? if (this.tgtZone.contains(ZoneType.Stack)) { for (final Card c : game.getStackZone().getCards()) { - boolean isValidTarget = c.isValid(this.validTgts, srcCard.getController(), srcCard); - boolean canTarget = (!isTargeted || c.canBeTargetedBy(sa)); - boolean isAlreadyTargeted = sa.getTargets().isTargeting(c); - if (isValidTarget && canTarget && !isAlreadyTargeted) { + if (c.isValid(this.validTgts, srcCard.getController(), srcCard) + && (!isTargeted || sa.canTarget(c)) + && !sa.getTargets().isTargeting(c)) { candidates.add(c); } }