public override void Update() { DelayUpdate(delegate { GetFieldWatcher().Reset(); GetFieldWatcher().AddCardList(GetSoulZone()); GetFieldWatcher().AddCardList(GetDropZone()); GetFieldWatcher().Filter(delegate(Card c) { return c.cardID == CardIdentifier.BLASTER_BLADE_LIBERATOR; }); GetFieldWatcher().SetActionToPerform(delegate(Card c) { cardMoving = c; if(c._Coord == CardCoord.SOUL) { FromSoulToDeck(c); bCallPerformActionFunction = true; } else if(c._Coord == CardCoord.DROP) { List<CardIdentifier> list = new List<CardIdentifier>(); FromDropToDeck(list); } GetFieldWatcher().RemoveFromList(c); GetFieldWatcher().Close(); }); GetFieldWatcher().Open(); }); FromDropToDeckUpdate(delegate { bCallPerformActionFunction = true; }); CallFromDeckUpdate(delegate { EndEffect(); }); if(bCallPerformActionFunction && (cardMoving != null && !cardMoving.AnimationOngoing())) { bCallPerformActionFunction = false; PerformNextAction(); } }
public void Presenter_Update() { DelayUpdate(delegate { _AuxCard = Game.SoulCharge(); _AuxBool = false; }); if(_AuxBool && !_AuxCard.AnimationOngoing()) { _AuxBool = false; Game.SoulCharge(); EndEffect(); } }