Nyawa di Layar
Pelajaran 4 dari 25 dalam kursus Game Unity: Tower Defense di Coddy.
Pemain harus bisa melihat jumlah nyawa. Adegan ini memiliki LivesText di bilah atas, berupa teks TextMeshPro. Tipe skripnya adalah TMP_Text, dengan using TMPro;, dan yang ditampilkan adalah text.
Teks menampilkan nilai yang terakhir kali ditetapkan, teks tidak mengikuti variabel. Jadi, letakkan baris yang menampilkan jumlah nyawa dalam satu method, lalu panggil method itu setiap kali jumlah nyawa berubah agar tampilan layar tidak pernah tertinggal:
void ShowLives()
{
livesText.text = "Lives: " + lives;
}Tantangan
MudahTampilkan nyawa di layar.
- Di
GameManager, tambahkanusing TMPro;dan[SerializeField] private TMP_Text livesText;. - Tulis
ShowLives()seperti di atas. - Panggil fungsi ini di akhir
Startdan setelah jumlah nyawa berubah.
Tekan tombol “Main”: Lives: 20 akan berkurang saat musuh berhasil melewati. Lalu tekan tombol “Periksa”.
Coba sendiri
using UnityEngine;
public class GameManager : MonoBehaviour
{
[SerializeField] private int startLives = 20;
private int lives;
void OnEnable()
{
Enemy.ReachedBase += OnReachedBase;
}
void OnDisable()
{
Enemy.ReachedBase -= OnReachedBase;
}
void Start()
{
lives = startLives;
}
void OnReachedBase(Enemy enemy)
{
lives -= enemy.data.damage;
}
}
Semua pelajaran di Game Unity: Tower Defense
Latihan sendiri: Playground Unity