diff --git a/src/main/java/forge/GameActionUtil.java b/src/main/java/forge/GameActionUtil.java index 2136821f5f8..10c6edd99b9 100644 --- a/src/main/java/forge/GameActionUtil.java +++ b/src/main/java/forge/GameActionUtil.java @@ -1791,16 +1791,18 @@ public final class GameActionUtil { for (String keyword : source.getKeyword()) { if (keyword.startsWith("Buyback")) { for (SpellAbility sa : abilities) { - final SpellAbility newSA = sa.copy(); - newSA.setBasicSpell(false); - newSA.setPayCosts(GameActionUtil.combineCosts(newSA, keyword.substring(8))); - newSA.setManaCost(""); - newSA.setDescription(sa.getDescription() + " (with Buyback)"); - ArrayList newoacs = new ArrayList(); - newoacs.addAll(sa.getOptionalAdditionalCosts()); - newSA.setOptionalAdditionalCosts(newoacs); - newSA.addOptionalAdditionalCosts("Buyback"); - newAbilities.add(newAbilities.size(), newSA); + final SpellAbility newSA = sa.copy(); + newSA.setBasicSpell(false); + newSA.setPayCosts(GameActionUtil.combineCosts(newSA, keyword.substring(8))); + newSA.setManaCost(""); + newSA.setDescription(sa.getDescription() + " (with Buyback)"); + ArrayList newoacs = new ArrayList(); + newoacs.addAll(sa.getOptionalAdditionalCosts()); + newSA.setOptionalAdditionalCosts(newoacs); + newSA.addOptionalAdditionalCosts("Buyback"); + if (newSA.canPlay()) { + newAbilities.add(newAbilities.size(), newSA); + } } abilities.addAll(0, newAbilities); newAbilities.clear(); @@ -1816,7 +1818,9 @@ public final class GameActionUtil { newoacs.addAll(sa.getOptionalAdditionalCosts()); newSA.setOptionalAdditionalCosts(newoacs); newSA.addOptionalAdditionalCosts(keyword); - newAbilities.add(newAbilities.size(), newSA); + if (newSA.canPlay()) { + newAbilities.add(newAbilities.size(), newSA); + } } abilities.addAll(0, newAbilities); newAbilities.clear(); diff --git a/src/main/java/forge/card/cost/CostTapType.java b/src/main/java/forge/card/cost/CostTapType.java index 4265cbc9e8b..f7c16b5f54a 100644 --- a/src/main/java/forge/card/cost/CostTapType.java +++ b/src/main/java/forge/card/cost/CostTapType.java @@ -237,9 +237,9 @@ public class CostTapType extends CostPartWithList { this.done(); } - if (cardList.size() == 0) { - this.stop(); - } + /*if (cardList.size() == 0) { + this.cancel(); + }*/ final int left = nCards - this.nTapped; CMatchUI.SINGLETON_INSTANCE diff --git a/src/main/java/forge/card/spellability/Spell.java b/src/main/java/forge/card/spellability/Spell.java index b129ffa57a8..1d88c4489d3 100644 --- a/src/main/java/forge/card/spellability/Spell.java +++ b/src/main/java/forge/card/spellability/Spell.java @@ -163,7 +163,6 @@ public abstract class Spell extends SpellAbility implements java.io.Serializable } catch (final NumberFormatException e) { y = CardFactoryUtil.xCount(card, card.getSVar(compareTo)); } - System.out.println("NeedsToPlayVar: " + sVar + "(" + x + ")" + comparator + "(" + y + ")"); if (!AllZoneUtil.compare(x, comparator, y)) { return false; }