From 255f5ac834076c508b28c3b5571280b5416a03b8 Mon Sep 17 00:00:00 2001 From: Sloth Date: Sat, 12 Jan 2013 14:52:45 +0000 Subject: [PATCH] - Fixed AI using Discordant Dirge. --- src/main/java/forge/card/abilityfactory/ai/DiscardAi.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/forge/card/abilityfactory/ai/DiscardAi.java b/src/main/java/forge/card/abilityfactory/ai/DiscardAi.java index baa518fb529..9beabf01614 100644 --- a/src/main/java/forge/card/abilityfactory/ai/DiscardAi.java +++ b/src/main/java/forge/card/abilityfactory/ai/DiscardAi.java @@ -74,12 +74,16 @@ public class DiscardAi extends SpellAiLogic { } } - if (!sa.getParam("Mode").equals("Hand") && !sa.getParam("Mode").equals("RevealDiscardAll")) { - if (sa.hasParam("NumCards") && sa.getParam("NumCards").equals("X") && source.getSVar("X").equals("Count$xPaid")) { + if (sa.hasParam("NumCards")) { + if (sa.getParam("NumCards").equals("X") && source.getSVar("X").equals("Count$xPaid")) { // Set PayX here to maximum value. final int cardsToDiscard = Math.min(ComputerUtil.determineLeftoverMana(sa, ai), ai.getOpponent() .getCardsIn(ZoneType.Hand).size()); source.setSVar("PayX", Integer.toString(cardsToDiscard)); + } else { + if (AbilityFactory.calculateAmount(sa.getSourceCard(), sa.getParam("NumCards"), sa) < 1) { + return false; + } } }