Example #1
0
 public SingleTimeBase(float t, TimeCallBack callb, params object[] args)
 {
     TimeCount   = t;
     CallBack    = callb;
     ArgsObj     = args;
     bFlagDelete = false;
 }
Example #2
0
 /// <summary>
 /// 停止计时器
 /// </summary>
 public void Stop()
 {
     m_timeCallBack = null;
     m_restcount    = 0;
     m_resttime     = 0;
     m_switch       = false;
     if (this.onStop != null)
     {
         this.onStop();
     }
     m_count     = 0;
     m_totalTime = 0;
     EventManager.instance.Dispatch(GameEvent.STOP_COROUTINE, StartLoop());
 }
Example #3
0
    private IEnumerator Timer()
    {
        float intervalTime = 1f;

        while (true)
        {
            intervalTime -= Time.deltaTime;
            if (intervalTime <= 0)
            {
                intervalTime = 1f;
                TimeCallBack?.Invoke();
                timekeeping = timekeeping > 0 ? timekeeping - 1 : interval;
                if (timekeeping == interval)
                {
                    Time30?.Invoke();
                }
            }
            yield return(null);
        }
    }
Example #4
0
 public CTimerCirculateCall(float t, TimeCallBack callb)
     : base(t, callb, null)
 {
     circulatetime = t;
 }
Example #5
0
 public CTimerPersecondCall(float t, TimeCallBack callb)
     : base(t, callb, null)
 {
 }
Example #6
0
 /// <summary>
 /// 开启倒计时计时器(秒)
 /// </summary>
 /// <param name="time">计时时间(秒)</param>
 public void StartCount(int conut, TimeCallBack callBack)
 {
     StartCount(conut);
     m_timeCallBack = callBack;
 }
Example #7
0
 /// <summary>
 /// 开启倒计时计时器(秒)
 /// </summary>
 /// <param name="time">计时时间(秒)</param>
 public void StartTime(float time, TimeCallBack callBack)
 {
     StartTime(time);
     m_timeCallBack = callBack;
 }
 // other script able to access this function, to add timer mechanics
 public void Add(TimeCallBack timeCallBack, float inSeconds)
 {
     events.Add(new TimedEvent {
         TimeCallBack = timeCallBack, TimeToExecute = Time.time + inSeconds
     });
 }