diff --git a/Mage.Sets/src/mage/cards/s/SunbirdsInvocation.java b/Mage.Sets/src/mage/cards/s/SunbirdsInvocation.java index e451faaa090..77e7a088f6c 100644 --- a/Mage.Sets/src/mage/cards/s/SunbirdsInvocation.java +++ b/Mage.Sets/src/mage/cards/s/SunbirdsInvocation.java @@ -92,7 +92,7 @@ class SunbirdsInvocationTriggeredAbility extends SpellCastControllerTriggeredAbi if (spell != null && spell.getFromZone() == Zone.HAND) { if (spell.getCard() != null) { for (Effect effect : getEffects()) { - effect.setTargetPointer(new FixedTarget(spell.getId(), spell.getZoneChangeCounter(game))); + effect.setTargetPointer(new FixedTarget(spell.getId())); } return true; } @@ -125,8 +125,16 @@ class SunbirdsInvocationEffect extends OneShotEffect { if (controller == null || sourceObject == null) { return false; } + Spell spell = game.getStack().getSpell(this.getTargetPointer().getFirst(game, source)); + int xValue = 0; + if (spell == null) { + spell = (Spell) game.getLastKnownInformation(this.getTargetPointer().getFirst(game, source), Zone.STACK); + } + if (spell == null) { + return false; + } + xValue = spell.getConvertedManaCost(); Cards cards = new CardsImpl(); - int xValue = game.getLastKnownInformation(this.getTargetPointer().getFirst(game, source), Zone.STACK).getConvertedManaCost(); cards.addAll(controller.getLibrary().getTopCards(game, xValue)); if (!cards.isEmpty()) { controller.revealCards(sourceObject.getIdName(), cards, game); @@ -138,7 +146,7 @@ class SunbirdsInvocationEffect extends OneShotEffect { if (controller.chooseTarget(Outcome.PlayForFree, cards, target, source, game)) { Card card = cards.get(target.getFirstTarget(), game); if (card != null) { - if (controller.chooseUse(outcome, "Do you wish to cast " + card.getName(), source, game)) { + if (controller.chooseUse(outcome, "Cast " + card.getLogName() + " without paying its mana cost?", source, game)) { controller.cast(card.getSpellAbility(), game, true); cards.remove(card); }