From fc91229e9505d35435b0f2ecb4309cb4d76f7b4c Mon Sep 17 00:00:00 2001 From: Maxmtg Date: Tue, 9 Apr 2013 15:34:51 +0000 Subject: [PATCH] getAttackerList was duplicate of getAttackers - has been replaced. --- .../java/forge/card/ability/ai/EffectAi.java | 2 +- .../java/forge/card/ability/ai/PumpAiBase.java | 8 ++++---- .../java/forge/card/ability/ai/TapAiBase.java | 2 +- .../card/ability/effects/ChooseColorEffect.java | 3 +-- .../java/forge/control/input/InputAttack.java | 14 ++++---------- src/main/java/forge/game/phase/Combat.java | 17 +++-------------- src/main/java/forge/game/phase/CombatUtil.java | 8 ++++---- src/main/java/forge/game/phase/PhaseUtil.java | 8 ++++---- .../forge/gui/match/nonsingleton/CField.java | 2 +- 9 files changed, 23 insertions(+), 41 deletions(-) diff --git a/src/main/java/forge/card/ability/ai/EffectAi.java b/src/main/java/forge/card/ability/ai/EffectAi.java index 1c2ff1f58d3..937afb351a5 100644 --- a/src/main/java/forge/card/ability/ai/EffectAi.java +++ b/src/main/java/forge/card/ability/ai/EffectAi.java @@ -63,7 +63,7 @@ public class EffectAi extends SpellAbilityAi { final Target tgt = sa.getTarget(); if (tgt != null) { tgt.resetTargets(); - List list = game.getCombat().getAttackerList(); + List list = game.getCombat().getAttackers(); list = CardLists.getValidCards(list, tgt.getValidTgts(), sa.getActivatingPlayer(), sa.getSourceCard()); list = CardLists.getTargetableCards(list, sa); Card target = ComputerUtilCard.getBestCreatureAI(list); diff --git a/src/main/java/forge/card/ability/ai/PumpAiBase.java b/src/main/java/forge/card/ability/ai/PumpAiBase.java index c7e8174d045..9921cb8a9fb 100644 --- a/src/main/java/forge/card/ability/ai/PumpAiBase.java +++ b/src/main/java/forge/card/ability/ai/PumpAiBase.java @@ -179,7 +179,7 @@ public abstract class PumpAiBase extends SpellAbilityAi { } else if (keyword.endsWith("Flying")) { if (ph.isPlayerTurn(opp) && ph.getPhase().equals(PhaseType.COMBAT_DECLARE_ATTACKERS_INSTANT_ABILITY) - && !CardLists.getKeyword(Singletons.getModel().getGame().getCombat().getAttackerList(), "Flying").isEmpty() + && !CardLists.getKeyword(Singletons.getModel().getGame().getCombat().getAttackers(), "Flying").isEmpty() && !card.hasKeyword("Reach") && CombatUtil.canBlock(card) && ComputerUtilCombat.lifeInDanger(ai, Singletons.getModel().getGame().getCombat())) { @@ -196,7 +196,7 @@ public abstract class PumpAiBase extends SpellAbilityAi { } else if (keyword.endsWith("Horsemanship")) { if (ph.isPlayerTurn(opp) && ph.getPhase().equals(PhaseType.COMBAT_DECLARE_ATTACKERS_INSTANT_ABILITY) - && !CardLists.getKeyword(Singletons.getModel().getGame().getCombat().getAttackerList(), "Horsemanship").isEmpty() + && !CardLists.getKeyword(Singletons.getModel().getGame().getCombat().getAttackers(), "Horsemanship").isEmpty() && CombatUtil.canBlock(card) && ComputerUtilCombat.lifeInDanger(ai, Singletons.getModel().getGame().getCombat())) { return true; @@ -312,7 +312,7 @@ public abstract class PumpAiBase extends SpellAbilityAi { } else if (keyword.equals("Reach")) { if (ph.isPlayerTurn(ai) || !ph.getPhase().equals(PhaseType.COMBAT_DECLARE_ATTACKERS_INSTANT_ABILITY) - || CardLists.getKeyword(Singletons.getModel().getGame().getCombat().getAttackerList(), "Flying").isEmpty() + || CardLists.getKeyword(Singletons.getModel().getGame().getCombat().getAttackers(), "Flying").isEmpty() || card.hasKeyword("Flying") || !CombatUtil.canBlock(card)) { return false; @@ -324,7 +324,7 @@ public abstract class PumpAiBase extends SpellAbilityAi { } int canBlockNum = 1 + card.getKeywordAmount("CARDNAME can block an additional creature."); int possibleBlockNum = 0; - for (Card attacker : Singletons.getModel().getGame().getCombat().getAttackerList()) { + for (Card attacker : Singletons.getModel().getGame().getCombat().getAttackers()) { if (CombatUtil.canBlock(attacker, card)) { possibleBlockNum++; if (possibleBlockNum > canBlockNum) { diff --git a/src/main/java/forge/card/ability/ai/TapAiBase.java b/src/main/java/forge/card/ability/ai/TapAiBase.java index 452dbb4981e..238c8f78543 100644 --- a/src/main/java/forge/card/ability/ai/TapAiBase.java +++ b/src/main/java/forge/card/ability/ai/TapAiBase.java @@ -167,7 +167,7 @@ public abstract class TapAiBase extends SpellAbilityAi { List attackers; if (phase.getPhase().isAfter(PhaseType.COMBAT_DECLARE_ATTACKERS)) { //Combat has already started - attackers = Singletons.getModel().getGame().getCombat().getAttackerList(); + attackers = Singletons.getModel().getGame().getCombat().getAttackers(); } else { attackers = CardLists.filter(ai.getCreaturesInPlay(), new Predicate() { @Override diff --git a/src/main/java/forge/card/ability/effects/ChooseColorEffect.java b/src/main/java/forge/card/ability/effects/ChooseColorEffect.java index cfefeffb9af..0786724192a 100644 --- a/src/main/java/forge/card/ability/effects/ChooseColorEffect.java +++ b/src/main/java/forge/card/ability/effects/ChooseColorEffect.java @@ -100,8 +100,7 @@ public class ChooseColorEffect extends SpellAbilityEffect { chosen.add(ComputerUtilCard.getMostProminentColor(list)); } else if (logic.equals("MostProminentAttackers")) { - chosen.add(ComputerUtilCard.getMostProminentColor(Singletons.getModel().getGame().getCombat() - .getAttackerList())); + chosen.add(ComputerUtilCard.getMostProminentColor(Singletons.getModel().getGame().getCombat().getAttackers())); } else if (logic.equals("MostProminentKeywordInComputerDeck")) { List list = ai.getAllCards(); diff --git a/src/main/java/forge/control/input/InputAttack.java b/src/main/java/forge/control/input/InputAttack.java index 55367ce8f11..0f22db80ed6 100644 --- a/src/main/java/forge/control/input/InputAttack.java +++ b/src/main/java/forge/control/input/InputAttack.java @@ -65,18 +65,12 @@ public class InputAttack extends InputBase { return; } - final StringBuilder sb = new StringBuilder(); - sb.append("Declare Attackers: Select Creatures to Attack "); - sb.append(o.toString()); + showMessage("Declare Attackers: Select Creatures to Attack " + o.toString()); - CMatchUI.SINGLETON_INSTANCE.showMessage(sb.toString()); - - if (game.getCombat().getRemainingDefenders() == 0) { - // Nothing left to attack, has to attack this defender - List possibleAttackers = Singletons.getControl().getPlayer().getCardsIn(ZoneType.Battlefield); + if (game.getCombat().getRemainingDefenders() == 0) { // last Target + List possibleAttackers = player.getCardsIn(ZoneType.Battlefield); for (Card c : Iterables.filter(possibleAttackers, CardPredicates.Presets.CREATURES)) { - if (c.hasKeyword("CARDNAME attacks each turn if able.") && CombatUtil.canAttack(c, game.getCombat()) - && !c.isAttacking()) { + if (c.hasKeyword("CARDNAME attacks each turn if able.") && CombatUtil.canAttack(c, game.getCombat()) && !c.isAttacking()) { game.getCombat().addAttacker(c); } } diff --git a/src/main/java/forge/game/phase/Combat.java b/src/main/java/forge/game/phase/Combat.java index 2a43d645dc8..7c4987b65d1 100644 --- a/src/main/java/forge/game/phase/Combat.java +++ b/src/main/java/forge/game/phase/Combat.java @@ -429,17 +429,6 @@ public class Combat { return new ArrayList(this.attackerMap.keySet()); } // getAttackers() - /** - *

- * getAttackerList. - *

- * - * @return an array of {@link forge.Card} objects. - */ - public final List getAttackerList() { - return new ArrayList(this.attackerMap.keySet()); - } // getAttackers() - /** *

* isBlocked. @@ -642,7 +631,7 @@ public class Combat { * a {@link forge.Card} object. */ public final void undoBlockingAssignment(final Card blocker) { - final List att = this.getAttackerList(); + final List att = this.getAttackers(); for (final Card attacker : att) { if (this.getBlockers(attacker).contains(blocker)) { this.getBlockingAttackerList(attacker).remove(blocker); @@ -677,7 +666,7 @@ public class Combat { *

*/ public final void setUnblocked() { - final List attacking = this.getAttackerList(); + final List attacking = this.getAttackers(); for (final Card attacker : attacking) { final List block = this.getBlockers(attacker); @@ -723,7 +712,7 @@ public class Combat { private final boolean assignAttackersDamage(boolean firstStrikeDamage) { this.defendingDamageMap.clear(); // this should really happen in deal damage List blockers = null; - final List attackers = this.getAttackerList(); + final List attackers = this.getAttackers(); boolean assignedDamage = false; for (final Card attacker : attackers) { // If attacker isn't in the right first/regular strike section, continue along diff --git a/src/main/java/forge/game/phase/CombatUtil.java b/src/main/java/forge/game/phase/CombatUtil.java index 70c81f3bda0..e9dd96eab38 100644 --- a/src/main/java/forge/game/phase/CombatUtil.java +++ b/src/main/java/forge/game/phase/CombatUtil.java @@ -385,7 +385,7 @@ public class CombatUtil { public static boolean finishedMandatoryBlocks(final Combat combat, final Player defending) { final List blockers = Singletons.getControl().getPlayer().getCreaturesInPlay(); - final List attackers = combat.getAttackerList(); + final List attackers = combat.getAttackers(); // if a creature does not block but should, return false for (final Card blocker : blockers) { @@ -433,7 +433,7 @@ public class CombatUtil { private static void orderMultipleBlockers(final Combat combat) { // If there are multiple blockers, the Attacker declares the Assignment Order final Player player = combat.getAttackingPlayer(); - final List attackers = combat.getAttackerList(); + final List attackers = combat.getAttackers(); for (final Card attacker : attackers) { List blockers = combat.getBlockers(attacker); if (blockers.size() <= 1) { @@ -484,7 +484,7 @@ public class CombatUtil { return false; } - final List attackers = combat.getAttackerList(); + final List attackers = combat.getAttackers(); final List attackersWithLure = new ArrayList(); for (final Card attacker : attackers) { if (attacker.hasStartOfKeyword("All creatures able to block CARDNAME do so.") @@ -1194,7 +1194,7 @@ public class CombatUtil { // Run triggers final HashMap runParams = new HashMap(); runParams.put("Attacker", c); - final List otherAttackers = Singletons.getModel().getGame().getCombat().getAttackerList(); + final List otherAttackers = Singletons.getModel().getGame().getCombat().getAttackers(); otherAttackers.remove(c); runParams.put("OtherAttackers", otherAttackers); runParams.put("Attacked", Singletons.getModel().getGame().getCombat().getDefenderByAttacker(c)); diff --git a/src/main/java/forge/game/phase/PhaseUtil.java b/src/main/java/forge/game/phase/PhaseUtil.java index a33abf99f3a..2f8d384a60d 100644 --- a/src/main/java/forge/game/phase/PhaseUtil.java +++ b/src/main/java/forge/game/phase/PhaseUtil.java @@ -126,7 +126,7 @@ public class PhaseUtil { // Handles removing cards like Mogg Flunkies from combat if group attack // didn't occur - final List filterList = combat.getAttackerList(); + final List filterList = combat.getAttackers(); for (Card c : filterList) { if (c.hasKeyword("CARDNAME can't attack or block alone.") && c.isAttacking()) { if (combat.getAttackers().size() < 2) { @@ -135,7 +135,7 @@ public class PhaseUtil { } } - final List list = combat.getAttackerList(); + final List list = combat.getAttackers(); // TODO move propaganda to happen as the Attacker is Declared // Remove illegal Propaganda attacks first only for attacking the Player @@ -154,7 +154,7 @@ public class PhaseUtil { *

*/ public static void handleAttackingTriggers() { - final List list = Singletons.getModel().getGame().getCombat().getAttackerList(); + final List list = Singletons.getModel().getGame().getCombat().getAttackers(); Singletons.getModel().getGame().getStack().freezeStack(); // Then run other Attacker bonuses // check for exalted: @@ -220,7 +220,7 @@ public class PhaseUtil { } }); - final List attList = game.getCombat().getAttackerList(); + final List attList = game.getCombat().getAttackers(); CombatUtil.checkDeclareBlockers(list); diff --git a/src/main/java/forge/gui/match/nonsingleton/CField.java b/src/main/java/forge/gui/match/nonsingleton/CField.java index 46411578830..4ff05c1f474 100644 --- a/src/main/java/forge/gui/match/nonsingleton/CField.java +++ b/src/main/java/forge/gui/match/nonsingleton/CField.java @@ -406,7 +406,7 @@ public class CField implements ICDoc { } } - final List att = Singletons.getModel().getGame().getCombat().getAttackerList(); + final List att = Singletons.getModel().getGame().getCombat().getAttackers(); if ((c.isTapped() || c.hasSickness() || (c.hasKeyword("Vigilance") && att.contains(c))) && (input instanceof InputAttack)) { final CardPanel cardPanel = CField.this.view.getTabletop().getCardPanel(c.getUniqueNumber()); for (final CardPanel cp : cardPanel.getAttachedPanels()) {