Loops e Matrizes em JavaScript para Jogos
No mundo da programação, uma matriz (ou array) é uma estrutura de dados que pode conter vários valores ao mesmo tempo. Esses valores podem ser números, strings ou, no caso de jogos, objetos.
Pense em uma matriz como uma caixa mágica onde você guarda seus itens (neste caso, seus inimigos, balas ou outros elementos do jogo). Cada item na matriz tem uma posição, chamada de índice, que começa a ser contado a partir do número 0.
// Matriz representando inimigos no jogo
// 0 1 2 3
var inimigos = ["Inimigo1", "Inimigo2", "Inimigo3", "Inimigo4"];
// Exibindo os itens da matriz e seus respectivos índices
for (var i = 0; i < inimigos.length; i++) {
console.log("Índice " + i + ": " + inimigos[i]);
}
Índice 0: Inimigo1
Índice 1: Inimigo2
Índice 2: Inimigo3
Índice 3: Inimigo4
Como Usar o Loop for para Percorrer uma Matriz
Agora, vamos colocar a mão no código! Um dos métodos mais eficientes para manipular os elementos dentro de uma matriz é o loop for
. Esse loop percorre cada elemento, permitindo que você execute ações específicas para cada um.
Aqui está um exemplo básico de como você pode usar um loop for
para acessar e manipular elementos em uma matriz, como nossos inimigos em um jogo:
// Detecta colisões entre o jogador e as frutas/inimigos
for (var x = 0; x < grupoapples.length; x++) {
if (jogador.isTouching(grupoapples[x])) {
grupoapples[x].destroy();
Points = Points + 1; // Incrementa pontos ao coletar maçãs
}
}
Destrinchando o Código Passo a Passo
Passo 1: Iniciando o Loop for
for (var x = 0; x < grupoapples.length; x++)
Aqui, o loop está percorrendo nossa matriz chamada grupoapples
, que contém todos as maças do jogo. O loop começa no índice 0 e continua até o tamanho da matriz (ou seja, o número total de maças), que é obtido com grupoapples.length
.
Passo 2: Verificando a Colisão
if (jogador.isTouching(grupoapples[x]))
Para cada maça na matriz, estamos verificando se colidiu com o jogador usando o método isTouching()
. Se isso for verdade, significa que o jogador e a maça estão “se tocando” na tela, e podemos passar para a próxima etapa.
Passo 3: Incrementando pontos
Points = Points + 1; // Incrementa pontos ao coletar maçãs
Assim que o jogador toca em uma maça, os pontos são incrementados.
Passo 4: Destruindo as maças
grupoapples[x].destroy();
Por fim, a maça que colidiu com o jogador é removido da matriz e da tela do jogo!