Making a growing number

Hi everyone

I want to make some kind of presentation with Unity, this project includes numerical statistics so I want to make them look alive with the growing “animation”. My problem is that even with a Coroutine this number is shown instantly.

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class grownumber : MonoBehaviour {
	public int limit;
	private int counter;
	private Text text_n;
	// Use this for initialization
	void Start () {
		text_n = GameObject.Find ("number").GetComponent<Text>();
		counter = 0;
		limit = 60000;
	// Update is called once per frame
	void Update () {

	void grow(){
		for(int i=0;i<limit;i++){
			StartCoroutine ("count");

	void OnTriggerEnter (Collider other){
		if (other.tag == "Player") {
			print ("collider");
			grow ();
	IEnumerator count(){
		yield return new WaitForSeconds (0.5f);
		text_n.text = ""+counter+"";

How about adding the start time in start and if Time.time > Starttime + 0.5f show text.

private float StartTime;
private bool shownText =false;

void Start(){
     StartTime = Time.time;

void Update(){
     if(Time.time > StartTime + 0.5f && shownText == false)
          shownText = true;

Should work and if you want to do it every .5 seconds just have that function reset StartTime and the bool to false.