TimerManager计时任务管理器
       public void Start()
            {
                running = true;
            }
            public void Stop()
            {
                stopped = true;
                running = false;
            }
            public void Pause()
            {
                paused = true;
            }
            public void UnPause()
            {
                paused = false;
            }
        }
private List<TimerState> timerList = new List<TimerState>();
        private void Update()
        {
            for (int i = 0; i < timerList.Count ; i++)
            {
                timerList[i].UpdateTime(timerList[i].ignoreTimeScale ? Time.realtimeSinceStartup : Time.deltaTime);
            }
        }
        public TimerState CreateTimer(float time, TimeUnit timeUnit,bool ignoreTimeScale)
        {
            TimerState newTimer = new TimerState(time, timeUnit, ignoreTimeScale);
            timerList.Add(newTimer);
            return newTimer;
        }
        public void ClearTimer() { }
        public void ClearAllTimer() { }
    }
}
 
使用案例
public class text : MonoBehaviour {
    // Use this for initialization
    void Start () {
        Time.timeScale = 3;
        Timer timer = new Timer(1, TimeUnit.Second); //第三个参数是否忽略时间缩放带来的影响
        timer.Loop = true; // 设置可循环
        timer.Finished += rw; 
    }
    private void rw()
    {
        Debug.Log("你好");
    }
}
--------------------- 
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号