Riepilogo: popup dell'obiettivo
Fa parte della sezione Architettura dei giochi in Unity del percorso Unity di Coddy. Lezione 14 di 50.
Sfida
FacileLe monete sono sparse per il cortile e le frecce muovono il Player (Player.cs, già pronto). Aggiungi al gioco degli achievement che appaiono sullo schermo. Scrivi tre script; la scena ha già collegato i loro campi e associato l’elenco On Unlocked (String) di Achievements a AchievementPopup.Show nell’HUD.
Collector(sul Player) raccoglie ogni oggetto con tagCoinche tocca, lo rimuove e comunica il nuovo totale tramite un evento C# pubblicoOnCoinsChangedche passa un int. Non sa nulla degli achievement.Achievementsascolta il suocollectorsolo mentre è attivo. Con 1 moneta sbloccaFirst Coin, con 3Pocket Moneye con 6Coin Hoarder. Ogni sblocco invoca il suo campo UnityEventonUnlocked, che passa il titolo (una stringa).AchievementPopup.Show(string title)mostrapanel, contitleTextche visualizzaUnlocked: First Coin, e lo nasconde doposhowTime(2) secondi. Se chiami Show mentre il pannello è visibile, mostra il nuovo titolo e i 2 secondi ripartono da capo.
Premi Play, raccogli tutte e sei le monete, poi premi Check.
Provalo tu
using UnityEngine;
public class Achievements : MonoBehaviour
{
public Collector collector;
}
Tutte le lezioni di Architettura dei giochi in Unity
1Componenti, non gerarchie
Componenti piccoliUno script base per i nemiciComponenti astrattiComponenti che collaboranoRiepilogo: torretta modulare4Dati serializzati
Classi serializzabiliListe nell'InspectorEnum nell'InspectorRiepilogo: tabella del bottino7Macchine a stati
Gli stati come classiUna macchina a statiTransizioniIntelligenze dei nemiciRiepilogo: stati della porta10Progetto: Sopravvissuto nell’arena
L’eroeTipi di nemici5ScriptableObjects
Asset di datiStatistiche delle armiImpostazioni condiviseOndate come datiRiepilogo: database degli oggetti3Eventi
Eventi C# in UnityIscriviti in OnEnableCampi UnityEventGli eventi guidano l'interfaccia utenteRiepilogo: popup dell'obiettivo