Exemple #1
0
 public void RemoveTimer(Timer.OnTimeUpHandler onTimeUpHandler)
 {
     for (int i = 0; i < m_timers.Count; i++)
     {
         if (m_timers[i].IsDelegateMatched(onTimeUpHandler))
         {
             m_timers[i].Finish();
         }
     }
 }
Exemple #2
0
 public Timer(int time, int loop, Timer.OnTimeUpHandler timeUpHandler, int sequence)
 {
     if (loop == 0)
     {
         loop = -1;
     }
     this.m_totalTime     = time;
     this.m_loop          = loop;
     this.m_timeUpHandler = timeUpHandler;
     this.m_sequence      = sequence;
     this.m_currentTime   = 0;
     this.m_isRunning     = true;
     this.m_isFinished    = false;
 }
Exemple #3
0
        //----------------------------------------------
        /// 移除Timer
        /// @onTimeUpHandler
        /// @useFrameSync
        //----------------------------------------------
        public void RemoveTimer(Timer.OnTimeUpHandler onTimeUpHandler, bool useFrameSync)
        {
            List <Timer> timers = m_timers[(int)(useFrameSync ? enTimerType.FrameSync : enTimerType.Normal)];

            for (int i = 0; i < timers.Count;)
            {
                if (timers[i].IsDelegateMatched(onTimeUpHandler))
                {
                    timers.RemoveAt(i);
                    continue;
                }

                i++;
            }
        }
Exemple #4
0
        public void RemoveTimer(Timer.OnTimeUpHandler onTimeUpHandler, bool useFrameSync)
        {
            List <Timer> list = this.m_timers[(!useFrameSync) ? 0 : 1];
            int          i    = 0;

            while (i < list.Count)
            {
                if (list[i].IsDelegateMatched(onTimeUpHandler))
                {
                    list.RemoveAt(i);
                }
                else
                {
                    i++;
                }
            }
        }
Exemple #5
0
 public int AddTimer(int time, int loop, Timer.OnTimeUpHandler onTimeUpHandler, bool useFrameSync)
 {
     this.m_timerSequence++;
     this.m_timers[(!useFrameSync) ? 0 : 1].Add(new Timer(time, loop, onTimeUpHandler, this.m_timerSequence));
     return(this.m_timerSequence);
 }
Exemple #6
0
 public int AddTimer(int time, int loop, Timer.OnTimeUpHandler onTimeUpHandler)
 {
     return(this.AddTimer(time, loop, onTimeUpHandler, false));
 }
Exemple #7
0
 public void RemoveTimer(Timer.OnTimeUpHandler onTimeUpHandler)
 {
     this.RemoveTimer(onTimeUpHandler, false);
 }
Exemple #8
0
 /// <summary>
 /// 开启一个定时器,以毫秒(ms)为单位
 /// </summary>
 /// <param name="time">时间(毫秒为单位)</param>
 /// <param name="loop">重复次数</param>
 /// <param name="onTimeUpHandler"></param>
 /// <returns></returns>
 public int AddTimer(int time, int loop, Timer.OnTimeUpHandler onTimeUpHandler)
 {
     m_timerSequence++;
     m_timers.Add(new Timer(time, loop, onTimeUpHandler, m_timerSequence));
     return(m_timerSequence);
 }
Exemple #9
0
 public bool IsDelegateMatched(Timer.OnTimeUpHandler timeUpHandler)
 {
     return(m_timeUpHandler == timeUpHandler);
 }
Exemple #10
0
 //----------------------------------------------
 /// 添加Timer
 /// @time               : 计时时间(ms)
 /// @loop               : 循环次数
 /// @onTimeUpHandler    : 时间到时的回调函数
 /// @useFrameSync       : 是否使用桢同步
 /// @return sequence of timer
 //----------------------------------------------
 public int AddTimer(int time, int loop, Timer.OnTimeUpHandler onTimeUpHandler, bool useFrameSync)
 {
     m_timerSequence++;
     m_timers[(int)(useFrameSync ? enTimerType.FrameSync : enTimerType.Normal)].Add(new Timer(time, loop, onTimeUpHandler, m_timerSequence));
     return(m_timerSequence);
 }
Exemple #11
0
 public int AddTimer(int timer, Timer.OnTimeUpHandler onTimeUpHandler)
 {
     return(AddTimer(timer, 1, onTimeUpHandler));
 }