From 3b7991a5f0be29f1a8b40947f32ee96cbeb3659b Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Sat, 12 Jul 2014 14:45:37 +0200 Subject: [PATCH] * Astral Slide - Fixed that the exiled creature did not return at next end step. --- Mage.Sets/src/mage/sets/onslaught/AstralSlide.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Mage.Sets/src/mage/sets/onslaught/AstralSlide.java b/Mage.Sets/src/mage/sets/onslaught/AstralSlide.java index bea92b7d387..b18643abe50 100644 --- a/Mage.Sets/src/mage/sets/onslaught/AstralSlide.java +++ b/Mage.Sets/src/mage/sets/onslaught/AstralSlide.java @@ -28,6 +28,7 @@ package mage.sets.onslaught; import java.util.UUID; +import mage.MageObject; import mage.abilities.Ability; import mage.abilities.common.CycleAllTriggeredAbility; import mage.abilities.common.delayed.AtEndOfTurnDelayedTriggeredAbility; @@ -86,12 +87,14 @@ class AstralSlideEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { Player controller = game.getPlayer(source.getControllerId()); - if (controller != null) { + MageObject sourceObject = game.getObject(source.getSourceId()); + if (controller != null && sourceObject != null) { Permanent permanent = game.getPermanent(source.getFirstTarget()); if (permanent != null) { - if (controller.moveCardToExileWithInfo(permanent, null, "", source.getSourceId(), game, Zone.BATTLEFIELD)) { + UUID exileId = UUID.randomUUID(); + if (controller.moveCardToExileWithInfo(permanent, exileId, sourceObject.getLogName(), source.getSourceId(), game, Zone.BATTLEFIELD)) { //create delayed triggered ability - AtEndOfTurnDelayedTriggeredAbility delayedAbility = new AtEndOfTurnDelayedTriggeredAbility(new ReturnFromExileEffect(source.getSourceId(), Zone.BATTLEFIELD, false)); + AtEndOfTurnDelayedTriggeredAbility delayedAbility = new AtEndOfTurnDelayedTriggeredAbility(new ReturnFromExileEffect(exileId, Zone.BATTLEFIELD, false)); delayedAbility.setSourceId(source.getSourceId()); delayedAbility.setControllerId(source.getControllerId()); game.addDelayedTriggeredAbility(delayedAbility);