private void CallUpdateMethodByType(int time, int methodType) { switch (methodType) { case TICKS_FIXED_UPDATE: if (mItem.IsFixedUpdate) { mFixedUpdateCountTime -= time; if (mFixedUpdateCountTime <= 0) { mItem.OnFixedUpdate(mFixedUpdateDeltaTime); mFixedUpdateCountTime += mFixedUpdateDeltaTime; } } break; case TICKS_UPDATE: if (mItem.IsUpdate) { mTicksLater?.Update(time); mItem?.OnUpdate(time); } break; case TICKS_LATE_UPDATE: if (mItem.IsLateUpdate) { mItem.OnLateUpdate(); } break; } }
private void Updating(int time) { if (mIsDisposed) { return; } RunTime += time * 0.001f; CheckRemoveUpdate(); WalkUpdateItems(time, TICKS_FIXED_UPDATE); WalkUpdateItems(time, TICKS_UPDATE); WalkUpdateItems(time, TICKS_LATE_UPDATE); mTicksLater.Update(time); LastRunTime = RunTime; }