Mạng trên màn hình
Bài học 4 trên 25 trong khóa học Game Unity: thủ thành của Coddy.
Người chơi nên thấy số mạng. Cảnh có LivesText trên thanh trên cùng, một văn bản TextMeshPro. Kiểu script của nó là TMP_Text, với using TMPro;, và nội dung mà nó hiển thị nằm trong thuộc tính text.
Văn bản hiển thị nội dung được gán cho nó lần cuối, chứ không tự cập nhật theo biến. Vì vậy, hãy đặt dòng hiển thị số mạng trong một phương thức, rồi gọi phương thức đó mỗi khi số mạng thay đổi để màn hình luôn cập nhật:
void ShowLives()
{
livesText.text = "Lives: " + lives;
}Thử thách
DễHiển thị số mạng trên màn hình.
- Trong
GameManager, thêmusing TMPro;và[SerializeField] private TMP_Text livesText;. - Viết
ShowLives()như trên. - Gọi hàm này ở cuối
Startvà sau khi số mạng thay đổi.
Nhấn Chơi: số mạng giảm từ 20 khi kẻ địch lọt qua. Sau đó nhấn Kiểm tra.
Tự làm thử
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;
}
}
Tất cả bài học trong Game Unity: thủ thành
Tự luyện tập: Playground Unity