예제 #1
0
 public static bool AddDelayTimer(string key, float duration, TimerManager.TimerManagerHandlerArgs handler, params object[] args)
 {
     if (string.IsNullOrEmpty(key))
     {
         return(false);
     }
     if (duration < 0f)
     {
         if (handler != null)
         {
             handler(new object[0]);
         }
         return(true);
     }
     TimerManager.Timer timer = new TimerManager.Timer(key, TimerManager.TIMER_MODE.DELAYTIME, Time.realtimeSinceStartup, duration, handler, args);
     if (TimerManager.m_AddTimerList.ContainsKey(key))
     {
         TimerManager.m_AddTimerList[key] = timer;
     }
     else
     {
         TimerManager.m_AddTimerList.Add(key, timer);
     }
     return(true);
 }
예제 #2
0
 public Timer(string name, TimerManager.TIMER_MODE mode, float startTime, float duration, TimerManager.TimerManagerHandlerArgs handler, params object[] args)
 {
     this.m_Name           = name;
     this.m_Mode           = mode;
     this.m_StartTime      = startTime;
     this.m_duration       = duration;
     this.m_TimerArgsEvent = handler;
     this.m_Args           = args;
 }
예제 #3
0
 private static bool Internal_AddTimer(string key, TimerManager.TIMER_MODE mode, float duration, TimerManager.TimerManagerHandlerArgs handler, params object[] args)
 {
     if (string.IsNullOrEmpty(key))
     {
         return(false);
     }
     if (duration < 0f)
     {
         return(false);
     }
     TimerManager.Timer timer = new TimerManager.Timer(key, mode, Time.realtimeSinceStartup, duration, handler, args);
     if (TimerManager.m_AddTimerList.ContainsKey(key))
     {
         TimerManager.m_AddTimerList[key] = timer;
     }
     else
     {
         TimerManager.m_AddTimerList.Add(key, timer);
     }
     return(true);
 }
예제 #4
0
 public static bool AddTimerRepeat(string key, float duration, TimerManager.TimerManagerHandlerArgs handler, params object[] args)
 {
     return(TimerManager.Internal_AddTimer(key, TimerManager.TIMER_MODE.REPEAT, duration, handler, args));
 }