diff --git a/forge-ai/src/main/java/forge/ai/ComputerUtil.java b/forge-ai/src/main/java/forge/ai/ComputerUtil.java index e51e0d847a4..f925890191b 100644 --- a/forge-ai/src/main/java/forge/ai/ComputerUtil.java +++ b/forge-ai/src/main/java/forge/ai/ComputerUtil.java @@ -19,7 +19,10 @@ package forge.ai; import com.google.common.base.Predicate; import com.google.common.base.Predicates; -import com.google.common.collect.*; +import com.google.common.collect.ImmutableList; +import com.google.common.collect.Iterables; +import com.google.common.collect.Lists; +import com.google.common.collect.Multimap; import forge.ai.ability.ChooseGenericEffectAi; import forge.ai.ability.ProtectAi; import forge.ai.ability.TokenAi; @@ -44,7 +47,10 @@ import forge.game.player.Player; import forge.game.replacement.ReplacementEffect; import forge.game.replacement.ReplacementLayer; import forge.game.replacement.ReplacementType; -import forge.game.spellability.*; +import forge.game.spellability.AbilitySub; +import forge.game.spellability.SpellAbility; +import forge.game.spellability.SpellAbilityStackInstance; +import forge.game.spellability.TargetRestrictions; import forge.game.staticability.StaticAbility; import forge.game.trigger.Trigger; import forge.game.trigger.TriggerType; @@ -109,6 +115,10 @@ public class ComputerUtil { } final Cost cost = sa.getPayCosts(); + + // Remember the now-forgotten kicker cost? Why is this needed? + sa.getHostCard().setKickerMagnitude(source.getKickerMagnitude()); // the card will disappear + // TODO: update mana color conversion for Daxos of Meletis if (cost == null) { if (ComputerUtilMana.payManaCost(ai, sa)) { diff --git a/forge-ai/src/main/java/forge/ai/ability/PermanentAi.java b/forge-ai/src/main/java/forge/ai/ability/PermanentAi.java index f3ec36f837d..fbc05b92472 100644 --- a/forge-ai/src/main/java/forge/ai/ability/PermanentAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/PermanentAi.java @@ -156,6 +156,7 @@ public class PermanentAi extends SpellAbilityAi { ManaCostBeingPaid mcbp = new ManaCostBeingPaid(mCost); if (!ComputerUtilMana.canPayManaCost(mcbp, sa, ai)) { card.setKickerMagnitude(i); + sa.setSVar("Multikicker", String.valueOf(i)); break; } card.setKickerMagnitude(i + 1);