Menu
CoddyTech

Contra el reloj

Parte de la sección Física y jugabilidad del Journey de Unity de Coddy. Lección 31 de 63.

challenge icon

Desafío

Intermedio

Añade el reloj. Conserva todo lo de los pasos anteriores y añade a Ball:

  • public float timeLimit = 60f; (el Inspector establece 30) y public float timeLeft;. Al ser público, timeLeft aparece en el Inspector, donde puedes observar cómo va disminuyendo.
  • Cuando empieza el juego, timeLeft es timeLimit. Cada fotograma, mientras esté por encima de 0, disminuye en el tiempo del fotograma.
  • Cuando llega a 0, se mantiene exactamente en 0 y la bola registra Time's up! Score: 5 una vez, junto con su puntuación.
  • Cuando se acaba el tiempo, las flechas ya no empujan la bola.

Pulsa Play y comprueba cuántos puntos consigues en 30 segundos; después, pulsa Check.

Pruébalo tú mismo

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);
    }
}

Todas las lecciones de Física y jugabilidad