diff --git a/forge-ai/src/main/java/forge/ai/AiController.java b/forge-ai/src/main/java/forge/ai/AiController.java index cb839fcf745..39c1c6c8d80 100644 --- a/forge-ai/src/main/java/forge/ai/AiController.java +++ b/forge-ai/src/main/java/forge/ai/AiController.java @@ -782,15 +782,9 @@ public class AiController { return AiPlayDecision.CantAfford; } } - if (wardCost.hasSpecificCostType(CostPayLife.class)) { - int lifeToPay = wardCost.getCostPartByType(CostPayLife.class).convertAmount(); - if (lifeToPay > player.getLife() || (lifeToPay == player.getLife() && !player.cantLoseForZeroOrLessLife())) { - return AiPlayDecision.CantAfford; - } - } - if (wardCost.hasSpecificCostType(CostDiscard.class) - && wardCost.getCostPartByType(CostDiscard.class).convertAmount() > player.getCardsIn(ZoneType.Hand).size()) { - return AiPlayDecision.CantAfford; + SpellAbilityAi topAI = new SpellAbilityAi() {}; + if (!topAI.willPayCosts(player, sa , wardCost, host)) { + return AiPlayDecision.CostNotAcceptable; } } }