Menu
CoddyTech

Menghubungkan di Inspector

Termasuk bagian Membangun Game Sungguhan dalam perjalanan Unity di Coddy. Pelajaran 8 dari 56.

Tombol juga bisa dihubungkan melalui Inspector, tanpa AddListener sama sekali. Daftar On Click () pada Button awalnya kosong. Tombol + menambahkan baris. Seret object yang menyimpan skrip ke slot object pada baris tersebut, lalu dropdown fungsi menampilkan komponen object itu, masing-masing dengan method publiknya. Pilih Jukebox > NextTrack, dan setiap klik akan memanggil method ini:

public class Jukebox : MonoBehaviour
{
    public string[] tracks;
    private int current;

    public void NextTrack()
    {
        current = (current + 1) % tracks.Length;
        Debug.Log("Now playing: " + tracks[current]);
    }
}

Dropdown menampilkan method yang bersifat public, mengembalikan void, dan tidak menerima parameter atau menerima satu int, float, string, bool, atau Object, yang nilainya kamu atur pada baris tersebut. NextTrack yang bersifat private tidak ditampilkan, jadi tidak bisa dipilih. Baris tersebut menyimpan method berdasarkan namanya: ganti nama NextTrack menjadi SkipTrack dan baris itu akan menampilkan <Missing Jukebox.NextTrack>, lalu klik tidak melakukan apa pun, tanpa error di Console.

Baris di Inspector cocok untuk tombol yang ditempatkan di scene: siapa pun di tim bisa melihat dan mengubah apa yang dipanggil tombol tanpa membuka skrip. AddListener dalam kode cocok untuk tombol yang dibuat saat game berjalan dan pemanggilan yang meneruskan nilai dari variabel, serta compiler akan mendeteksi method yang namanya diubah. Listener yang ditambahkan dari kode tidak pernah muncul dalam daftar On Click (), jadi tombol yang dihubungkan dengan kedua cara akan memanggil keduanya.

challenge icon

Tantangan

Mudah

Jembatan angkat kastel memiliki tiga tombol yang dihubungkan di Inspector ke skrip Drawbridge pada BridgeControl. Belum ada yang berfungsi. Pilih RaiseButton, LowerButton, dan LampButton di Hierarchy, lalu baca setiap baris On Click (): baris itu mencantumkan method yang dipanggil saat tombol diklik. Buat ketiganya berfungsi hanya dengan mengubah Drawbridge.cs:

  • Salah satu method sudah ditulis dengan nama lain. Ganti namanya agar sesuai dengan nama yang dipanggil oleh barisnya.
  • Menaikkan jembatan akan memutar bridge sebesar 70 derajat pada sumbu x (yaitu localRotation) dan menampilkan Bridge: up di statusText.
  • Tombol lampu menyalakan warningLamp saat lampu mati, dan mematikannya saat lampu menyala.

Tekan Play, coba setiap tombol, lalu tekan Periksa.

Coba sendiri

using UnityEngine;
using TMPro;

public class Drawbridge : MonoBehaviour
{
    public Transform bridge;
    public TMP_Text statusText;
    public GameObject warningLamp;

    public void LowerBridge()
    {
        bridge.localRotation = Quaternion.Euler(0f, 0f, 0f);
        statusText.text = "Bridge: down";
    }
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Membangun Game Sungguhan