コード例 #1
0
    public static void DestroyTimer(TimerEvent timer, bool isCallBack = false)
    {
        if (m_timers.Contains(timer))
        {
            if (isCallBack)
            {
                timer.CallBackTimer();
            }

            m_timers.Remove(timer);
            timer.Release();
        }
        else
        {
            Debug.LogError("Timer DestroyTimer error: dont exist timer " + timer);
        }
    }
コード例 #2
0
    static void Update()
    {
        for (int i = 0; i < m_timers.Count; i++)
        {
            m_timers[i].Update();

            if (m_timers[i].m_isDone)
            {
                TimerEvent e = m_timers[i];

                e.CompleteTimer();

                if (e.m_repeatCount == 0)
                {
                    m_timers.Remove(e);
                    e.Release();
                    i--;
                }
            }
        }
    }