diff --git a/forge-ai/src/main/java/forge/ai/AiController.java b/forge-ai/src/main/java/forge/ai/AiController.java index 68a5cc08e52..cdc86dd4c0f 100644 --- a/forge-ai/src/main/java/forge/ai/AiController.java +++ b/forge-ai/src/main/java/forge/ai/AiController.java @@ -671,7 +671,7 @@ public class AiController { // This is for playing spells regularly (no Cascade/Ripple etc.) private AiPlayDecision canPlayAndPayFor(final SpellAbility sa) { - boolean xCost = sa.getPayCosts().hasXInAnyCostPart(sa); + boolean xCost = sa.getPayCosts().hasXInAnyCostPart(); if (!xCost && !ComputerUtilCost.canPayCost(sa, player)) { // for most costs, it's OK to check if they can be paid early in order to avoid running a heavy API check @@ -708,7 +708,7 @@ public class AiController { return canPlaySa(((WrappedAbility) sa).getWrappedAbility()); } - // Trying to play a card that has Buyback without a Buyback cost + // Trying to play a card that has Buyback without a Buyback cost, look for possible additional considerations if (card.hasKeyword(Keyword.BUYBACK) && !sa.isBuyBackAbility() && !canPlaySpellWithoutBuyback(card, sa)) { return AiPlayDecision.NeedsToPlayCriteriaNotMet; } diff --git a/forge-game/src/main/java/forge/game/cost/Cost.java b/forge-game/src/main/java/forge/game/cost/Cost.java index 5a48859876a..1d7606922c0 100644 --- a/forge-game/src/main/java/forge/game/cost/Cost.java +++ b/forge-game/src/main/java/forge/game/cost/Cost.java @@ -935,19 +935,17 @@ public class Cost implements Serializable { return true; } - public boolean hasXInAnyCostPart(SpellAbility sa) { + public boolean hasXInAnyCostPart() { boolean xCost = false; - if (sa.getPayCosts() != null) { - for (CostPart p : sa.getPayCosts().getCostParts()) { - if (p instanceof CostPartMana) { - if (((CostPartMana) p).getAmountOfX() > 0) { - xCost = true; - break; - } - } else if (p.getAmount().equals("X")) { + for (CostPart p : this.getCostParts()) { + if (p instanceof CostPartMana) { + if (((CostPartMana) p).getAmountOfX() > 0) { xCost = true; break; } + } else if (p.getAmount().equals("X")) { + xCost = true; + break; } } return xCost; diff --git a/forge-gui/src/main/java/forge/match/input/InputAttack.java b/forge-gui/src/main/java/forge/match/input/InputAttack.java index cf46d7c3e17..d8955dcfafe 100644 --- a/forge-gui/src/main/java/forge/match/input/InputAttack.java +++ b/forge-gui/src/main/java/forge/match/input/InputAttack.java @@ -84,7 +84,7 @@ public class InputAttack extends InputSyncronizedBase { } private void updatePrompt() { - String alphaLabel = canCallBackAttackers() ? "Call Back" : "AlphaStrike"; + String alphaLabel = canCallBackAttackers() ? "Call Back" : "Alpha Strike"; getController().getGui().updateButtons(getOwner(), "OK", alphaLabel, true, true, true); }