Menu
CoddyTech

Bloques que caen

Parte de la sección Fundamentos de scripting en Unity del Journey de Unity de Coddy. Lección 61 de 67.

challenge icon

Desafío

Intermedio

Ahora los bloques caen del cielo. Mantén el movimiento de la lección anterior y añade a Runner:

  • Tres campos que rellena el Inspector: blockPrefab (un GameObject: la escena le asigna el prefab Block), spawnEvery (1) y fallSpeed (5).
  • Un List<GameObject> llamado blocks que recuerda cada bloque que generas.
  • Cada spawnEvery segundos, genera un Block en una x aleatoria entre -laneEdge y laneEdge, en y = 10 y z = 0, y añádelo a blocks.
  • En cada fotograma, mueve hacia abajo cada bloque de blocks a fallSpeed unidades por segundo.

Los bloques todavía no pueden hacerle daño al corredor. Pulsa Play y observa cómo caen; después, pulsa Check.

Pruébalo tú mismo

using UnityEngine;

public class Runner : MonoBehaviour
{
    [SerializeField] private float speed = 6f;
    [SerializeField] private float laneEdge = 4f;

    void Update()
    {
        Vector3 p = transform.position;
        p.x += Input.GetAxisRaw("Horizontal") * speed * Time.deltaTime;
        p.x = Mathf.Clamp(p.x, -laneEdge, laneEdge);
        transform.position = p;
    }
}

Todas las lecciones de Fundamentos de scripting en Unity