Vidas na tela
Lição 4 de 25 do curso Jogo de Unity: Defesa de Torres da Coddy.
O jogador deve ver as vidas. A cena tem um LivesText na barra superior, um texto do TextMeshPro. O tipo do script é TMP_Text, com using TMPro;, e o que ele exibe é seu text.
Um texto exibe o último valor que foi definido para ele: não acompanha a variável. Então, coloque a linha que exibe as vidas em um método e chame esse método sempre que as vidas mudarem, para que a tela nunca fique desatualizada:
void ShowLives()
{
livesText.text = "Lives: " + lives;
}Desafio
FácilExiba as vidas na tela.
- Em
GameManager, adicioneusing TMPro;e[SerializeField] private TMP_Text livesText;. - Escreva
ShowLives()como acima. - Chame esse método no final de
Starte depois que as vidas mudarem.
Pressione “Jogar”: o número de vidas, 20, diminui conforme os inimigos passam. Depois, pressione “Verificar”.
Experimente você mesmo
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;
}
}
Todas as lições de Jogo de Unity: Defesa de Torres
Pratique por conta própria: Playground de Unity