* Rally the Ancestors - Fixed that the delayed exile effect still did move the card if it left the battlefield meanwhile.

This commit is contained in:
LevelX2 2015-07-20 17:43:20 +02:00
parent fcd74a65a9
commit fd08db3b2b
2 changed files with 17 additions and 16 deletions

View file

@ -34,8 +34,8 @@ import mage.abilities.DelayedTriggeredAbility;
import mage.abilities.common.delayed.AtTheBeginOfYourNextUpkeepDelayedTriggeredAbility;
import mage.abilities.effects.Effect;
import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.ExileTargetEffect;
import mage.abilities.effects.common.ExileSpellEffect;
import mage.abilities.effects.common.ExileTargetEffect;
import mage.cards.Card;
import mage.cards.CardImpl;
import mage.constants.CardType;
@ -101,9 +101,9 @@ class RallyTheAncestorsEffect extends OneShotEffect {
Set<Card> cards = player.getGraveyard().getCards(filter, game);
for (Card card : cards) {
if (card != null) {
player.putOntoBattlefieldWithInfo(card, game, Zone.GRAVEYARD, source.getSourceId());
if (player.putOntoBattlefieldWithInfo(card, game, Zone.GRAVEYARD, source.getSourceId())) {
Effect exileEffect = new ExileTargetEffect("Exile those creatures at the beginning of your next upkeep");
exileEffect.setTargetPointer(new FixedTarget(card.getId()));
exileEffect.setTargetPointer(new FixedTarget(card.getId(), card.getZoneChangeCounter(game)));
DelayedTriggeredAbility delayedAbility = new AtTheBeginOfYourNextUpkeepDelayedTriggeredAbility(exileEffect);
delayedAbility.setSourceId(source.getSourceId());
delayedAbility.setControllerId(source.getControllerId());
@ -111,6 +111,7 @@ class RallyTheAncestorsEffect extends OneShotEffect {
game.addDelayedTriggeredAbility(delayedAbility);
}
}
}
return true;
}
return false;