Rückblick: Popup-Timer
Teil des Abschnitts Spielarchitektur in Unity der Unity-Journey von Coddy. Lektion 17 von 64.
In diesem Kapitel wurden Skripte mit Ereignissen verbunden: C#-Ereignisse für Code, der auf Ereignisse wartet, UnityEvents für Zeilen, die im Inspector verknüpft werden, und OnEnable mit OnDisable, damit nur im aktiven Zustand auf Ereignisse gewartet wird.
Aufgabe
EinfachLass das Erfolgs-Popup von selbst verschwinden.
- Füge in
AchievementPopupprivate float timeLeft;hinzu und setze es inShowaufshowTime. - Ziehe in
Update(), solangetimeLeftgrößer als 0 ist,Time.deltaTimedavon ab und rufepanel.SetActive(false)auf, wenn die Zeit abgelaufen ist.
Drücke „Spielen“ und sammle eine Münze ein: Das Popup verschwindet 2 Sekunden später. Klicke dann auf „Prüfen“.
Probier es selbst
using UnityEngine;
using TMPro;
// Zeigt den Titel eines freigeschalteten Erfolgs auf dem HUD an.
public class AchievementPopup : MonoBehaviour
{
public GameObject panel;
public TMP_Text titleText;
public float showTime = 2f;
public void Show(string title)
{
titleText.text = "Unlocked: " + title;
panel.SetActive(true);
}
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Spielarchitektur in Unity
1Komponenten statt Hierarchien
Kleine KomponentenEin Basis-GegnerskriptAbstrakte KomponentenZusammenwirkende KomponentenRückblick: Modulares GeschützRückblick: Zwillingskanone4Serialisierte Daten
Serialisierbare KlassenListen im InspectorEnums im InspectorRückblick: Loot-TabelleRückblick: Beute auswürfeln2Schnittstellen in Unity
IDamageableSchnittstellen und TryGetComponentGetComponentsZusammenfassung: InteraktionstasteZusammenfassung: Nächstes in Reichweite5ScriptableObjects
Daten-AssetsWaffenwerteGemeinsame EinstellungenDen Wind speichernWellen als DatenRückblick: Item-DatenbankRückblick: Im Shop einkaufen8Wiederverwendbarer Code
ErweiterungsmethodenEin generisches SingletonGenerische HilfsmethodenRückblick: FindNearestÜbe selbstständig: Unity-Playground