Récapitulatif : fenêtre contextuelle de succès
Fait partie de la section Architecture de jeu dans Unity du Journey Unity de Coddy. Leçon 14 sur 50.
Défi
FacileDes pièces sont éparpillées dans la cour, et les flèches déplacent le Player (Player.cs, prêt). Ajoute au jeu des succès qui s’affichent à l’écran. Écris trois scripts ; la scène relie déjà leurs champs et connecte la liste On Unlocked (String) de Achievements à AchievementPopup.Show sur le HUD.
Collector(sur le Player) ramasse chaque objet portant l’étiquetteCoinqu’il touche, le supprime et annonce le nouveau total avec un événement C# publicOnCoinsChangedqui transmet un int. Il ne sait rien des succès.Achievementsécoute soncollectoruniquement lorsqu’il est actif. À 1 pièce, il débloqueFirst Coin, à 3Pocket Moneyet à 6Coin Hoarder. Chaque déblocage déclenche son champ UnityEventonUnlocked, qui transmet le titre (une chaîne).AchievementPopup.Show(string title)affichepanel, avectitleTextindiquantUnlocked: First Coin, puis le masque aprèsshowTime(2) secondes. Si Show est appelé alors que le panneau est affiché, le nouveau titre apparaît et le délai de 2 secondes repart.
Appuie sur Play, ramasse les six pièces, puis clique sur Check.
Essayez vous-même
using UnityEngine;
public class Achievements : MonoBehaviour
{
public Collector collector;
}
Toutes les leçons de Architecture de jeu dans Unity
1Des composants, pas des hiérarchies
Des composants simplesUn script de base pour les ennemisDes composants abstraitsDes composants qui fonctionnent ensembleRécapitulatif : tourelle modulaire4Données sérialisées
Classes sérialisablesListes dans l’inspecteurÉnumérations dans l’inspecteurRécapitulatif : table de butin7Machines à états
Les états sous forme de classesUne machine à étatsTransitionsLes cerveaux des ennemisRécapitulatif : états d’une porte10Projet : Survivant de l’arène
Le hérosTypes d’ennemis2Interfaces dans Unity
IDamageableInterfaces et TryGetComponentGetComponentsRécapitulatif : touche d’interaction5ScriptableObjects
Assets de donnéesStatistiques des armesParamètres partagésLes vagues sous forme de donnéesRécapitulatif : base de données d’objets3Événements
Événements C# dans UnityS’abonner dans OnEnableChamps UnityEventLes événements pilotent l’interface utilisateurRécapitulatif : fenêtre contextuelle de succès