< Back to Game Dev, Unity

Delaying code in Unity

Here’s an example:

IEnumerator functionName(){
        print ("0 - start");
        yield return new WaitForSeconds(1);
        print ("after 1 second");
        yield return new WaitForSeconds(1);
        print ("1 more second later");
        yield return new WaitForSeconds(2);
        print ("2 more seconds after that");
        // etc
    }

The important things is to use IEnumerator. You can put in any number in the brackets for WaitForSeconds. Everything after the WaitForSeconds will not execute until the number of seconds has passed. As you can see, you can also chain a bunch of them together.

Then to call this timed function use:

StartCoroutine(functionName());

Leave a Reply

Your email address will not be published. Required fields are marked *