private void Update() { if (timerIsRunning) { if (timeRemaining > 0) { timeRemaining -= Time.deltaTime; DisplayTime(timeRemaining); } else { timeRemaining = 0; timerIsRunning = false; OnTimeIsOver?.Invoke(); } } }
protected virtual void Update() { //Если таймер работает - каждый кадр вычитаем время //иначе вызов события и остановка таймера if (IsRunning) { if (TimeIsOver) { OnTimeIsOver?.Invoke(); RemainingTime = 0; IsRunning = false; } else { RemainingTime -= Time.deltaTime; } } }