public bool AddMarsTimeSlowTask(Action action, float sleepTime, bool replace = false) { if (!replace && m_MarsTimeTasks.ContainsKey(action)) { return(false); } m_MarsTimeTasksRegisteredThisFrame++; if (m_MarsTimeTasksRegisteredThisFrame % m_IncrementInterval == 0) { m_MarsTaskTime += m_OffsetIncrement; } var newTask = new SlowTask { task = action, sleepTime = sleepTime, lastExecutionTime = m_MarsTaskTime }; m_MarsTimeTasks[action] = newTask; return(true); }
public bool AddSlowTask(Action action, float sleepTime, bool replace = false) { if (!replace && m_Tasks.ContainsKey(action)) { return(false); } m_TasksRegisteredThisFrame++; // Distribute work by making sure we don't pile up every task on the same frames if (m_TasksRegisteredThisFrame % m_IncrementInterval == 0) { m_StartTime += m_OffsetIncrement; } var newTask = new SlowTask { task = action, sleepTime = sleepTime, lastExecutionTime = m_StartTime }; m_Tasks[action] = newTask; return(true); }