Há duas semanas atrás lancei o desafio aos alunos: desenvolver um jogo que brincasse com as potências simples.
Neste post vou tentar explicar um pouco o que fiz.
Em que consiste:
Este jogo consiste na apresentação de 6 potências. Quando o sapo entra em cena, as potências também entram e assim que o sapo dá indicação para o jogo começar, aparece um número no palco. O utilizador deverá clicar em cima da potência que lhe corresponde: se o utilizador acertar, avança para o próximo número, se errar, deve tentar novamente até acertar.
Assim que o utilizador identificar corretamente os números para cada potência, o jogo termina.
Objetos utilizados:
- 1 palco com 2 cenários;
- 14 sprites: 1 sprite para narrador (sapo); 6 sprites de potências; 6 sprites de números (resultado das potências); 1 sprite para narrador invisível.
Palco:
- o palco tem dois cenários: o cenário inicial que identifica o nome do jogo e tem um logótipo associado - o sapo e o lápis; o 2º cenários é simples, tudo branco, para receber os sprites ao longo do jogo.
Código do palco |
- o sapo vai ser o nosso narrador: vai orientar o jogo, dando indicações ao utilizador de como jogar e relembrando alguns conceitos;
- o sapo tem três ações neste jogo: quando começa o jogo, o sapo esconde e volta ao traje inicial; de seguida, assim que invocado, dá as indicações ao utilizador; por fim, faz o fecho do jogo, saudando o utilizador quando chega ao fim;
- este sprite tem 2 trajes: o sapo normal e o sapo a piscar o olho.
Código do sprite sapo |
Sprite potência
- cada potência tem o mesmo código, mudando só o número que lhe corresponde;
- a potência tem quatro ações neste jogo: quando começa o jogo, a potência esconde; de seguida, assim que o sapo entra em ação, as potências aparecem no palco;
- a terceira ação diz respeito ao clique do rato: cada vez que o utilizador clicar na potência, é feita a verificação do número que está no palco. Esta validação é feita através do teste feito à variável potência que tem o valor do número que se encontra em palco: o resultado desta validação é enviado para o narrador invisível, que vai transmitir a mensagem ao utilizador;
- a quarta ação diz respeito ao fim do jogo, a potência esconde.
- a potência 8^4 é a potência do último número aparecer no palco e como tal, assim que o utilizador realizar o clique correto sobre si, esta potência não invoca o próximo número mas sim o sapo, para proceder ao fim do jogo.
Código de 2^3 |
- cada número tem três ações neste jogo: quando começa o jogo, os números escondem; de seguida, assim que invocado, o número surge no palco - no caso do número 8, é o sapo anunciá-lo e os outros nº são anunciados pelas potências;
- o número esconde assim que entrar o próximo em cena.
Código do número 8 |
- este sprite existe para que as mensagens resultantes das ações do utilizador sejam dadas pelo sapo, isto é, de cada vez que o utilizador clica em cima de uma potência, para que a mensagem seja dita pelo sapo em vez da potência, criei um ponto de cor verde, que coloquei em cima do sapo, de forma a que este não seja perceptível. Desta forma, dá a sensação que é o sprite sapo a enviar as mensagens ao utilizador;
- este sprite tem três ações neste jogo: quando começa o jogo, esconde e inicializa a variável answer a false; de seguida, assim que invocado pelo sprite potência, é feita a análise do tipo de resposta dada pela potência que o invoca: caso a resposta seja true, é feita a verificação ao número que se encontra no palco. Esta condição existe para que o sapo avise o utilizador que chegou ao fim. Neste jogo, o último número aparecer em palco é o 4096, logo, quando o utilizador acertar na potência correta deste número, o sprite manda a mensagem que o jogo chegou ao fim.
- quando o sapo anunciar o fim, este sprite esconde.
Código do narrador invisível |
Provavelmente existe uma versão mais simplificada para este cálculo, mas estando nós no inicio da aplicação desta tecnologia, acho que para começo não está mau ;).
Caso o leitor encontre uma solução mais otimizada, por favor partilhe ;).
Todas as sugestões são bem vindas.
0 comentários:
Enviar um comentário