Schlag die Uhr
Teil des Abschnitts Physik und Gameplay der Unity-Journey von Coddy. Lektion 31 von 63.
Aufgabe
MittelFüge die Uhr hinzu. Behalte alles aus den vorherigen Schritten bei und ergänze Ball:
public float timeLimit = 60f;(im Inspector werden 30 eingestellt) undpublic float timeLeft;. DatimeLeftöffentlich ist, wird es im Inspector angezeigt, wo du den Countdown beobachten kannst.- Wenn das Spiel startet, entspricht
timeLeftdem Wert vontimeLimit. In jedem Frame, in dem der Wert über 0 liegt, wird die Framezeit davon abgezogen. - Wenn der Wert 0 erreicht, bleibt er genau bei 0, und der Ball gibt einmal
Time's up! Score: 5mit seinem Punktestand aus. - Sobald die Zeit abgelaufen ist, bewegen die Pfeiltasten den Ball nicht mehr.
Drücke Play und schau, wie viele Punkte du in 30 Sekunden erzielst, dann Check.
Probier es selbst
using UnityEngine;
public class Ball : MonoBehaviour
{
public float force = 10f;
public int score;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
void FixedUpdate()
{
float x = Input.GetAxis("Horizontal");
float z = Input.GetAxis("Vertical");
rb.AddForce(new Vector3(x, 0f, z) * force);
}
public void AddScore(int points)
{
score += points;
Debug.Log("Score: " + score);
}
}
Alle Lektionen in Physik und Gameplay
1Rigidbody
Schwerkraft und MasseMit AddForce schiebenMit einem Impuls springenFixedUpdate für PhysikGeschwindigkeitKinematische KörperRückblick: Startrampe2Kollisionen
OnCollisionEnterWas habe ich getroffen?Beim Aufprall zerbrechenAuf dem Boden stehenAbprallen und ReibungCollider-FormenRückblick: Zerstörbare Wand5Projekt: Münzrausch
Der rollende BallMünzen zum Sammeln