diff --git a/Mage.Server.Plugins/Mage.Player.AIMCTS/src/mage/player/ai/SimulatedPlayerMCTS.java b/Mage.Server.Plugins/Mage.Player.AIMCTS/src/mage/player/ai/SimulatedPlayerMCTS.java index 77ba63399b5..0d565b0ced2 100644 --- a/Mage.Server.Plugins/Mage.Player.AIMCTS/src/mage/player/ai/SimulatedPlayerMCTS.java +++ b/Mage.Server.Plugins/Mage.Player.AIMCTS/src/mage/player/ai/SimulatedPlayerMCTS.java @@ -50,6 +50,7 @@ import mage.abilities.effects.ReplacementEffect; import mage.abilities.mana.ManaAbility; import mage.cards.Card; import mage.cards.Cards; +import mage.cards.CardsImpl; import mage.choices.Choice; import mage.game.Game; import mage.game.combat.CombatGroup; @@ -264,8 +265,16 @@ public class SimulatedPlayerMCTS extends MCTSPlayer { public boolean choose(Outcome outcome, Cards cards, TargetCard target, Game game) { if (cards.isEmpty()) return !target.isRequired(); - Card card = cards.getRandom(game); - target.add(card.getId(), game); + Set possibleTargets = target.possibleTargets(playerId, game); + if (possibleTargets.isEmpty()) + return !target.isRequired(); + Iterator it = possibleTargets.iterator(); + int targetNum = rnd.nextInt(possibleTargets.size()); + UUID targetId = it.next(); + for (int i = 0; i < targetNum; i++) { + targetId = it.next(); + } + target.add(targetId, game); return true; } diff --git a/Mage.Server/plugins/mage-player-aimcts.jar b/Mage.Server/plugins/mage-player-aimcts.jar index d3e362bd834..fa8ee41bedc 100644 Binary files a/Mage.Server/plugins/mage-player-aimcts.jar and b/Mage.Server/plugins/mage-player-aimcts.jar differ