logotipo Blog Giovani Da Cruz
Trilhas

Tutorial App Inventor – parte final

4 min de leitura · publicado em 04/11/2022 364 visualizações

Oi Gente, tudo bem com vocês?

Finalmente chegamos na última parte do nosso aplicativo (jogo), consequentemente a parte mais desafiadora, pois é a parte que vamos fazer a lógica do jogo.

Sem enrolação, vamos nessa.

Primeiro vamos acessar a parte dos blocos, fica ao lado direito

Designer-Blocks

 

Vou deixar aqui um vídeo para vocês poderem acompanhar o processo de criação da parte lógica.

Segue o link: https://youtu.be/_MuVJyuMkas

 

Movendo o foguete

Neste jogo, o usuário irá mover o foguete de um lado para o outro. Isso significa que apenas mudaremos a direção X do sprite do foguete. Para fazer isso, usaremos o manipulador de eventos RocketSprite.Dragged. Quando o foguete for arrastado, ajustaremos sua propriedade X para ser o X atual para o qual arrastamos o sprite.

Código para mover o foguete

 

Programando o comportamento do Bullet

Existem vários recursos que queremos que nossa bala tenha neste jogo. Queremos que ele dispare do foguete, colida com o disco e fique invisível após a colisão e antes de ser atingido.

Vamos começar usando o bloco Screen1.initialize. Quando a tela for inicializada, programaremos o marcador para ficar invisível. Fazemos isso definindo a propriedade de visibilidade do marcador como False.

Código para deixar invisível a bolinha

Em seguida, queremos ter certeza de que a bala apareça novamente quando dispararmos do foguete. Quando tocamos o foguete, queremos que a bala comece a se dirigir ao disco. Faremos isso usando o manipulador de eventos RocketSprite.Touched. Quando o foguete é tocado, não queremos apenas definir o foguete para ser visível, mas também queremos definir a velocidade e a direção do foguete. Heading é um valor de 0 a 360 que indica para qual direção o sprite deve estar se movendo. 0/360 está à esquerda, 90 está para cima, 180 está à direita e 270 está para baixo. A velocidade é medida em pixels/seg.

Código para o disparo do lazer

A última coisa que precisamos programar é o que acontece quando a bala atinge o disco. Usaremos o manipulador de eventos Bullet.CollidedWith. Este evento é chamado sempre que a bala colide com outro sprite. Como nosso sprite de foguete está travado em um Y na parte inferior da tela, a bala nunca colidirá com o foguete e apenas com o disco. Na colisão, queremos que duas coisas aconteçam. 1. A pontuação deve aumentar em 1. 2. A bala deve ficar invisível.

Código para acerto no disco voador

Se você começou a testar este jogo, deve ter notado que, uma vez que você atira a bala, ela não parece permitir que você atire novamente. Precisamos programar a bala para retornar ao local em frente ao foguete quando o dispararmos. Podemos fazer isso usando o bloco Bullet.MoveTo.

Código do disparo do lazer

Você deve ter notado que se você errar o disco, a bala se move para o topo da tela e fica presa lá até você tentar atirar novamente. Para fazer o marcador desaparecer quando atingir a borda superior de nossa tela, precisamos usar o manipulador de eventos Bullet.EdgeReached.

Código para quando o disparo erra o alvo

 

Programando o botão de reset

Às vezes, os usuários podem querer reiniciar o jogo e redefinir sua pontuação. Quando isso acontece, precisamos definir a pontuação de volta para 0.

código do botão reiniciar

Aumentando a Dificuldade – Mudando a Posição do Pires
Vamos tornar o jogo um pouco mais desafiador! Agora, quando a bala colidir com o disco, vamos mudar a localização do disco. O pires manterá o mesmo valor de Y, então só teremos que alterar o X. Podemos fazer isso usando o bloco aleatório.

código para acerto no disco voador

Para tornar ainda mais difícil, também mudaremos a posição do pires quando o Timer disparar.

movendo o disco automaticamente

Programa Completo

Aqui está o programa SpaceInvaders completo.

código completo

 

Caso você não consiga criar nada, estarei deixando aqui a baixo um link para você baixar o projeto, juntamente com um vídeo explicando como faz para importar ele dentro do App Inventor.

Download do projeto completo

Link do vídeo onde é ensino a importar o projeto: https://youtu.be/aB8YD-kuS74

 

Espero que tenham gostado deste projeto que fizemos, em breve teremos outros posts que vamos criar projetos mais legais.

 

Beleza pessoal?

Espero que tenham gostado sobre como criar um jogo (Space Invaders) com o App Inventor!

Dúvidas ou Sugestões? Deixe o seu comentário!

Um abraço e até o próximo post. Valeu!

 

#App Inventor

#ScapeInvaders

#GiovaniDaCruz

Deixe um comentário

Seu e-mail não será publicado.