示例#1
0
        public IEnumerator conditionCoroutine(condition condition, afterEnd afterEnd, float time = 0f)
        {
            yield return(new WaitForEndOfFrame());

            yield return(new WaitForEndOfFrame());

            yield return(new WaitForEndOfFrame());

            if (condition == null && time <= 0.1f)
            {
                afterEnd();
                yield break;
            }

            yield return(new WaitForSeconds(time));

            if (condition != null)
            {
                yield return(new WaitUntil(() => condition()));
            }
            afterEnd();
        }
示例#2
0
        public IEnumerator actionAfterSomeSec(float sec, afterEnd afterEnd)
        {
            yield return(new WaitForSeconds(sec));

            afterEnd?.Invoke();
        }
示例#3
0
 public IEnumerator actionWithCondition(inProcess inProcess, condition condition, afterEnd afterEnd)
 {
     while (condition() == false)
     {
         inProcess?.Invoke();
         yield return(new WaitForEndOfFrame());
     }
     afterEnd?.Invoke();
 }