From f1558a255a32321dfc66c6763d0d65aa6ea26aab Mon Sep 17 00:00:00 2001 From: BetaSteward Date: Thu, 16 Jun 2011 23:02:24 -0400 Subject: [PATCH] implemented Damage Assignment Order --- .../src/mage/view/CombatGroupView.java | 2 +- .../java/mage/player/ai/ComputerPlayer.java | 6 +++++ .../src/mage/player/human/HumanPlayer.java | 15 +++++++++++ Mage.Server/plugins/mage-player-ai.jar | Bin 43333 -> 43464 bytes Mage.Server/plugins/mage-player-human.jar | Bin 12053 -> 12220 bytes Mage/src/mage/game/combat/Combat.java | 6 +++-- Mage/src/mage/game/combat/CombatGroup.java | 25 ++++++++++++++++++ Mage/src/mage/players/Player.java | 1 + 8 files changed, 52 insertions(+), 3 deletions(-) diff --git a/Mage.Common/src/mage/view/CombatGroupView.java b/Mage.Common/src/mage/view/CombatGroupView.java index f6923e36109..90465ae4e11 100644 --- a/Mage.Common/src/mage/view/CombatGroupView.java +++ b/Mage.Common/src/mage/view/CombatGroupView.java @@ -61,7 +61,7 @@ public class CombatGroupView implements Serializable { if (attacker != null) attackers.put(id, new PermanentView(attacker, game.getCard(attacker.getId()))); } - for (UUID id: combatGroup.getBlockers()) { + for (UUID id: combatGroup.getBlockerOrder()) { Permanent blocker = game.getPermanent(id); if (blocker != null) blockers.put(id, new PermanentView(blocker, game.getCard(blocker.getId()))); 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 8eb6816a40d..50374941eaa 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 @@ -880,6 +880,12 @@ public class ComputerPlayer> extends PlayerImpl i return min; } + @Override + public UUID chooseBlockerOrder(Cards blockers, Game game) { + //TODO: improve this + return blockers.iterator().next(); + } + @Override protected List getAvailableManaProducers(Game game) { // logger.debug("getAvailableManaProducers"); diff --git a/Mage.Server.Plugins/Mage.Player.Human/src/mage/player/human/HumanPlayer.java b/Mage.Server.Plugins/Mage.Player.Human/src/mage/player/human/HumanPlayer.java index 584aef59982..ef7d60621ca 100644 --- a/Mage.Server.Plugins/Mage.Player.Human/src/mage/player/human/HumanPlayer.java +++ b/Mage.Server.Plugins/Mage.Player.Human/src/mage/player/human/HumanPlayer.java @@ -458,6 +458,21 @@ public class HumanPlayer extends PlayerImpl { } } + @Override + public UUID chooseBlockerOrder(Cards blockers, Game game) { + while (!abort) { + game.fireSelectTargetEvent(playerId, "Pick blocker", blockers, true); + waitForResponse(); + if (response.getUUID() != null) { + for (Card card: blockers.getCards(game)) { + if (card.getId().equals(response.getUUID())) + return card.getId(); + } + } + } + return null; + } + protected void selectCombatGroup(UUID blockerId, Game game) { TargetAttackingCreature target = new TargetAttackingCreature(); game.fireSelectTargetEvent(playerId, "Select attacker to block", target.possibleTargets(null, playerId, game), target.isRequired(), null); diff --git a/Mage.Server/plugins/mage-player-ai.jar b/Mage.Server/plugins/mage-player-ai.jar index 6c7e92c2cab641f5b192fde1579a3c3ada57e6cb..1a451360d7fdadd9c48d6cb15c88cae2f283e825 100644 GIT binary patch delta 24810 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

xnegrDm+A;+ZQ0i|K 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 delta 24698 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 diff --git a/Mage.Server/plugins/mage-player-human.jar b/Mage.Server/plugins/mage-player-human.jar index 2746ea14c090f2b70cdb033bfc0ed88cdf31f742..9dd67a86378ea280664c05a008452b76b9b34f62 100644 GIT binary patch delta 9920 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 delta 9834 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 OIF*eIUYzOg?f(MQ^ueD1 diff --git a/Mage/src/mage/game/combat/Combat.java b/Mage/src/mage/game/combat/Combat.java index 785e43dbde9..9c986f50b4e 100644 --- a/Mage/src/mage/game/combat/Combat.java +++ b/Mage/src/mage/game/combat/Combat.java @@ -61,7 +61,7 @@ public class Combat implements Serializable, Copyable { protected List groups = new ArrayList(); protected Set defenders = new HashSet(); - protected UUID attackerId; + protected UUID attackerId; //the player that is attacking public Combat() {} @@ -346,7 +346,9 @@ public class Combat implements Serializable, Copyable { } public void damageAssignmentOrder(Game game) { - //TODO: set damage assignment order + for (CombatGroup group: groups) { + group.pickBlockerOrder(attackerId, game); + } } @Override diff --git a/Mage/src/mage/game/combat/CombatGroup.java b/Mage/src/mage/game/combat/CombatGroup.java index f38b4e6dd1f..8dabe4baae6 100644 --- a/Mage/src/mage/game/combat/CombatGroup.java +++ b/Mage/src/mage/game/combat/CombatGroup.java @@ -34,6 +34,8 @@ import java.util.*; import mage.abilities.keyword.DoubleStrikeAbility; import mage.abilities.keyword.FirstStrikeAbility; import mage.abilities.keyword.TrampleAbility; +import mage.cards.Cards; +import mage.cards.CardsImpl; import mage.game.Game; import mage.game.events.GameEvent; import mage.game.permanent.Permanent; @@ -271,6 +273,29 @@ public class CombatGroup implements Serializable, Copyable { } } + public void pickBlockerOrder(UUID playerId, Game game) { + if (blockers.isEmpty()) + return; + Player player = game.getPlayer(playerId); + List blockerList = new ArrayList(blockers); + blockerOrder.clear(); + while (true) { + if (blockerList.size() == 1) { + blockerOrder.add(blockerList.get(0)); + break; + } + else { + Cards blockerCards = new CardsImpl(); + for (UUID blockerId: blockerList) { + blockerCards.add(game.getCard(blockerId)); + } + UUID blockerId = player.chooseBlockerOrder(blockerCards, game); + blockerOrder.add(blockerId); + blockerList.remove(blockerId); + } + } + } + public int totalAttackerDamage(Game game) { int total = 0; for (UUID attackerId: attackers) { diff --git a/Mage/src/mage/players/Player.java b/Mage/src/mage/players/Player.java index 9683e5fe583..160630a609d 100644 --- a/Mage/src/mage/players/Player.java +++ b/Mage/src/mage/players/Player.java @@ -158,6 +158,7 @@ public interface Player extends MageItem, Copyable { public abstract TriggeredAbility chooseTriggeredAbility(TriggeredAbilities abilities, Game game); public abstract void selectAttackers(Game game); public abstract void selectBlockers(Game game); + public abstract UUID chooseBlockerOrder(Cards blockers, Game game); public abstract void assignDamage(int damage, List targets, UUID sourceId, Game game); public abstract int getAmount(int min, int max, String message, Game game); public abstract void sideboard(Match match, Deck deck);