Basic Unity Script C# : Coroutine : Day 3

Share it:
Coroutine digunakan untuk memangil methode/fungsi dengan delay waktu tertentu, Coroutine dan Invoke memiliki kegunaan yang sama tetapi coroutine sangat efektif untuk pemanggilan fungsi yang memiliki banyak activities.

Secara default, coroutine akan dilanjutkan dijalankan pada frame setelah menghasilkan proses  tetapi juga memungkinkan untuk mempergunakan waktu tunda menggunakan WaitForSeconds.

Biasanya penamaan fungsi coroutine selalu di tulis setelah IEnumerator.
IEnumerator Shoot(){
 ..
}

Cara pemanggilan coroutine yang sudah kita buat dengan syntax:
StartCoroutine ("Shoot");
Atau
StartCoroutine (Shoot());

Berikut contoh pengunaan Coroutine pada script:

using UnityEngine;
using System.Collections;


public class Coroutine : MonoBehaviour {

    // Use this for initialization
    void Start () {
        
    }
    
    // Update is called once per frame
    void Update () {
        StartCoroutine ("Shoot");    
    }

    IEnumerator Shoot(){
        /*
        yield return new WaitForSeconds (2f);
        Debug.Log("Hero shoot a gun");
        */

        yield return new WaitForSeconds (5f);
        while (true) {
            Debug.Log ("Hero shoot a bullet at: " + Time.time);
            yield return new WaitForSeconds (2f);
        }
            
    }
}


Hasil dari code diatas adalah StartCoroutine ("Shoot") akan menulis pada console "Hero shoot a bullet at (waktu)" selama 2 detik dan akan delay selama 5 detik.

Seperti terlihat pada gambar dibawah ini:

Share it:

B-Publisher

Basic Script

Basic Unity C#

Post A Comment:

0 comments:

Also Read

Formatting your web page

Day 1 - Formatting your web page 1. Open your HelloWorld.html with your favorite text editor 2. Type this code into yo

Unknown