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.
Tantangan
MudahJembatan 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
bridgesebesar 70 derajat pada sumbu x (yaitulocalRotation) dan menampilkanBridge: updistatusText. - Tombol lampu menyalakan
warningLampsaat 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";
}
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Membangun Game Sungguhan
4Scene dan Level
Muat SceneMulai Ulang LevelLevel BerikutnyaPertahankan Antar-SceneRekap: Pilih Level10Proyek: Platformer 3D
LintasanPlatform Bergerak2Tombol dan Layar
Tombol dan onClickLambdaMenghubungkan di InspectorPanel Aktif dan NonaktifBilah KesehatanRangkuman: Toko Upgrade5Menyimpan dengan PlayerPrefs
Simpan AngkaMuat dengan Nilai DefaultSkor TertinggiSimpan PengaturanUlasan: Koin di Bank