Timer script is turning minutes into seconds

the timer is changing minutes into seconds, and seconds into ms for some reason:

 function Update() {
    timer -= Time.deltaTime;
    minutes = timer / 60;
    seconds = timer % 60;
    now = String.Format("{0:0}:{1:00}", minutes, seconds);
    countdownLabel.text = "Starts in: " + now;
 }

mcconrad, using Time.deltaTime will not make the change once per second, listen to 767_2 he is right. Time.deltaTime will give you how long it has been between this Update and the last Update, a small fraction of a second. If you want the change to only happen once every second then you should use the InvokeRepeating method(repeating once every second) instead of running this in Update.

When using UnityScript, you really really need to type your variables. Your logic for second/minute calculation only works with integer maths. Try this:

function Update() {
    timer -= Time.deltaTime;
    var minutes : int = timer / 60;
    var seconds : int = timer % 60;
    var now : String = String.Format("{0:00}:{1:00}", minutes, seconds);
    countdownLabel.text = "Starts in: " + now;
}