/// <summary> /// Start execute an action. /// </summary> /// <param name="owner"></param> /// <returns></returns> public Coroutine StartActionInParallel( UnityEngine.Object instance, System.Func <IEnumerator, Coroutine> startCoroutine, System.Action <Coroutine> stopCoroutine, System.Action onFinished) { actionCoroutine = new ActionCoroutine(ExecuteCoroutineInParallel(instance, startCoroutine, onFinished), startCoroutine, stopCoroutine); return(actionCoroutine.Run()); }
/// <summary> /// Start execute an action. /// </summary> /// <param name="startCoroutine"></param> /// <param name="stopCoroutine"></param> /// <returns></returns> public Coroutine StartAction( UnityEngine.Object instance, System.Func <IEnumerator, Coroutine> startCoroutine, System.Action <Coroutine> stopCoroutine) { actionCoroutine = new ActionCoroutine(ExecuteCoroutine(instance), startCoroutine, stopCoroutine); return(actionCoroutine.Run()); }
/// <summary> /// Start execute an action. /// </summary> /// <param name="owner"></param> /// <param name="onFinished"></param> /// <returns></returns> public Coroutine StartActionInParallel(MonoBehaviour owner, System.Action onFinished) { actionCoroutine = new ActionCoroutine(owner, ExecuteCoroutineInParallel(owner, owner.StartCoroutine, onFinished)); return(actionCoroutine.Run()); }
/// <summary> /// Start execute an action. /// </summary> /// <param name="owner"></param> /// <returns></returns> public Coroutine StartActionInParallel(MonoBehaviour owner) { actionCoroutine = new ActionCoroutine(owner, ExecuteCoroutineInParallel(owner, owner.StartCoroutine)); return(actionCoroutine.Run()); }
/// <summary> /// Start execute an action. /// </summary> /// <param name="owner"></param> /// <returns></returns> public Coroutine StartAction(MonoBehaviour owner) { actionCoroutine = new ActionCoroutine(owner, ExecuteCoroutine(owner)); return(actionCoroutine.Run()); }