From b0d1f868902bca8f70e2e0827459c7cffbb47c69 Mon Sep 17 00:00:00 2001 From: Michael Simons <rystan@gmail.com> Date: Sun, 3 Jun 2018 22:50:56 -0400 Subject: [PATCH] Changes to try and better handle X mana costs with minimum X values with AI decisions #4906 --- .../main/java/mage/player/ai/ComputerPlayer.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java b/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java index 75409c91a4..cc862b47c1 100644 --- a/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java @@ -1472,18 +1472,25 @@ public class ComputerPlayer extends PlayerImpl implements Player { int numAvailable = getAvailableManaProducers(game).size() - ability.getManaCosts().convertedManaCost(); if (numAvailable < 0) { numAvailable = 0; - } - if (numAvailable > max) { - numAvailable = max; + } else { + if (numAvailable < min) { + numAvailable = min; + } + if (numAvailable > max) { + numAvailable = max; + } } return numAvailable; } @Override public int announceXCost(int min, int max, String message, Game game, Ability ability, VariableCost variablCost) { - log.debug("announceXMana"); + log.debug("announceXCost"); //TODO: improve this int value = RandomUtil.nextInt(max + 1); + if (value < min) { + value = min; + } if (value < max) { value++; }