Timer Countdown problem

good evening
I would like to make a countdown timer of, and in my onCollision I incremented by 20 seconds.
I have done this but it did not work:

    	if(hit.gameObject.tag == "HouseCollider"){
    	//increment timer
    	timer+=60;
    	UpdateComponents("time");
    }

And on my UpdateComponents :

    	if(component == "time"){
    		GameObject.Find("time").guiText.text=""+timer;
    	}

I have a 3DText to display my timer :
function OnGUI () {

	//60 seconds for begining tests (timer = 60)
   var guiTime = timer - (Time.time - startTime);
   var minutes : int = guiTime / 60;
   var seconds : int = guiTime % 60;
   var fraction : int = (guiTime * 100) % 100;

   textTime = String.Format ("{0:00}:{1:00}:{2:000}", minutes, seconds, fraction);
   GameObject.Find("time").guiText.text=""+textTimer

And i don’t know why timer didn’t increment by 20 seconds .

why First String is textTime in third snipped, and second is textTimer. may be it is your mistake ?

Ok. I’ve made my variant in c#… here is screen

4701-12.jpg

My Text3dScript.cs

using UnityEngine;
using System.Collections;

public class Text3dScript : MonoBehaviour 
{
	float startTime;
	TextMesh textMesh;
	
	public static float timer = 60;
	
	void Start()
	{
		startTime = Time.time;
		textMesh  = this.gameObject.GetComponent<TextMesh>();
	}
	
	// Update is called once per frame
	void Update () {
		
		float guiTime = timer - (Time.time - startTime);
		if (guiTime > 0)
		{
			int minutes = (int)(guiTime / 60);
			int seconds  = (int)(guiTime % 60);
			int fraction = (int)((guiTime * 100) % 100);
	
			textMesh.text = string.Format ("{0:00}:{1:00}:{2:000}", minutes, seconds, fraction);	
		}
	}
}

my TriggerScript is

using UnityEngine;
using System.Collections;

public class triggerScript : MonoBehaviour {

	void OnTriggerEnter(Collider c)
	{
	   Text3dScript.timer += 20;
	}
}

How can you see. All is ok, and works