So erstellst du einen Punktezähler, der an die Bewegung des Spielers gekoppelt ist.
Erstelle für ein Text-UI in Unity ein neues Script, namens Score. Zuerst baust du eine Referenz zum Spieler auf:
public Transform player;
Transform gibt Position, Skallierung usw. an.
Unter Update fügen wir ein: player.position.z;
Es geht somit um die Position des Spielers auf der Z-Achse. Diese sollte 0 betragen.
Der erste Teil refferiert vom Score auf den Spieler.
Jetzt folgt die Referenz auf das UI.
Dafür verwendest du:
using UnityEngine.UI;
Die nächste benötigte Variable ist:
public Text
Text wird verwendet, da die verantwortliche Komponente für den Highscore der Text ist.
Anschließend benennst du den Text mit: scoreText;
Unter voide Update kann jetzt der scoreText. eingefügt werden. mit scoreText.text sagst du dem PC, dass sich der Text verändert.
Dies setzt du gleich mit der Spielerposition: = player.position.z;
Die Spielerposition muss in Text konviertiert werden. Dafür benötigst du zusätzlich eine Stringfunktion und ergänzt: .ToString()
Ziehe die Textkomponente in das neu entstandene Feld:
Jetzt fügst du in die Klammer der Stringkomponente eine „0“ ein. Damit sagst du dem System, dass du nur ganze Zahlen möchtest.
Damit Unity die Pixel optimiert, kannst du zusätzlich Pixel perfect aktivieren.
Das fertige Script sieht folgendermaßen aus:
Originally posted 2020-06-07 12:19:00.