🎯 Tujuan

Memahami fungsi-fungsi dasar di Unity dan mengetahui kegunaannya dalam pengembangan game.

⏰ Konteks

Skrip di Unity tidak berjalan seperti program tradisional di mana kode dieksekusi terus menerus dalam satu putaran. Sebaliknya, Unity memanggil fungsi-fungsi tertentu di skrip secara berkala sesuai kebutuhan.

🪵 Hal yang Diperlukan

  1. Unity
  2. Visual Studio (atau editor kode lainnya)

📋 Langkah-Langkah

  1. Pelajari fungsi-fungsi yang telah dijelaskan.
  2. Kerjakan tugas yang diberikan hingga selesai.
  3. Amati setiap fungsi dan bagaimana cara kerjanya saat game dijalankan.

Kesimpulan

Dengan mengikuti langkah-langkah di atas dan membaca dokumentasi, kamu akan memahami fungsi-fungsi dasar di Unity.

📋 Documentation

  1. Start() Fungsi ini dipanggil sekali ketika script pertama kali diinisialisasi, sebelum fungsi Update() dijalankan.

Sample:

```csharp
void Start()
{
    Debug.Log("Game dimulai!");
}
```

**Output**: Pesan "Game dimulai!" akan muncul saat game dimulai.
  1. Update() Fungsi ini dipanggil sekali per frame. Tempat yang ideal untuk meletakkan kode yang perlu dijalankan terus-menerus.

Sample:

```csharp
void Update()
{
    if (Input.GetKeyDown(KeyCode.Space))
    {
        Debug.Log("Spasi ditekan!");
    }
}
```

**Output**: Saat tombol spasi ditekan, pesan "Spasi ditekan!" akan muncul.
  1. OnCollisionEnter2D(Collision2D collision) Fungsi ini dipanggil ketika objek 2D bersentuhan dengan objek lain.

Sample:

```csharp
void OnCollisionEnter2D(Collision2D collision)
{
    Debug.Log("Terjadi tabrakan dengan " + collision.gameObject.name);
}
```

**Output**: Pesan "Terjadi tabrakan dengan [nama objek]" akan muncul ketika ada tabrakan.
  1. GetComponent<>() Digunakan untuk mengakses komponen yang terpasang pada GameObject.

Sample:

```csharp
void GetComponentExample()
{
    Rigidbody2D rb = GetComponent<Rigidbody2D>();
    if (rb != null)
    {
        rb.AddForce(Vector2.up * 10f);
    }
}
```

**Output**: Jika GameObject memiliki komponen `Rigidbody2D`, objek akan bergerak ke atas.