可以代替协程完成延时操作
可以不用Update进行计时
-
GitHub开源计时插件
网址:https://github.com/akbiggs/UnityTimer/tree/master
导入:URL:https://github.com/akbiggs/UnityTimer.git
基本功能:
-
创建计时器:
Timer.Register(5f, () => Debug.Log("计时结束回调"));
-
循环计时
Timer.Register(2f, () => Debug.Log("循环计时"), isLooped: true);
-
调用后取消计时器
Timer.Cancel(timer); 或 timer.Canel();
-
使用真实时间,不受游戏暂停影响
Timer.Register(1f, () => Debug.Log("使用真实时间,不受游戏暂停影响"), useRealTime: true);
-
暂停计时器
Timer.Pause(timer);
-
将计时器附加到 MonoBehaviour 上,以便在 MonoBehaviour 销毁时销毁计时器。
public class CoolMonoBehaviour : MonoBehaviour { void Start() { this.AttachTimer(5f, () => { this.gameObject.transform.position = Vector3.zero; }); } }
-
使用回调随着时间的推移逐渐更新值
onUpdate
Timer.Register(5f,onComplete: () => Debug.Log("计时结束回调"),onUpdate:Debug.Log("每帧回调") );
-