Esempio n. 1
0
        public IEnumerator Execute()
        {
            mAllNodeCount = TimelineQueue.Count;
            if (OnTimelineBeganCallback != null)
            {
                OnTimelineBeganCallback();
            }
            while (TimelineQueue.Count > 0)
            {
                TimelinePair nodePair = TimelineQueue.Dequeue();

                while (mCurTime < nodePair.Time)
                {
                    mCurTime += Time.deltaTime;
                    yield return(0);
                }

                CoroutineBehaviour.StartCoroutine(ExecuteNode(nodePair.Node));
            }

            while (mExecutedNodeCount != mAllNodeCount)
            {
                //Debug.Log (mExecutedNodeCount + ":" + mAllNodeCount);
                yield return(0);
            }

            if (OnTimelineEndedCallback != null)
            {
                OnTimelineEndedCallback();
            }
        }
Esempio n. 2
0
 protected override void OnExecute(float dt)
 {
     mCurTime        += dt;
     mCurTimelinePair = TimeLinePairList[mCurPairIndex];
     if (mCurTime >= mCurTimelinePair.Time && !mCurTimelinePair.Node.Finished)
     {
         if (mCurTimelinePair.Node.Execute(dt))
         {
             mCurPairIndex++;
             Finished = TimeLinePairList.Count == mCurPairIndex;
         }
     }
 }
Esempio n. 3
0
        protected override void OnDispose()
        {
            foreach (var timelinePair in TimeLinePairList)
            {
                timelinePair.Node.Dispose();
            }

            if (mCurTimelinePair != null)
            {
                mCurTimelinePair.Node.Dispose();
                mCurTimelinePair.Node = null;
            }

            mCurTimelinePair = null;

            TimeLinePairList.Clear();
            TimeLinePairList = null;
        }
Esempio n. 4
0
 public void Append(TimelinePair pair)
 {
     TimelineQueue.Enqueue(pair);
 }
Esempio n. 5
0
 public void Append(TimelinePair pair)
 {
     TimeLinePairList.Add(pair);
 }