From 684e76e9bf947c5937bf5cf14abc5c354756e23d Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Mon, 26 Jan 2015 16:08:35 +0100 Subject: [PATCH] * Soulfire Grand Master - Fixed possible Cast exception. --- .../src/mage/sets/fatereforged/SoulfireGrandMaster.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Mage.Sets/src/mage/sets/fatereforged/SoulfireGrandMaster.java b/Mage.Sets/src/mage/sets/fatereforged/SoulfireGrandMaster.java index 658d9438ef1..1d7bfdb4ee2 100644 --- a/Mage.Sets/src/mage/sets/fatereforged/SoulfireGrandMaster.java +++ b/Mage.Sets/src/mage/sets/fatereforged/SoulfireGrandMaster.java @@ -193,11 +193,11 @@ class SoulfireGrandMasterCastFromHandReplacementEffect extends ReplacementEffect @Override public boolean replaceEvent(GameEvent event, Ability source, Game game) { - Spell sourceSpell = (Spell) game.getObject(spellId); - if (sourceSpell != null && sourceSpell.isCopiedSpell()) { + MageObject mageObject = game.getObject(spellId); + if (mageObject == null || !(mageObject instanceof Spell) || ((Spell)mageObject).isCopiedSpell()) { return false; } else { - Card sourceCard = (Card) game.getCard(spellId); + Card sourceCard = game.getCard(spellId); if (sourceCard != null) { Player player = game.getPlayer(sourceCard.getOwnerId()); if (player != null) { @@ -218,7 +218,7 @@ class SoulfireGrandMasterCastFromHandReplacementEffect extends ReplacementEffect public boolean applies(GameEvent event, Ability source, Game game) { //Something hit the stack from the hand, see if its a spell with this ability. ZoneChangeEvent zEvent = (ZoneChangeEvent) event; - if (spellId == null && + if (spellId == null && // because this effect works only once, spellId has to be null here zEvent.getFromZone() == Zone.HAND && zEvent.getToZone() == Zone.STACK && event.getPlayerId().equals(source.getControllerId())) {