public void Post2Really(TimeItem item) { item.SortScore = mCurrentUnScaleTime + item.DelayTime(); mUnScaleTimeHeap.Insert(item); }
public void UpdateMgr() { TimeItem item = null; mCurrentUnScaleTime = Time.unscaledTime; mCurrentScaleTime = Time.time; #region 受缩放影响定时器更新 while ((item = mUnScaleTimeHeap.Top()) != null) { if (!item.isEnable) { mUnScaleTimeHeap.Pop(); item.Recycle2Cache(); continue; } if (item.SortScore < mCurrentUnScaleTime) { mUnScaleTimeHeap.Pop(); item.OnTimeTick(); if (item.isEnable && item.NeedRepeat()) { Post2Really(item); } else { item.Recycle2Cache(); } } else { break; } } #endregion #region 受缩放影响定时器更新 while ((item = mScaleTimeHeap.Top()) != null) { if (!item.isEnable) { mScaleTimeHeap.Pop(); item.Recycle2Cache(); continue; } if (item.SortScore < mCurrentScaleTime) { mScaleTimeHeap.Pop(); item.OnTimeTick(); if (item.isEnable && item.NeedRepeat()) { Post2Scale(item); } else { item.Recycle2Cache(); } } else { break; } } #endregion }
public void Post2Scale(TimeItem item) { item.SortScore = mCurrentScaleTime + item.DelayTime(); mScaleTimeHeap.Insert(item); }