Cleanup of some Trigger code

This commit is contained in:
wagic.the.homebrew
2011-07-28 13:51:42 +00:00
parent 2e5222bf5d
commit 9631171ad1
3 changed files with 95 additions and 211 deletions

View File

@@ -3839,6 +3839,28 @@ ostream& TriggeredAbility::toString(ostream& out) const
return MTGAbility::toString(out) << ")";
}
// Trigger
Trigger::Trigger(int id, MTGCardInstance * source, bool once, TargetChooser * _tc): TriggeredAbility(id, source), mOnce(once), mActiveTrigger(true)
{
tc = _tc;
}
int Trigger::triggerOnEvent(WEvent * event) {
if(!mActiveTrigger)
return 0;
//Abilities don't work if the card is phased
if(source->isPhased) return 0;
if (!triggerOnEventImpl(event))
return 0;
if(mOnce && mActiveTrigger)
mActiveTrigger = false;
return 1;
}
//
InstantAbility::InstantAbility(int _id, MTGCardInstance * source) :
MTGAbility(_id, source)