Vidas en pantalla
Lección 4 de 25 del curso Juego de Unity: Defensa de torres de Coddy.
El jugador debería ver las vidas. La escena tiene un LivesText en la barra superior, un texto de TextMeshPro. Su tipo de script es TMP_Text, con using TMPro;, y lo que muestra es su text.
Un texto muestra lo último que se le asignó: no sigue a la variable. Así que pon la línea que muestra las vidas en un método y llámalo siempre que cambien las vidas, para que la pantalla nunca se quede atrás:
void ShowLives()
{
livesText.text = "Lives: " + lives;
}Desafío
FácilMuestra las vidas en pantalla.
- En
GameManager, añadeusing TMPro;y[SerializeField] private TMP_Text livesText;. - Escribe
ShowLives()como se indicó arriba. - Llámalo al final de
Starty después de que cambien las vidas.
Pulsa «Jugar»: las vidas bajan de 20 a medida que los enemigos avanzan. Después, pulsa «Comprobar».
Pruébalo tú mismo
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 las lecciones de Juego de Unity: Defensa de torres
Practica por tu cuenta: Playground de Unity