script not calling update(javascript)

hello im trying to load a level for failure when the timer i have reaches zero, but for some reason it wont even register the debug log for me any help would be appreciated

// the textfield to update the time to
private var textfield:GUIText;

// time variables
public var allowedTime:int = 10;
private var currentTime = allowedTime;
private var Countdown_Timer;



function Awake()
{
	//retrieve the GUIText Component and set the text
	textfield = GetComponent(GUIText);
	
	UpdateTimerText();
	
	//start the timer ticking
	TimerTick();
}


function UpdateTimerText()
{
        //update the textfield
        textfield.text = currentTime.ToString();
        Debug.Log("Updating timer");
}
 
 
function TimerTick()
{
        while(currentTime > 0)
        {
                Debug.Log("I'ma herp a derp!");
                //wait for 1 second
                yield WaitForSeconds(1);
                //reduce the time
                currentTime--;
               
                UpdateTimerText();
        }
       

}

What does allowedTime look like in the inspector? What value does it have? Is it 0?

public var allowedTime:int = 10;

Initializing public variables like this doesn’t work well in Unity because the values are serialized by the inspector. From the code you think the value should be 10, but when the object is loaded it will have the value from the inspector. If the object ever appeared in the inspector before you added the default value the inspector value will be 0.