Atividade 8 - Fazendo os Inimigos Atirarem
Agora vamos fazer com que os inimigos atirem de volta no jogador.
Cada inimigo vai atirar aleatoriamente, e a dificuldade (que mais tarde vai aumentar a cada nível) é definida por com que frequência eles atiram.
O disparo do inimigo é bem parecido com o do jogador. Vamos criar um arquivo enemyBeam.js
muito parecido com o playerBeam.js
, mudando apenas alguns nomes de variáveis e valores:

Vamos usar o mesmo sprite e animação para os tiros do jogador e dos inimigos.
Porém, na implementação, vamos criar um grupo separado para os projéteis dos inimigos:

Também precisamos criar uma variável de dificuldade para o jogo (explicaremos mais sobre ela depois, mas por enquanto ela vai garantir que o inimigo atire):

- Recomendamos definir
difficulty
como 1000. - Nesse caso, o número aleatório vai de 1 até 1000. Somente se o número sorteado for 1, o inimigo atira.
- Se você definir
difficulty
como 1, o inimigo vai atirar continuamente.
Para fazer os inimigos atirarem aleatoriamente, vamos criar um método enemyShoot()
:

E chamá-lo dentro do método update()
:

Isso cria novos projéteis de inimigos numa taxa aleatória.
Depois, precisamos atualizar os projéteis dos inimigos, garantindo que cada disparo seja removido quando sair da tela.
Você precisa atualizar o código dos disparos no enemyBeam.js
da mesma forma que fez no playerBeam.js
:

Também é necessário atualizar cada projétil de inimigo na Scene 2, de forma semelhante à atualização dos projéteis do jogador:

No final, a jogabilidade deve ficar parecida com isto: