private static IEnumerator RunTimer(TimerBadge timerBadge, float seconds, Action callback) { yield return(new WaitForSeconds(seconds)); instance.coroutines.Remove(timerBadge); timerBadge.Expire(); callback?.Invoke(); }
public static void StopFixedUpdate(TimerBadge timerBadge) { if (!instance.fixedUpdateActions.ContainsKey(timerBadge)) { return; } instance.fixedUpdateActionsList.Remove(instance.fixedUpdateActions[timerBadge]); instance.fixedUpdateActions.Remove(timerBadge); timerBadge.Expire(); }
public static void Stop(TimerBadge timerBadge) { if (!instance.coroutines.ContainsKey(timerBadge)) { return; } instance.StopCoroutine(instance.coroutines[timerBadge]); instance.coroutines.Remove(timerBadge); timerBadge.Expire(); }