diff --git a/projects/mtg/src/AllAbilities.cpp b/projects/mtg/src/AllAbilities.cpp index 5de60b648..2c78f1dbe 100644 --- a/projects/mtg/src/AllAbilities.cpp +++ b/projects/mtg/src/AllAbilities.cpp @@ -501,7 +501,7 @@ int AAFizzler::resolve() { ActionStack * stack = game->mLayers->stackLayer(); //the next section helps Ai correctly recieve its targets for this effect - if(!target) + if(!target && source->target) { //ai is casting a spell from it's hand to fizzle. target = stack->getAt(stack->getActionElementFromCard(source->target)); @@ -515,7 +515,7 @@ int AAFizzler::resolve() MTGCardInstance* sCard = (MTGCardInstance*)sTarget->source; if(!sCard || !sTarget || sCard->has(Constants::NOFIZZLE)) return 0; - game->mLayers->stackLayer()->Fizzle(sTarget); + stack->Fizzle(sTarget); return 1; } diff --git a/projects/mtg/src/MTGAbility.cpp b/projects/mtg/src/MTGAbility.cpp index 95126d0c0..707df47cb 100644 --- a/projects/mtg/src/MTGAbility.cpp +++ b/projects/mtg/src/MTGAbility.cpp @@ -1956,8 +1956,16 @@ MTGAbility * AbilityFactory::parseMagicLine(string s, int id, Spell * spell, MTG newToughness = pt[1]; ptFound = true; } - string sabilities = (becomesParameters.size() > 2) ? becomesParameters[2] : ""; - + string sabilities = ""; + if(becomesParameters.size() > 2) + { + for(unsigned int i = 2;i < becomesParameters.size();i++) + { + sabilities.append(becomesParameters[i].c_str()); + if(i+1 < becomesParameters.size()) + sabilities.append(","); + } + } if (oneShot || forceUEOT) return NEW ATransformerInstant(id, card, target, stypes, sabilities,newPower,ptFound,newToughness,ptFound,vector(),false,forceFOREVER);