Tampilan HUD
Termasuk bagian Arsitektur Game di Unity dalam perjalanan Unity di Coddy. Pelajaran 46 dari 50.
Tantangan
SedangHUD yang hanya mendengarkan. Pertahankan semua hal dari pelajaran sebelumnya. Canvas bernama HUD memiliki bilah kesehatan (HealthFill, sebuah gambar Filled), HealthText dan WaveText, serta skrip HUD milikmu, dengan hero, spawner, healthBar, healthText dan waveText yang diatur di Inspector. HUD tidak pernah menanyakan apa pun kepada hero atau spawner: mereka mengumumkan perubahan dengan event C#, lalu HUD menampilkan apa yang didengarnya.
Heromendapatkanpublic event Action<int, int> HealthChanged, yang dipicu dengan kesehatan danmaxHealthdiStart, serta setiap kali serangan atau pemulihan mengubah kesehatan.WaveSpawnermendapatkanpublic event Action<int> WaveStarted, yang dipicu dengan nomor wave saat wave dimulai.HUDberlangganan keduanya diOnEnabledan berhenti berlangganan diOnDisable. SaatHealthChangeddipicu, HUD mengisi bilah sesuai proporsi kesehatan yang tersisa dan menampilkan kesehatan sebagaiHP 3/5. SaatWaveStarteddipicu, HUD menampilkanWave 2. HUD tidak memilikiUpdate.
Picu HealthChanged di Start, bukan di Awake: OnEnable setiap object berjalan sebelum Start mana pun, jadi saat itu HUD sudah mendengarkan. Tekan Play dan perhatikan HUD saat kamu bertarung, lalu tekan Check.
Coba sendiri
using UnityEngine;
public class HUD : MonoBehaviour
{
// Pelajaran berikutnya akan mengisi bagian ini: kesehatan dan gelombang di layar.
}
Semua pelajaran di Arsitektur Game di Unity
1Komponen, Bukan Hierarki
Komponen KecilSkrip Dasar MusuhKomponen AbstrakKomponen yang Bekerja SamaRingkasan: Turret Modular4Data Terserialisasi
Class yang Dapat DiserialisasiList di InspectorEnum di InspectorRingkasan: Tabel Loot10Proyek: Penyintas Arena
Sang PahlawanJenis Musuh5ScriptableObjects
Aset DataStatistik SenjataPengaturan BersamaGelombang sebagai DataUlasan: database Item8Kode yang Dapat Digunakan Kembali
Extension methodSingleton GenerikHelper GenerikUlasan: FindNearest