Menu
CoddyTech

Vies à l’écran

Leçon 4 sur 25 du cours Jeu Unity : défense de tours de Coddy.

Le joueur doit voir ses vies. La scène comporte un LivesText dans la barre supérieure, un texte TextMeshPro. Son type de script est TMP_Text, avec using TMPro;, et ce qu’il affiche est son text.

Un texte affiche la dernière valeur qui lui a été attribuée : il ne suit pas la variable. Place donc la ligne qui affiche les vies dans une méthode, puis appelle-la chaque fois que les vies changent, afin que l’écran ne soit jamais en retard :

void ShowLives()
{
    livesText.text = "Lives: " + lives;
}
challenge icon

Défi

Facile

Affiche les vies à l’écran.

  1. Dans GameManager, ajoute using TMPro; et [SerializeField] private TMP_Text livesText;.
  2. Écris ShowLives() comme ci-dessus.
  3. Appelle-la à la fin de Start et après chaque changement du nombre de vies.

Appuie sur « Jouer » : le nombre de vies, qui est de 20, diminue à mesure que les ennemis passent. Puis appuie sur « Vérifier ».

Essayez vous-même

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;
    }
}

Toutes les leçons de Jeu Unity : défense de tours

Entraînez-vous par vous-même : Playground Unity