From 95e626752b0c94e63fb91adfb11402b0b86fafcb Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Mon, 21 Sep 2015 16:12:33 +0200 Subject: [PATCH] * Greenwarden of Murasa - Fixed that it was possible to return Greenwarden of Murasa itself with its dies triggered ability. --- .../sets/battleforzendikar/GreenwardenOfMurasa.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/Mage.Sets/src/mage/sets/battleforzendikar/GreenwardenOfMurasa.java b/Mage.Sets/src/mage/sets/battleforzendikar/GreenwardenOfMurasa.java index 697845c16a6..84126d2ce39 100644 --- a/Mage.Sets/src/mage/sets/battleforzendikar/GreenwardenOfMurasa.java +++ b/Mage.Sets/src/mage/sets/battleforzendikar/GreenwardenOfMurasa.java @@ -33,10 +33,12 @@ import mage.MageObject; import mage.abilities.Ability; import mage.abilities.common.DiesTriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.effects.Effect; import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.common.ExileSourceEffect; import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; import mage.abilities.effects.common.ReturnToHandTargetEffect; +import mage.cards.Card; import mage.cards.CardImpl; import mage.constants.CardType; import mage.constants.Outcome; @@ -44,6 +46,7 @@ import mage.constants.Rarity; import mage.game.Game; import mage.players.Player; import mage.target.common.TargetCardInYourGraveyard; +import mage.target.targetpointer.FixedTarget; /** * @@ -99,10 +102,15 @@ class GreenwardenOfMurasaEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { Player controller = game.getPlayer(source.getControllerId()); MageObject sourceObject = game.getObject(source.getSourceId()); - if (controller != null && sourceObject != null) { + Card targetCard = game.getCard(getTargetPointer().getFirst(game, source)); + if (controller != null && sourceObject != null && targetCard != null) { if (controller.chooseUse(outcome, "Exile " + sourceObject.getLogName() + " to return card from your graveyard to your hand?", source, game)) { new ExileSourceEffect().apply(game, source); - return new ReturnToHandTargetEffect().apply(game, source); + // Setting the fixed target prevents to return Greenwarden of Murasa itself (becuase it's exiled meanwhile), + // but of course you can target it as the ability triggers I guess + Effect effect = new ReturnToHandTargetEffect(); + effect.setTargetPointer(new FixedTarget(targetCard.getId(), targetCard.getZoneChangeCounter(game))); + return effect.apply(game, source); } return true; }