Projeto 4 - Pet Digital

Neste projeto, vamos desenvolver um jogo em que o ator se movimenta quando um dos outros atores é clicado, fazendo o ator ir até o outro ator e depois voltar ao ponto original. O jogador tem que manter a felicidade do ator principal, o Coelho, para que o jogo não termine.

A mecânica do jogo é muito simples: o jogador pode aumentar essa felicidade de dois modos: dando comida ao coelho ou brincando com ele. A versão que vamos construir é composta por 3 atores: a bola, a cenoura e o coelho. Veremos mais à frente que o código por trás da cenoura e da bola serão os mais simples possíveis, graças a uma nova função que aprenderemos a usar, os blocos Transmita e Quando Receber.

Do ponto de vista de programação, esses novos blocos correspondem ao que é chamado de “evento” em linguagens de programação comerciais, ou seja, algo que, ao ocorrer, dispara um conjunto de comandos programados para reagir a esse evento, nesse caso, acontecerá quando o jogador clica na bola ou na cenoura.

Imagem Projeto 4
Baixar Jogo (Pet Digital)

Blocos Utilizados

Código da Bola

O Ator Bola

Começaremos com o código que controla apenas a bola e a cenoura, visto que, como dito anteriormente, ele são muitos simples. O código que criaremos enviará um sinal para o ator coelho por meio do bloco Transmita, que será ativado por meio do toque, logo tem que estar conectado ao bloco Quando Tocar selecionado no ator bola.

O bloco Transmita, quando ativo, envia uma mensagem que pode ser capturada por todos os outros atores, funciona como se fosse um meio de comunicação entre os atores. Quando a bola é tocada, o ator bola envia um sinal que daremos o nome de “brincar”, então esse sinal poderá ser recebido pelos atores que tenham o bloco Quando Receber selecionado no “brincar” como veremos daqui para frente. A posição inicial deste ator será na parte esquerda da tela, para que o coelho ande até ele.

Código da Cenoura

O Ator Cenoura

Para o ator Cenoura, teremos quase o mesmo código do ator bola, porém, quando tocarmos no ator, ele emitirá outro sinal, o qual chamaremos de “comer”. A posição inicial deste ator será na parte esquerda da tela, para que o coelho ande até ele.

Código do Coelho

O Ator Coelho

O código do coelho será um pouco mais denso, visto que teremos que dividi-lo em 3 partes: quando tocarmos na bola, quando tocarmos na cenoura, e o elemento da felicidade do coelho. Como estamos trabalhando a nova dupla de blocos Transmita e Quando Receber, vamos começar por eles.

Para o sinal do ator Bola, colocaremos um bloco Quando Receber e selecionaremos o sinal de brincar, então quando a bola for tocada, o coelho irá virar na direção que está a bola com o bloco Defina Direção e irá até a bola com o bloco Vá Para (Ator) selecionado na bola. Logo após, tocará um som de bola (boing) para mostrar que estão interagindo e aumentaremos sua felicidade em 5 com o bloco Mude Variável (A variável felicidade será definida no último bloco). Então coelho se inclinará para retornar ao ponto inicial com o bloco Defina Direção e voltará para a posição inicial (no nosso caso X:160 Y:70) com o bloco Vá Para, finalmente, definiremos sua direção para a direita para que ele fique olhando para o mesmo local que estava antes.

Para o sinal do ator Cenoura, colocaremos um bloco Quando Receber e selecionaremos o sinal de comer, então quando a cenoura for tocada, o coelho irá virá na direção que está a cenoura com o bloco Defina Direção e irá até a cenoura com o bloco Vá Para (Ator) selecionado na cenoura. Logo após, tocará um som de comer (mastigada) para mostrar que estão interagindo e aumentaremos sua felicidade em 5 com o bloco Mude Variável. Então coelho se inclinará para retornar ao ponto inicial com o bloco Defina Direção e voltará para a posição inicial (no nosso caso X:160 Y:70) com o bloco Vá Para, finalmente, definiremos sua direção para a direita para que ele fique olhando para o mesmo local que esta antes.

Para a criação da “felicidade” utilizaremos o bloco Quando Play e criaremos a variável felicidade começando em 20 com o bloco Defina Variável e dentro de um loop Sempre faremos com que o coelho perca felicidade a cada segundo (no nosso caso 2 segundos), então temos um bloco Espere para colocar a cada quantos segundos ele perderá felicidade e o bloco Mude Variável para subtrair 1 da felicidade. Por último temos um tipo de “fim de jogo”, um condicional Se dentro do loop para verificar sempre se a felicidade chegou a 0, caso isso aconteça, o celular vibrará com o bloco Vibre e mostrar uma mensagem de fim de jogo com o bloco Diga e então encerrar o jogo com o bloco Pare

Para o Futuro