Menu
CoddyTech

Blocos em Queda

Parte da seção Noções básicas de scripting no Unity do Journey de Unity da Coddy. Lição 61 de 67.

challenge icon

Desafio

Médio

Agora os blocos caem do céu. Mantenha a movimentação da lição anterior e adicione a Runner:

  • Três campos preenchidos pelo Inspector: blockPrefab (um GameObject: a cena atribui a ele o prefab Block), spawnEvery (1) e fallSpeed (5).
  • Uma List<GameObject> chamada blocks que guarda todos os blocos que você gera.
  • A cada spawnEvery segundos, gere um Block em uma posição x aleatória entre -laneEdge e laneEdge, em y = 10 e z = 0, e adicione-o a blocks.
  • A cada quadro, mova todos os blocos em blocks para baixo a fallSpeed unidades por segundo.

Os blocos ainda não podem machucar o corredor. Pressione Play e observe-os cair; depois, clique em Check.

Experimente você mesmo

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 as lições de Noções básicas de scripting no Unity