In this recipe, you added instances of the DigitalCountdown and CountdownTimer C# script classes to your scene's UI Text GameObject.
The Awake() method caches references to the Text and CountdownTimer components in the countdownTimer and textClock variables. The textClock variable will be a reference to the UI Text component, whose text content we wish to update in each frame with a time-remaining message (or a timer-complete message).
The Start() method calls the countdown timer object's CountdownTimerReset(...) method, passing an initial value of 30 seconds.
The Update() method is executed in every frame. This method retrieves the countdown timer's remaining seconds and stores this value as an integer (whole number) in the timeRemaining variable. This value is passed as a parameter to the TimerMessage() method, and the resulting message is stored in the string (text) variable message. Finally...