Menu
CoddyTech

Schlag die Uhr

Teil des Abschnitts Physik und Gameplay der Unity-Journey von Coddy. Lektion 31 von 63.

challenge icon

Aufgabe

Mittel

Füge die Uhr hinzu. Behalte alles aus den vorherigen Schritten bei und ergänze Ball:

  • public float timeLimit = 60f; (im Inspector werden 30 eingestellt) und public float timeLeft;. Da timeLeft öffentlich ist, wird es im Inspector angezeigt, wo du den Countdown beobachten kannst.
  • Wenn das Spiel startet, entspricht timeLeft dem Wert von timeLimit. 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: 5 mit 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