示例#1
0
 private void TryStepNext()
 {
     if (curr != null)
     {
         StepPool.RecoveryStep(curr);
     }
     curr = null;
     if (!IEnumerator.MoveNext())
     {
         //如果没有下一步了,结束
         End = true;
         return;
     }
     Run();
 }
示例#2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="iEnumerator"></param>
        /// <returns> end</returns>
        private bool TryStepNext(IEnumerator <Step> iEnumerator)
        {
            var step = iEnumerator.Current;

            if (step != null)
            {
                StepPool.RecoveryStep(step);
                step = null;
            }
            if (iEnumerator.MoveNext())
            {
                StartOneStep(iEnumerator);
                return(false);
            }
            else
            {
                mWaitNext = false;
                return(true);
                //没有下一步了完了.
            }
        }
示例#3
0
 public static Step NewStartStep(this StepProcess stepProcess, IEnumerator <Step> iEnumerator)
 {
     return(StepPool.NewStartStep(iEnumerator));
 }
示例#4
0
 public static Step NewWaitStep(this StepProcess stepProcess, Func <bool> waitFn)
 {
     return(StepPool.NewWaitStep(waitFn));
 }
示例#5
0
 public static Step NewWaitFrame(this StepProcess stepProcess, int frame)
 {
     return(StepPool.NewWaitFrame(frame));
 }
示例#6
0
 public static Step NewWaitTime(this StepProcess stepProcess, float needWaitTime, bool realTime = true)
 {
     return(StepPool.NewWaitTime(needWaitTime, realTime));
 }
示例#7
0
 public static Step NewStep(this StepProcess stepProcess)
 {
     return(StepPool.NewStep());
 }