Hardgame #5 – Destruindo inimigos e somando pontos

Beleza pessoal?

Na semana passada adiantamos bastante nosso game, adicionamos movimento e os disparos.
Agora vamos fazer os disparos atingir os inimigos e destruí-los, com isso, adicionar pontos ao placar!

Para que não viu o ultimo tutorial:
http://hardcodigo.com.br/hardgame-4-disparos-e-inimigos/


1. Mais inimigos

Para começar vamos adicionar mais inimigos, para replicar o inimigo que já está na tela basta deixá-lo selecionado e segurar a tecla CTRL, assim quando arrastar o objeto ele será replicado. Para ajustar o movimento acerte as propriedades: Period e Magnitude. Aqui utilizei o valor 8 para Period e 100 para Magnitude.
print_space3_1
Depois de alinhar os inimigos e ajustar o movimento é hora de nossos disparos destruir as naves conforme elas são atingidas.

2. Destruindo inimigos
Destruir os inimigos é bem simples, vamos abrir o Event Sheet ‘Jogo’ e nele vamos programar a colisão dos disparos. Para isso montamos os eventos abaixo:
print_space3_21. Para disparar o evento vamos utilizar o objeto Disparo, em seguida selecionamos On collision with e selecionamos o objeto inimigo. Ou seja, sempre que um objeto do tipo disparo colidir com um objeto do tipo inimigo esse evento será acionado.
2. Nessa ação destruímos o objeto disparo.
3. Quando o objeto disparo é destruído o objeto inimigo atingido vai se mover 5 pixels no angulo de 270º, isso vai empurrá-lo para trás.
4. O sistema irá aguardar 0.2 segundos para que o objeto termine de se mover.
5. O objeto inimigo atingido finalmente é destruído.

3. Placar
Para montar o placar vamos criar uma nova variável global com o nome de placar, seu valor vai iniciar em 0. No canto da tela vamos adicionar um objeto do tipo Text com o nome de placar.
print_space3_3
Em seguida montamos o seguinte ajuste na tela do Event Sheet ‘Jogo’:
print_space3_4
Criamos a variável placar, em seguida configuramos no evento de destruição do inimigo a adição de 1 na variável do placar. Em seguida vamos mudar o conteúdo do objeto texto Placar e definir seu valor de acordo com a variável, para isso precisamos usar o comando str() que converte o valor inteiro para um valor do tipo texto.

E assim terminamos o tutorial de hoje. Nosso game já está bem encaminhado agora que o placar está funcionando e os inimigos estão sendo destruídos. Na semana que vem vamos configurar os inimigos para revidar os disparos e destruir a nave do jogador.

Link para download do projeto do game:
https://www.dropbox.com/s/13yrpxl9yrqla17/space-invaders_aula_4.capx

Até semana que vem!

Publicado por

Felipe Do E. Santo

Professor, Mozilla Tech Speaker, Mozilla Rep, Desenvolvedor Web e Gamer nas horas vagas.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.