Example #1
0
        public void Update(float deltaTime)
        {
            int count = m_Active.Count;

            for (int x = 0; x < count; ++x)
            {
                ITween        tween    = m_Active[x];
                TweenProgress progress = tween.Update(deltaTime);
                if (progress.Finished)
                {
                    m_Active.RemoveAt(x);
                    --x;
                    --count;
                }
            }
        }
Example #2
0
        public TweenProgress Update(float deltaTime)
        {
            if (m_State == ETweenState.Pending)
            {
                SetStarted();
            }

            if (m_State == ETweenState.Started)
            {
                TweenProgress progress = OnUpdate(deltaTime);
                if (progress.Finished)
                {
                    SetFinished();
                }
                return(progress);
            }
            throw new InvalidOperationException();
        }
Example #3
0
 public TweenProgress Update(float deltaTime)
 {
     if (m_Tweens.Count > 0)
     {
         TweenProgress progress = OnUpdate(deltaTime * Speed);
         if (progress.Finished)
         {
             if (m_Tweens.Count > 0)
             {
                 throw new Exception();
             }
         }
         if (progress.Finished)
         {
             OnFinished.Invoke();
         }
         return(progress);
     }
     return(new TweenProgress(true, 0f));
 }
Example #4
0
        protected override TweenProgress OnUpdate(float deltaTime)
        {
            TweenProgress result = new TweenProgress(true, 0f);
            int           count  = m_Tweens.Count;

            for (int x = count - 1; x >= 0; --x)
            {
                ITween        tween    = m_Tweens[x];
                TweenProgress progress = tween.Update(deltaTime);
                if (progress.Finished)
                {
                    m_Tweens.RemoveAt(x);
                    result = new TweenProgress(m_Tweens.Count == 0, deltaTime);
                }
                else
                {
                    result = new TweenProgress(false, Math.Max(result.UsedTime, progress.UsedTime));
                }
            }
            return(result);
        }