private void AdvanceTurn() { if (_remainingDuration < 0) { BattleEvent.Unsubscribe(this); return; } _remainingDuration--; }
public void Apply(Member source, Target target) { new QueueEffect(_effect).Apply(source, target); BattleEvent.Subscribe <FeedCardResolutionStarted>( (msg) => { if (_feedType.ToString().Equals(msg.CardFeedType)) { _effect.Apply(source, target); } BattleEvent.Unsubscribe(this); }, this); }
public void Apply(Member source, Target target) { Effect effect = new UnqueueAfterExceuteEffect(_effect); BattleEvent.Publish(new AddEffectToQueue(effect)); BattleEvent.Subscribe <EffectApplied>( (msg) => { if (msg.Effect.Equals(_effect)) { BattleEvent.Publish(new RemoveEffectFromQueue(msg.Effect)); BattleEvent.Unsubscribe(this); } }, this); }
private void NextCard() { _active = true; BattleEvent.Unsubscribe(this); }
void OnDisable() { BattleEvent.Unsubscribe(this); }
private void AdvanceTurn() { _active = true; BattleEvent.Unsubscribe(this); }
private void OnDisable() { BattleEvent.Unsubscribe(this); setupAfter.Unsubscribe(this); }
private void OnDisable() => BattleEvent.Unsubscribe(this);
void Execute(Member source, Target target) { _effect.Apply(source, target); BattleEvent.Unsubscribe(this); }