Menu
CoddyTech

A Parede

Lição 5 de 19 do curso Jogo Unity: Quebra-Tijolos da Coddy.

Os tijolos ficam dispostos em uma grade: linhas de cima para baixo, colunas da esquerda para a direita, cada uma sendo uma cópia do prefab Brick criado em dois loops aninhados. Primeiro, uma linha:

float left = -(columns - 1) * spacingX / 2f;
for (int col = 0; col < columns; col++)
{
    Vector3 pos = new Vector3(left + col * spacingX, topY, 0f);
    Instantiate(brickPrefab, pos, Quaternion.identity, wall);
}

Entre n colunas há n menos 1 espaços, então a primeira fica à esquerda por metade de (n - 1) * spacing: 5 colunas com distância 2 ficam nas posições -4, -2, 0, 2 e 4. Cada linha fica spacingY mais abaixo que a anterior. O quarto argumento de Instantiate é o objeto pai, então cada tijolo fica sob o objeto Wall. Com um tipo de script como Brick no campo do prefab, Instantiate retorna o script do novo tijolo.

challenge icon

Desafio

Médio

Construa uma parede de tijolos centralizada.

  1. Em GameManager, adicione public Brick brickPrefab;, public Transform wall;, rows = 5, columns = 9, spacingX = 1.75f, spacingY = 0.75f, topY = 6f.
  2. BuildWall(): um tijolo filho de wall para cada linha e coluna, nas coordenadas x left + col * spacingX, y topY - row * spacingY, z 0, com left = -(columns - 1) * spacingX / 2f.
  3. Start() chama BuildWall().

Pressione “Jogar”: 45 tijolos ficam dispostos em uma grade (eles ainda não quebram). Depois, pressione “Verificar”.

Experimente você mesmo

using UnityEngine;

public class GameManager : MonoBehaviour
{
    public static GameManager Instance;

    void Awake()
    {
        Instance = this;
    }

    // Mais tarde: a parede de tijolos, a pontuação, as vidas e os níveis.
}

Todas as lições de Jogo Unity: Quebra-Tijolos

Pratique por conta própria: Playground de Unity