From a47b8c25df9611d156881d4698612532cf998e0c Mon Sep 17 00:00:00 2001 From: magenoxx Date: Thu, 24 May 2012 00:24:01 +0400 Subject: [PATCH] Various fixed. +3 tests passed. --- .../java/mage/player/ai/ComputerPlayer.java | 37 ++++--- Mage.Tests/RB Aggro.dck | 91 ++++++++++++++---- Mage.Tests/plugins/mage-player-ai.jar | Bin 55712 -> 55635 bytes .../keywords/SoulbondKeywordTest.java | 1 + .../cards/single/ArchangelsLightTest.java | 2 +- .../single/SorinLordOfInnistradTest.java | 4 +- .../cards/targets/attacking/CondemnTest.java | 3 +- .../cards/triggers/dies/BloodArtistTest.java | 6 +- .../java/org/mage/test/player/TestPlayer.java | 4 +- Mage/src/mage/abilities/Ability.java | 10 +- Mage/src/mage/abilities/AbilityImpl.java | 10 +- .../mage/abilities/TriggeredAbilities.java | 9 +- .../common/DiesTriggeredAbility.java | 6 +- .../abilities/effects/ContinuousEffects.java | 12 +-- Mage/src/mage/game/GameImpl.java | 4 +- Mage/src/mage/game/GameState.java | 18 +--- Mage/src/mage/game/stack/StackAbility.java | 35 +++---- 17 files changed, 156 insertions(+), 96 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 be03f87bb2..1060b43dc4 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 @@ -396,16 +396,18 @@ public class ComputerPlayer> extends PlayerImpl i targets = threats(opponentId, source.getSourceId(), ((FilterCreatureOrPlayer)t.getFilter()).getCreatureFilter(), game, target.getTargets()); } - if (outcome.isGood()) { - if (target.canTarget(playerId, source, game)) { - target.addTarget(playerId, source, game); - return true; + if (targets.isEmpty()) { + if (outcome.isGood()) { + if (target.canTarget(playerId, source, game)) { + target.addTarget(playerId, source, game); + return true; + } } - } - else { - if (target.canTarget(opponentId, source, game)) { - target.addTarget(opponentId, source, game); - return true; + else { + if (target.canTarget(opponentId, source, game)) { + target.addTarget(opponentId, source, game); + return true; + } } } @@ -422,6 +424,19 @@ public class ComputerPlayer> extends PlayerImpl i } } + if (outcome.isGood()) { + if (target.canTarget(playerId, source, game)) { + target.addTarget(playerId, source, game); + return true; + } + } + else { + if (target.canTarget(opponentId, source, game)) { + target.addTarget(opponentId, source, game); + return true; + } + } + if (!target.isRequired()) return false; } @@ -1501,12 +1516,12 @@ public class ComputerPlayer> extends PlayerImpl i protected List threats(UUID playerId, UUID sourceId, FilterPermanent filter, Game game, List targets) { List threats = playerId == null ? game.getBattlefield().getAllActivePermanents(filter) : - game.getBattlefield().getAllActivePermanents(filter, playerId); + game.getBattlefield().getActivePermanents(filter, playerId, sourceId, game); Iterator it = threats.iterator(); while (it.hasNext()) { // remove permanents already targeted Permanent test = it.next(); - if (targets.contains(test.getId())) + if (targets.contains(test.getId()) || (playerId != null && !test.getControllerId().equals(playerId))) it.remove(); } Collections.sort(threats, new PermanentComparator(game)); diff --git a/Mage.Tests/RB Aggro.dck b/Mage.Tests/RB Aggro.dck index 604fc32923..fc6cc06bba 100644 --- a/Mage.Tests/RB Aggro.dck +++ b/Mage.Tests/RB Aggro.dck @@ -1,19 +1,72 @@ -NAME:RB Aggro -4 [ALA:156] Blightning -2 [ZEN:245] Mountain -2 [ZEN:244] Mountain -2 [ZEN:243] Mountain -2 [ZEN:242] Mountain -4 [ZEN:223] Scalding Tarn -4 [M10:146] Lightning Bolt -4 [WWK:139] Lavaclaw Reaches -3 [M10:134] Earthquake -4 [ZEN:126] Goblin Guide -4 [CON:65] Hellspark Elemental -4 [M10:125] Ball Lightning -4 [ALA:103] Hell's Thunder -2 [CON:70] Quenchable Fire -3 [ZEN:119] Burst Lightning -4 [ZEN:211] Arid Mesa -4 [M10:223] Dragonskull Summit -4 [WWK:90] Searing Blaze +NAME:RB Aggro +1 [GUR:3] Mountain +1 [SHM:296] Mountain +1 [AVR:240] Mountain +1 [SHM:295] Mountain +1 [SHM:294] Mountain +1 [TSP:295] Mountain +1 [TSP:294] Mountain +1 [10E:379] Mountain +1 [SOM:245] Mountain +1 [ZEN:262] Mountain +1 [ZEN:245] Mountain +1 [10E:378] Mountain +1 [SOM:244] Mountain +1 [SOM:243] Mountain +1 [ZEN:244] Mountain +1 [SOM:242] Mountain +1 [ZEN:243] Mountain +1 [ZEN:242] Mountain +1 [ALA:243] Mountain +1 [ALA:242] Mountain +1 [M12:245] Mountain +1 [CHK:299] Mountain +1 [M12:243] Mountain +1 [M12:244] Mountain +1 [CHK:300] Mountain +1 [CHK:301] Mountain +1 [M12:242] Mountain +1 [CHK:302] Mountain +1 [10E:376] Mountain +1 [M11:243] Mountain +1 [M11:242] Mountain +1 [M11:245] Mountain +1 [M11:244] Mountain +1 [MBS:152] Mountain +1 [ALA:244] Mountain +1 [ALA:245] Mountain +1 [ZEN:263] Mountain +1 [ZEN:264] Mountain +1 [RAV:301] Mountain +1 [RAV:300] Mountain +1 [RAV:299] Mountain +1 [USG:345] Mountain +1 [USG:346] Mountain +1 [M10:242] Mountain +1 [RAV:302] Mountain +1 [USG:343] Mountain +1 [USG:344] Mountain +1 [ISD:259] Mountain +1 [ROE:244] Mountain +1 [ISD:261] Mountain +1 [ISD:260] Mountain +1 [ROE:241] Mountain +1 [ROE:242] Mountain +1 [ROE:243] Mountain +1 [MRD:301] Mountain +1 [MRD:300] Mountain +1 [MRD:299] Mountain +1 [M10:244] Mountain +1 [M10:243] Mountain +1 [M10:245] Mountain +1 [LRW:294] Mountain +1 [TMP:319] Mountain +1 [LRW:295] Mountain +1 [LRW:296] Mountain +1 [LRW:297] Mountain +1 [TMP:322] Mountain +1 [MRD:302] Mountain +1 [TMP:320] Mountain +1 [TMP:321] Mountain +1 [INV:345] Mountain +1 [INV:344] Mountain diff --git a/Mage.Tests/plugins/mage-player-ai.jar b/Mage.Tests/plugins/mage-player-ai.jar index 75a2856149bf10e2b1ee31adc9b41c273b863826..765ddf699e7f0f08c39f798a89f267a737171db6 100644 GIT binary patch delta 39643 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 delta 39657 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 diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/abilities/keywords/SoulbondKeywordTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/abilities/keywords/SoulbondKeywordTest.java index b1112ddf85..e1a668f951 100644 --- a/Mage.Tests/src/test/java/org/mage/test/cards/abilities/keywords/SoulbondKeywordTest.java +++ b/Mage.Tests/src/test/java/org/mage/test/cards/abilities/keywords/SoulbondKeywordTest.java @@ -350,6 +350,7 @@ public class SoulbondKeywordTest extends CardTestPlayerBase { assertAbilities(playerA, "Elite Vanguard", abilities); } + @Test public void testExileAndReturnBack() { //TODO: Soulbond + Soulshift Assert.assertTrue(false); diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/single/ArchangelsLightTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/single/ArchangelsLightTest.java index 4c53a17287..a8736273e3 100644 --- a/Mage.Tests/src/test/java/org/mage/test/cards/single/ArchangelsLightTest.java +++ b/Mage.Tests/src/test/java/org/mage/test/cards/single/ArchangelsLightTest.java @@ -26,7 +26,7 @@ public class ArchangelsLightTest extends CardTestPlayerBase { assertLife(playerB, 20); assertGraveyardCount(playerA, 1); assertGraveyardCount(playerA, "Archangel's Light", 1); - Assert.assertEquals(currentGame.getPlayer(playerA.getId()).getLibrary().size(), 66); + Assert.assertEquals(currentGame.getPlayer(playerA.getId()).getLibrary().size(), 77); } diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/single/SorinLordOfInnistradTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/single/SorinLordOfInnistradTest.java index 83f1b8bd02..6f0ca76cc3 100644 --- a/Mage.Tests/src/test/java/org/mage/test/cards/single/SorinLordOfInnistradTest.java +++ b/Mage.Tests/src/test/java/org/mage/test/cards/single/SorinLordOfInnistradTest.java @@ -61,10 +61,10 @@ public class SorinLordOfInnistradTest extends CardTestPlayerBase { assertLife(playerA, 23); assertLife(playerB, 20); assertPermanentCount(playerA, "Sorin, Lord of Innistrad", 0); - assertPermanentCount(playerA, "Craw Wurm", 1); assertPermanentCount(playerB, "Craw Wurm", 0); - assertPermanentCount(playerA, "Angel of Mercy", 1); assertPermanentCount(playerB, "Angel of Mercy", 0); + assertPermanentCount(playerA, "Craw Wurm", 1); + assertPermanentCount(playerA, "Angel of Mercy", 1); } } diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/targets/attacking/CondemnTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/targets/attacking/CondemnTest.java index e6639a8159..64d5593030 100644 --- a/Mage.Tests/src/test/java/org/mage/test/cards/targets/attacking/CondemnTest.java +++ b/Mage.Tests/src/test/java/org/mage/test/cards/targets/attacking/CondemnTest.java @@ -42,8 +42,9 @@ public class CondemnTest extends CardTestPlayerBase { assertPermanentCount(playerA, "Sejiri Merfolk", 0); assertLife(playerB, 20); assertLife(playerA, 21); + // check was put on top - Assert.assertEquals(currentGame.getPlayer(playerA.getId()).getLibrary().size(), 61); + Assert.assertEquals(72, currentGame.getPlayer(playerA.getId()).getLibrary().size()); } } diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/triggers/dies/BloodArtistTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/triggers/dies/BloodArtistTest.java index 93bc02c139..23bcf4605b 100644 --- a/Mage.Tests/src/test/java/org/mage/test/cards/triggers/dies/BloodArtistTest.java +++ b/Mage.Tests/src/test/java/org/mage/test/cards/triggers/dies/BloodArtistTest.java @@ -13,7 +13,7 @@ import org.mage.test.serverside.base.CardTestPlayerBase; public class BloodArtistTest extends CardTestPlayerBase { /** - * Tests that whenever Blood Artist goes to graveyard, it would trigget its ability. + * Tests that whenever Blood Artist goes to graveyard, it would trigger its ability. * Tests that after Blood Artist went to graveyard, his ability doesn't work anymore. */ @Test @@ -26,9 +26,9 @@ public class BloodArtistTest extends CardTestPlayerBase { addCard(Constants.Zone.BATTLEFIELD, playerB, "Bloodflow Connoisseur", 1); castSpell(1, Constants.PhaseStep.PRECOMBAT_MAIN, playerA, "Lightning Bolt", "Blood Artist"); - castSpell(1, Constants.PhaseStep.PRECOMBAT_MAIN, playerA, "Lightning Bolt", "Bloodflow Connoisseur"); + castSpell(1, Constants.PhaseStep.POSTCOMBAT_MAIN, playerA, "Lightning Bolt", "Bloodflow Connoisseur"); - setStopAt(1, Constants.PhaseStep.BEGIN_COMBAT); + setStopAt(1, Constants.PhaseStep.END_TURN); execute(); assertLife(playerA, 23); diff --git a/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java b/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java index 415bf3afef..b65d434543 100644 --- a/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java +++ b/Mage.Tests/src/test/java/org/mage/test/player/TestPlayer.java @@ -230,7 +230,9 @@ public class TestPlayer extends ComputerPlayer { for (UUID id: ability.getTargets().get(0).possibleTargets(ability.getSourceId(), ability.getControllerId(), game)) { MageObject object = game.getObject(id); if (object != null && object.getName().equals(t)) { - ability.getTargets().get(0).clearChosen(); + if (ability.getTargets().get(0).getNumberOfTargets() == 1) { + ability.getTargets().get(0).clearChosen(); + } ability.getTargets().get(0).addTarget(id, ability, game); break; } diff --git a/Mage/src/mage/abilities/Ability.java b/Mage/src/mage/abilities/Ability.java index 6114267fc2..b50a6acadb 100644 --- a/Mage/src/mage/abilities/Ability.java +++ b/Mage/src/mage/abilities/Ability.java @@ -28,9 +28,6 @@ package mage.abilities; -import java.io.Serializable; -import java.util.List; -import java.util.UUID; import mage.Constants.AbilityType; import mage.Constants.EffectType; import mage.Constants.Zone; @@ -47,6 +44,10 @@ import mage.game.Game; import mage.target.Target; import mage.target.Targets; +import java.io.Serializable; +import java.util.List; +import java.util.UUID; + /** * Practically everything in the game is started from an Ability. This * interface describes what an Ability is composed of at the highest level. @@ -356,8 +357,9 @@ public interface Ability extends Serializable { * Returns true if this abilities source is in the zone for the ability * * @param game + * @param checkLKI * @return */ - public boolean isInUseableZone(Game game); + public boolean isInUseableZone(Game game, boolean checkLKI); } diff --git a/Mage/src/mage/abilities/AbilityImpl.java b/Mage/src/mage/abilities/AbilityImpl.java index fc33a0df35..9674789650 100644 --- a/Mage/src/mage/abilities/AbilityImpl.java +++ b/Mage/src/mage/abilities/AbilityImpl.java @@ -458,12 +458,14 @@ public abstract class AbilityImpl> implements Ability { } @Override - public boolean isInUseableZone(Game game) { + public boolean isInUseableZone(Game game, boolean checkLKI) { // try LKI first - MageObject lkiTest = game.getLastKnownInformation(getSourceId(), zone); - if (lkiTest != null) { - return true; + if (checkLKI) { + MageObject lkiTest = game.getLastKnownInformation(getSourceId(), zone); + if (lkiTest != null) { + return true; + } } // check against current state diff --git a/Mage/src/mage/abilities/TriggeredAbilities.java b/Mage/src/mage/abilities/TriggeredAbilities.java index a751284666..94360f8235 100644 --- a/Mage/src/mage/abilities/TriggeredAbilities.java +++ b/Mage/src/mage/abilities/TriggeredAbilities.java @@ -28,13 +28,14 @@ package mage.abilities; -import java.util.HashMap; -import java.util.Map; -import java.util.UUID; import mage.MageObject; import mage.game.Game; import mage.game.events.GameEvent; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + /** * * @author BetaSteward_at_googlemail.com @@ -51,7 +52,7 @@ public class TriggeredAbilities extends HashMap { public void checkTriggers(GameEvent event, Game game) { for (TriggeredAbility ability: this.values()) { - if (ability.isInUseableZone(game)) { + if (ability.isInUseableZone(game, true)) { MageObject object = game.getLastKnownInformation(ability.getSourceId(), event.getZone()); if (object == null) { object = game.getObject(ability.getSourceId()); diff --git a/Mage/src/mage/abilities/common/DiesTriggeredAbility.java b/Mage/src/mage/abilities/common/DiesTriggeredAbility.java index b0798164e6..30e742ca58 100644 --- a/Mage/src/mage/abilities/common/DiesTriggeredAbility.java +++ b/Mage/src/mage/abilities/common/DiesTriggeredAbility.java @@ -28,15 +28,11 @@ package mage.abilities.common; -import java.util.UUID; - import mage.Constants; import mage.Constants.Zone; import mage.MageObject; import mage.abilities.effects.Effect; -import mage.cards.Card; import mage.game.Game; -import mage.game.events.GameEvent; /** * @@ -59,7 +55,7 @@ public class DiesTriggeredAbility extends ZoneChangeTriggeredAbility effects = new ArrayList(); for (RequirementEffect effect: requirementEffects) { Ability ability = requirementEffects.getAbility(effect.getId()); - if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game)) { + if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game, false)) { if (effect.applies(permanent, ability, game)) effects.add(effect); } @@ -175,7 +175,7 @@ public class ContinuousEffects implements Serializable { List effects = new ArrayList(); for (RestrictionEffect effect: restrictionEffects) { Ability ability = restrictionEffects.getAbility(effect.getId()); - if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game)) { + if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game, false)) { if (effect.applies(permanent, ability, game)) effects.add(effect); } @@ -198,7 +198,7 @@ public class ContinuousEffects implements Serializable { //get all applicable transient Replacement effects for (ReplacementEffect effect: replacementEffects) { Ability ability = replacementEffects.getAbility(effect.getId()); - if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game)) { + if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game, false)) { if (effect.getDuration() != Duration.OneUse || !effect.isUsed()) { if (effect.applies(event, ability, game)) { replaceEffects.add(effect); @@ -208,7 +208,7 @@ public class ContinuousEffects implements Serializable { } for (PreventionEffect effect: preventionEffects) { Ability ability = preventionEffects.getAbility(effect.getId()); - if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game)) { + if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game, false)) { if (effect.getDuration() != Duration.OneUse || !effect.isUsed()) { if (effect.applies(event, ability, game)) { replaceEffects.add(effect); @@ -230,7 +230,7 @@ public class ContinuousEffects implements Serializable { for (CostModificationEffect effect: costModificationEffects) { Ability ability = costModificationEffects.getAbility(effect.getId()); - if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game)) { + if (!(ability instanceof StaticAbility) || ability.isInUseableZone(game, false)) { if (effect.getDuration() != Duration.OneUse || !effect.isUsed()) { costEffects.add(effect); } diff --git a/Mage/src/mage/game/GameImpl.java b/Mage/src/mage/game/GameImpl.java index 88b3a072d3..dd3869c905 100644 --- a/Mage/src/mage/game/GameImpl.java +++ b/Mage/src/mage/game/GameImpl.java @@ -640,7 +640,7 @@ public abstract class GameImpl> implements Game, Serializa if (checkStateAndTriggered()) { applyEffects(); } - resetLKI(); + //resetLKI(); applyEffects(); if (isPaused() || isGameOver()) return; // resetPassed should be called if player performs any action @@ -660,7 +660,7 @@ public abstract class GameImpl> implements Game, Serializa state.getPlayers().resetPassed(); fireUpdatePlayersEvent(); state.getRevealed().reset(); - resetLKI(); + //resetLKI(); break; } else { //removeBookmark(bookmark); diff --git a/Mage/src/mage/game/GameState.java b/Mage/src/mage/game/GameState.java index a3e18526e5..00a7e48e03 100644 --- a/Mage/src/mage/game/GameState.java +++ b/Mage/src/mage/game/GameState.java @@ -28,16 +28,6 @@ package mage.game; -import mage.abilities.TriggeredAbility; -import mage.game.events.GameEvent; -import mage.game.stack.SpellStack; -import java.io.Serializable; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.UUID; import mage.Constants.Zone; import mage.abilities.*; import mage.abilities.effects.ContinuousEffect; @@ -48,11 +38,10 @@ import mage.choices.Choice; import mage.game.combat.Combat; import mage.game.combat.CombatGroup; import mage.game.command.Command; -import mage.game.events.GameEvent.EventType; -import mage.game.events.ZoneChangeEvent; +import mage.game.events.GameEvent; import mage.game.permanent.Battlefield; import mage.game.permanent.Permanent; -import mage.game.permanent.PermanentCard; +import mage.game.stack.SpellStack; import mage.game.stack.StackObject; import mage.game.turn.Turn; import mage.game.turn.TurnMods; @@ -64,6 +53,9 @@ import mage.util.Copyable; import mage.watchers.Watcher; import mage.watchers.Watchers; +import java.io.Serializable; +import java.util.*; + /** * * @author BetaSteward_at_googlemail.com diff --git a/Mage/src/mage/game/stack/StackAbility.java b/Mage/src/mage/game/stack/StackAbility.java index 7125fd45b2..94cd3e9fc9 100644 --- a/Mage/src/mage/game/stack/StackAbility.java +++ b/Mage/src/mage/game/stack/StackAbility.java @@ -28,37 +28,32 @@ package mage.game.stack; -import java.util.ArrayList; import mage.Constants.AbilityType; -import mage.abilities.Mode; -import mage.abilities.Modes; -import mage.abilities.costs.AlternativeCost; -import mage.abilities.costs.Cost; -import mage.abilities.costs.Costs; -import mage.abilities.costs.mana.ManaCost; -import mage.abilities.effects.Effect; -import mage.abilities.effects.Effects; -import mage.choices.Choice; -import mage.choices.Choices; -import mage.game.*; -import java.util.List; -import java.util.UUID; import mage.Constants.CardType; import mage.Constants.EffectType; import mage.Constants.Zone; import mage.MageInt; import mage.ObjectColor; -import mage.abilities.Abilities; -import mage.abilities.AbilitiesImpl; -import mage.abilities.Ability; -import mage.abilities.StateTriggeredAbility; +import mage.abilities.*; +import mage.abilities.costs.AlternativeCost; +import mage.abilities.costs.Cost; +import mage.abilities.costs.Costs; import mage.abilities.costs.CostsImpl; +import mage.abilities.costs.mana.ManaCost; import mage.abilities.costs.mana.ManaCosts; import mage.abilities.costs.mana.ManaCostsImpl; -import mage.game.events.GameEvent; +import mage.abilities.effects.Effect; +import mage.abilities.effects.Effects; +import mage.choices.Choice; +import mage.choices.Choices; +import mage.game.Game; import mage.target.Target; import mage.target.Targets; +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + /** * * @author BetaSteward_at_googlemail.com @@ -329,7 +324,7 @@ public class StackAbility implements StackObject, Ability { } @Override - public boolean isInUseableZone(Game game) { + public boolean isInUseableZone(Game game, boolean checkLKI) { throw new UnsupportedOperationException("Not supported yet."); } }