From 2106554bdba68b3e668f47e3e4e2264f80abd6e7 Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Sat, 26 Jul 2014 18:01:46 +0200 Subject: [PATCH] * Changed two play_land replacement effects to rule modifying effects. --- .../src/mage/sets/magic2015/AggressiveMining.java | 10 +++------- Mage.Sets/src/mage/sets/odyssey/PardicMiner.java | 13 +++++++++---- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/Mage.Sets/src/mage/sets/magic2015/AggressiveMining.java b/Mage.Sets/src/mage/sets/magic2015/AggressiveMining.java index 072cc9a6847..704916383b7 100644 --- a/Mage.Sets/src/mage/sets/magic2015/AggressiveMining.java +++ b/Mage.Sets/src/mage/sets/magic2015/AggressiveMining.java @@ -33,6 +33,7 @@ import mage.abilities.common.LimitedTimesPerTurnActivatedAbility; import mage.abilities.common.SimpleStaticAbility; import mage.abilities.costs.Cost; import mage.abilities.costs.common.SacrificeTargetCost; +import mage.abilities.effects.ContinuousRuleModifiyingEffectImpl; import mage.abilities.effects.ReplacementEffectImpl; import mage.abilities.effects.common.DrawCardSourceControllerEffect; import mage.cards.CardImpl; @@ -76,7 +77,7 @@ public class AggressiveMining extends CardImpl { } } -class AggressiveMiningEffect extends ReplacementEffectImpl { +class AggressiveMiningEffect extends ContinuousRuleModifiyingEffectImpl { public AggressiveMiningEffect() { super(Duration.WhileOnBattlefield, Outcome.Detriment); @@ -98,12 +99,7 @@ class AggressiveMiningEffect extends ReplacementEffectImpl { } @Override - public boolean replaceEvent(GameEvent event, Ability source, Game game) { - return true; - } - - @Override - public boolean applies(GameEvent event, Ability source, Game game) { + public boolean applies(GameEvent event, Ability source, boolean checkPlayableMode, Game game) { return event.getType().equals(GameEvent.EventType.PLAY_LAND) && event.getPlayerId().equals(source.getControllerId()); } diff --git a/Mage.Sets/src/mage/sets/odyssey/PardicMiner.java b/Mage.Sets/src/mage/sets/odyssey/PardicMiner.java index d168232283e..0e4af5d9c02 100644 --- a/Mage.Sets/src/mage/sets/odyssey/PardicMiner.java +++ b/Mage.Sets/src/mage/sets/odyssey/PardicMiner.java @@ -33,6 +33,7 @@ import mage.MageObject; import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.SacrificeSourceCost; +import mage.abilities.effects.ContinuousRuleModifiyingEffectImpl; import mage.abilities.effects.ReplacementEffectImpl; import mage.cards.CardImpl; import mage.constants.CardType; @@ -75,7 +76,7 @@ public class PardicMiner extends CardImpl { } } -class PardicMinerEffect extends ReplacementEffectImpl { +class PardicMinerEffect extends ContinuousRuleModifiyingEffectImpl { public PardicMinerEffect() { super(Duration.EndOfTurn, Outcome.Detriment); @@ -97,12 +98,16 @@ class PardicMinerEffect extends ReplacementEffectImpl { } @Override - public boolean replaceEvent(GameEvent event, Ability source, Game game) { - return true; + public String getInfoMessage(Ability source, Game game) { + MageObject mageObject = game.getObject(source.getSourceId()); + if (mageObject != null) { + return "You can't play lands this turn (" + mageObject.getLogName() + ")."; + } + return null; } @Override - public boolean applies(GameEvent event, Ability source, Game game) { + public boolean applies(GameEvent event, Ability source, boolean checkPlayableMode, Game game) { if (event.getType() == GameEvent.EventType.PLAY_LAND && event.getPlayerId().equals(source.getFirstTarget())) { return true; }