Menu
CoddyTech

Tampilan HUD

Termasuk bagian Arsitektur Game di Unity dalam perjalanan Unity di Coddy. Pelajaran 46 dari 50.

challenge icon

Tantangan

Sedang

HUD 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.

  • Hero mendapatkan public event Action<int, int> HealthChanged, yang dipicu dengan kesehatan dan maxHealth di Start, serta setiap kali serangan atau pemulihan mengubah kesehatan.
  • WaveSpawner mendapatkan public event Action<int> WaveStarted, yang dipicu dengan nomor wave saat wave dimulai.
  • HUD berlangganan keduanya di OnEnable dan berhenti berlangganan di OnDisable. Saat HealthChanged dipicu, HUD mengisi bilah sesuai proporsi kesehatan yang tersisa dan menampilkan kesehatan sebagai HP 3/5. Saat WaveStarted dipicu, HUD menampilkan Wave 2. HUD tidak memiliki Update.

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