From 80ed481de579b07c90b59fa5ab078b2b3da68a8c Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Tue, 27 Aug 2013 15:18:45 +0200 Subject: [PATCH] * Summoning Trap - Fixed error that occured if countered with Remand and fixed check that the counter was cast by opponent. --- .../mage/sets/zendikar/LullmageMentor.java | 3 +++ .../src/mage/sets/zendikar/SummoningTrap.java | 19 +++++++++++++++---- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/Mage.Sets/src/mage/sets/zendikar/LullmageMentor.java b/Mage.Sets/src/mage/sets/zendikar/LullmageMentor.java index debe1234dd6..25613b565d5 100644 --- a/Mage.Sets/src/mage/sets/zendikar/LullmageMentor.java +++ b/Mage.Sets/src/mage/sets/zendikar/LullmageMentor.java @@ -163,6 +163,9 @@ class CastedSpellsWithSpellTarget extends WatcherImpl { if (condition == true) {// no need to check - condition has already occured return; } - if (event.getType() == EventType.COUNTERED - && game.getStack().getStackObject(event.getTargetId()).getCardType().contains(CardType.CREATURE) - && game.getOpponents(controllerId).contains(event.getPlayerId())) { - condition = true; + if (event.getType() == EventType.COUNTERED) { + StackObject stackObject = game.getStack().getStackObject(event.getTargetId()); + if (stackObject == null) { + stackObject = (StackObject) game.getLastKnownInformation(event.getTargetId(), Zone.STACK); + } + StackObject counterObject = game.getStack().getStackObject(event.getSourceId()); + if (counterObject == null) { + counterObject = (StackObject) game.getLastKnownInformation(event.getSourceId(), Zone.STACK); + } + if (stackObject != null && counterObject != null + && stackObject.getCardType().contains(CardType.CREATURE) + && game.getOpponents(controllerId).contains(counterObject.getControllerId())) { + condition = true; + } } } }