mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 02:38:02 +00:00
- Fixed tapXType costs not canceling properly.
This commit is contained in:
@@ -1791,16 +1791,18 @@ public final class GameActionUtil {
|
|||||||
for (String keyword : source.getKeyword()) {
|
for (String keyword : source.getKeyword()) {
|
||||||
if (keyword.startsWith("Buyback")) {
|
if (keyword.startsWith("Buyback")) {
|
||||||
for (SpellAbility sa : abilities) {
|
for (SpellAbility sa : abilities) {
|
||||||
final SpellAbility newSA = sa.copy();
|
final SpellAbility newSA = sa.copy();
|
||||||
newSA.setBasicSpell(false);
|
newSA.setBasicSpell(false);
|
||||||
newSA.setPayCosts(GameActionUtil.combineCosts(newSA, keyword.substring(8)));
|
newSA.setPayCosts(GameActionUtil.combineCosts(newSA, keyword.substring(8)));
|
||||||
newSA.setManaCost("");
|
newSA.setManaCost("");
|
||||||
newSA.setDescription(sa.getDescription() + " (with Buyback)");
|
newSA.setDescription(sa.getDescription() + " (with Buyback)");
|
||||||
ArrayList<String> newoacs = new ArrayList<String>();
|
ArrayList<String> newoacs = new ArrayList<String>();
|
||||||
newoacs.addAll(sa.getOptionalAdditionalCosts());
|
newoacs.addAll(sa.getOptionalAdditionalCosts());
|
||||||
newSA.setOptionalAdditionalCosts(newoacs);
|
newSA.setOptionalAdditionalCosts(newoacs);
|
||||||
newSA.addOptionalAdditionalCosts("Buyback");
|
newSA.addOptionalAdditionalCosts("Buyback");
|
||||||
newAbilities.add(newAbilities.size(), newSA);
|
if (newSA.canPlay()) {
|
||||||
|
newAbilities.add(newAbilities.size(), newSA);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
abilities.addAll(0, newAbilities);
|
abilities.addAll(0, newAbilities);
|
||||||
newAbilities.clear();
|
newAbilities.clear();
|
||||||
@@ -1816,7 +1818,9 @@ public final class GameActionUtil {
|
|||||||
newoacs.addAll(sa.getOptionalAdditionalCosts());
|
newoacs.addAll(sa.getOptionalAdditionalCosts());
|
||||||
newSA.setOptionalAdditionalCosts(newoacs);
|
newSA.setOptionalAdditionalCosts(newoacs);
|
||||||
newSA.addOptionalAdditionalCosts(keyword);
|
newSA.addOptionalAdditionalCosts(keyword);
|
||||||
newAbilities.add(newAbilities.size(), newSA);
|
if (newSA.canPlay()) {
|
||||||
|
newAbilities.add(newAbilities.size(), newSA);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
abilities.addAll(0, newAbilities);
|
abilities.addAll(0, newAbilities);
|
||||||
newAbilities.clear();
|
newAbilities.clear();
|
||||||
|
|||||||
@@ -237,9 +237,9 @@ public class CostTapType extends CostPartWithList {
|
|||||||
this.done();
|
this.done();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cardList.size() == 0) {
|
/*if (cardList.size() == 0) {
|
||||||
this.stop();
|
this.cancel();
|
||||||
}
|
}*/
|
||||||
|
|
||||||
final int left = nCards - this.nTapped;
|
final int left = nCards - this.nTapped;
|
||||||
CMatchUI.SINGLETON_INSTANCE
|
CMatchUI.SINGLETON_INSTANCE
|
||||||
|
|||||||
@@ -163,7 +163,6 @@ public abstract class Spell extends SpellAbility implements java.io.Serializable
|
|||||||
} catch (final NumberFormatException e) {
|
} catch (final NumberFormatException e) {
|
||||||
y = CardFactoryUtil.xCount(card, card.getSVar(compareTo));
|
y = CardFactoryUtil.xCount(card, card.getSVar(compareTo));
|
||||||
}
|
}
|
||||||
System.out.println("NeedsToPlayVar: " + sVar + "(" + x + ")" + comparator + "(" + y + ")");
|
|
||||||
if (!AllZoneUtil.compare(x, comparator, y)) {
|
if (!AllZoneUtil.compare(x, comparator, y)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user