private void SetAnimationInternal(Animation animation, bool loop, QueueEntry entry) { previous = null; if (current != null) { if (currentQueueEntry != null) currentQueueEntry.OnEnd(this); if (End != null) End(this, EventArgs.Empty); if (animation != null) { mixDuration = data.GetMix(current, animation); if (mixDuration > 0) { mixTime = 0; previous = current; previousTime = currentTime; previousLoop = currentLoop; } } } current = animation; currentLoop = loop; currentTime = 0; currentLastTime = 0; currentQueueEntry = entry; if (currentQueueEntry != null) currentQueueEntry.OnStart(this); if (Start != null) Start(this, EventArgs.Empty); }