Récapitulatif : sélection du niveau
Fait partie de la section Créer de vrais jeux du Journey Unity de Coddy. Leçon 21 sur 56.
Défi
FacileUn écran de sélection des niveaux. La liste des scènes contient Menu (index 0), Level1, Level2 et Level3. Le Menu comporte trois boutons, que l’Inspector place dans levelButtons du script LevelSelect, ainsi qu’un objet Progress. Dans chaque niveau, les flèches déplacent le Player jusqu’à un Goal doré, dont le script (déjà prêt) appelle Progress.Instance.LevelDone(level) avec l’index de la scène du niveau.
Progress.cs :
- La progression dure pendant toute la partie et il n’y en a jamais qu’une seule, accessible via
Progress.Instance, même si le Menu en crée une nouvelle à chaque chargement. unlockedest le niveau le plus élevé auquel le joueur peut jouer (1 au départ).LevelDone(int level)déverrouille le niveau suivant, ne verrouille jamais un niveau déjà accessible et retourne au Menu.
LevelSelect.cs : dans Start, attribue à chaque bouton un écouteur qui charge son propre niveau (le premier bouton charge Level1, et ainsi de suite), et ne rends un bouton cliquable que si son niveau est déverrouillé.
Appuie sur Play, joue les niveaux dans l’ordre et rejoue le niveau 1, puis appuie sur Check.
Essayez vous-même
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class LevelSelect : MonoBehaviour
{
public Button[] levelButtons;
void Start()
{
// chaque bouton ouvre le niveau correspondant ; les niveaux verrouillés ne peuvent pas être sélectionnés
}
}
Toutes les leçons de Créer de vrais jeux
1Texte à l’écran
Canvas et texteAfficher le scoreFormater les nombresUn compte à reboursRécapitulatif : compteur de vitesse4Scènes et niveaux
Charger une scèneRedémarrer le niveauNiveau suivantConserver entre les scènesRécapitulatif : sélection du niveau7Contrôle du temps
Mettre en pause avec timeScaleRalentiTemps non mis à l’échelleRécapitulatif : Bullet Time10Projet : jeu de plateforme en 3D
Le parcoursPlateformes mobiles2Boutons et écrans
Boutons et onClickLambdasRelier les éléments dans l’InspectorActiver et désactiver les panneauxBarres de santéRécapitulatif : boutique d’améliorations5Sauvegarder avec PlayerPrefs
Enregistrer un nombreCharger avec une valeur par défautMeilleur scoreEnregistrer les paramètresRécapitulatif : les pièces à la banque