public override void Play() { foreach (var transition in _transitions) { transition.Reset(); AnimationSystem.Attach(transition); } }
private void PlayNext() { if (_queue.Any()) { var transition = _queue.Dequeue(); transition.Reset(); transition.TransitionComplete += (sender, args) => PlayNext(); AnimationSystem.Attach(transition); } }
internal SequenceAnimation(AnimationSystem animationSystem, T target) : base(animationSystem, target) { _queue = new Queue <Transition>(); }
public ParallelAnimation(AnimationSystem animationSystem, T target) : base(animationSystem, target) { _transitions = new List <Transition>(); }