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(); } } }
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; }
//---------------------------------------------- /// 移除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++; } }
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++; } } }
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); }
public int AddTimer(int time, int loop, Timer.OnTimeUpHandler onTimeUpHandler) { return(this.AddTimer(time, loop, onTimeUpHandler, false)); }
public void RemoveTimer(Timer.OnTimeUpHandler onTimeUpHandler) { this.RemoveTimer(onTimeUpHandler, false); }
/// <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); }
public bool IsDelegateMatched(Timer.OnTimeUpHandler timeUpHandler) { return(m_timeUpHandler == timeUpHandler); }
//---------------------------------------------- /// 添加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); }
public int AddTimer(int timer, Timer.OnTimeUpHandler onTimeUpHandler) { return(AddTimer(timer, 1, onTimeUpHandler)); }