suspend changes, suspended cards which would have a counter removed are checked for time counters and cast if no time counters are present as a statebased effect, as per MTG rules..

case changes, "Time" != "time" aparently our parser now strings all counters as lower case...so "Charge" is no longer string "Charge" and can not be compared to "Charge"..not sure if that makes any sense :) anyways removel of time counters on exiled cards by triggers or effects now happen correctly.
This commit is contained in:
omegablast2002@yahoo.com
2011-02-27 15:19:02 +00:00
parent f9c38bee8e
commit d8450548c7
3 changed files with 12 additions and 9 deletions

View File

@@ -551,14 +551,8 @@ int MTGSuspendRule::receiveEvent(WEvent *e)
{
MTGCardInstance * card = z->cards[i];
if (card->suspended && card->counters->hasCounter("Time",0,0))
card->counters->removeCounter("Time",0,0);
if (card->suspended && !card->counters->hasCounter("Time",0,0))
{
MTGCardInstance * copy = p->game->putInZone(card, card->currentZone, p->game->stack);
Spell * spell = game->mLayers->stackLayer()->addSpell(copy, game->targetChooser, NULL,1, 0);
game->targetChooser = NULL;
}
if (card->suspended && card->counters->hasCounter("time",0,0))
card->counters->removeCounter("time",0,0);
}
return 1;
}
@@ -599,7 +593,7 @@ int MTGSuspendRule::reactToClick(MTGCardInstance * card)
player->game->putInZone(card, card->currentZone, player->game->exile);
card->next->suspended = true;
for(signed int i = 0; i < card->suspendedTime;i++)
card->next->counters->addCounter("Time",0,0);
card->next->counters->addCounter("time",0,0);
return 1;
}