diff --git a/Mage.Sets/src/mage/sets/dragonsmaze/NotionThief.java b/Mage.Sets/src/mage/sets/dragonsmaze/NotionThief.java index b7491e9e01..ab5a78a30d 100644 --- a/Mage.Sets/src/mage/sets/dragonsmaze/NotionThief.java +++ b/Mage.Sets/src/mage/sets/dragonsmaze/NotionThief.java @@ -121,7 +121,7 @@ class NotionThiefReplacementEffect extends ReplacementEffectImpl { return true; } } else { - // not an opponents players draw step, always replace draw + // not an opponents players draw step, always replace the draw return true; } } diff --git a/Mage.Sets/src/mage/sets/magicorigins/AlhammarretsArchive.java b/Mage.Sets/src/mage/sets/magicorigins/AlhammarretsArchive.java index 83343fd4f7..4543f0c49c 100644 --- a/Mage.Sets/src/mage/sets/magicorigins/AlhammarretsArchive.java +++ b/Mage.Sets/src/mage/sets/magicorigins/AlhammarretsArchive.java @@ -35,6 +35,7 @@ import mage.cards.CardImpl; import mage.constants.CardType; import mage.constants.Duration; import mage.constants.Outcome; +import mage.constants.PhaseStep; import mage.constants.Rarity; import mage.constants.Zone; import mage.game.Game; @@ -46,7 +47,6 @@ import mage.watchers.common.CardsDrawnDuringDrawStepWatcher; * * @author fireshoes */ - public class AlhammarretsArchive extends CardImpl { public AlhammarretsArchive(UUID ownerId) { @@ -56,7 +56,7 @@ public class AlhammarretsArchive extends CardImpl { // If you would gain life, you gain twice that much life instead. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new AlhammarretsArchiveEffect())); - + // If you draw a card except the first one you draw in each of your draw steps, draw two cards instead. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new AlhammarretsArchiveReplacementEffect()), new CardsDrawnDuringDrawStepWatcher()); } @@ -138,24 +138,23 @@ class AlhammarretsArchiveReplacementEffect extends ReplacementEffectImpl { } return true; } - + @Override public boolean checksEventType(GameEvent event, Game game) { return event.getType() == GameEvent.EventType.DRAW_CARD; - } + } @Override public boolean applies(GameEvent event, Ability source, Game game) { - if (event.getPlayerId().equals(source.getControllerId())) { - if (game.getActivePlayerId().equals(event.getPlayerId())) { - CardsDrawnDuringDrawStepWatcher watcher = (CardsDrawnDuringDrawStepWatcher) game.getState().getWatchers().get("CardsDrawnDuringDrawStep"); - if (watcher != null && watcher.getAmountCardsDrawn(event.getPlayerId()) > 0) { - return true; - } - } else { + if (game.getActivePlayerId().equals(event.getPlayerId()) && game.getPhase().getStep().getType().equals(PhaseStep.DRAW)) { + CardsDrawnDuringDrawStepWatcher watcher = (CardsDrawnDuringDrawStepWatcher) game.getState().getWatchers().get("CardsDrawnDuringDrawStep"); + if (watcher != null && watcher.getAmountCardsDrawn(event.getPlayerId()) > 0) { return true; } + } else { + return true; } + return false; } -} \ No newline at end of file +} diff --git a/Mage.Sets/src/mage/sets/mirrodin/TowerOfFortunes.java b/Mage.Sets/src/mage/sets/mirrodin/TowerOfFortunes.java index d3d80c565e..47e44ae947 100644 --- a/Mage.Sets/src/mage/sets/mirrodin/TowerOfFortunes.java +++ b/Mage.Sets/src/mage/sets/mirrodin/TowerOfFortunes.java @@ -25,19 +25,17 @@ * authors and should not be interpreted as representing official policies, either expressed * or implied, of BetaSteward_at_googlemail.com. */ - package mage.sets.mirrodin; import java.util.UUID; - -import mage.constants.CardType; -import mage.constants.Rarity; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.GenericManaCost; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.cards.CardImpl; +import mage.constants.CardType; +import mage.constants.Rarity; import mage.constants.Zone; /** @@ -46,15 +44,17 @@ import mage.constants.Zone; */ public class TowerOfFortunes extends CardImpl { - public TowerOfFortunes (UUID ownerId) { + public TowerOfFortunes(UUID ownerId) { super(ownerId, 267, "Tower of Fortunes", Rarity.RARE, new CardType[]{CardType.ARTIFACT}, "{4}"); this.expansionSetCode = "MRD"; + + // {8}, {T} : Draw four cards. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(4), new GenericManaCost(8)); ability.addCost(new TapSourceCost()); this.addAbility(ability); } - public TowerOfFortunes (final TowerOfFortunes card) { + public TowerOfFortunes(final TowerOfFortunes card) { super(card); }