quinta-feira, 8 de setembro de 2011

Jogo BrainTrainer para Android - Parte 1


Bom dia a todos,

Neste post iremos falar sobre como fazer um joguinho no estilo BrainTrainer, ou traduzindo ao pé da letra, Treinador de Cérebro. Para não ter que ficar dando print das telas, irei postar o código inteiro para download. Assim também facilitamos o tráfego no blog. Outro ponto importante é que iremos dividir o assunto deste post em três. No primeiro iremos discutir um pouco sobre o estilo de jogo ao qual BrainTrainer segue. No segundo, montaremos o layout do game, isto é, codificaremos o arquivo 'main.xml'. Aqui gostaria de deixar uma ressalva: eu sou péssimo em layout, então o jogo, como vocês poderão notar, irá ficar com uma cara péssima, mas a jogabilidade ficará boa (assim espero). E por último iremos tratar do código da classe principal.

Então vamos falar um pouco sobre o BrainTrainer e a ideia que seguiremos para implementar nosso jogo, afinal é muito importante antes de começar a programar, definir o que será implementado, as funcionalidades e outras coisas que no meio da implementação pode nos dar dor de cabeça caso não a tenhamos definido de maneira sucinta.

BrainTrainer, em linhas gerais, consiste num jogo de perguntas rápidas no qual o usuário deve responder o mais rápido que conseguir, logicamente acertando as questões. No nosso game, no entanto, não iremos trabalhar com um limite de tempo, mas caso você, leitor, deseje tornar o jogo mais desafiante, pode fazê-lo facilmente apenas com o conhecimento em Java e na classe Timer. Já joguei jogos nesse estilo desde memorizar sequências a fazer cálculos e meu preferido era justamente o último citado. Então vamos definir alguns pontos importantes do nosso jogo:
    • Teremos dois números que serão sorteados aleatoriamente num intervalo de 1 ao 10. Podemos mais tarde aumentar esse intervalo para tornar o desafio mais difícil, contudo vamos deixar com esse intervalo mesmo.
    • A definição da operação também deverá ser aleatória. Iremos trabalhar com três delas, então precisaremos sortear entre três números, no qual cada um representará uma determinada operação.
    • O jogo terá uma pontuação. Para facilitar, faremos com que a pontuação seja incrementada em 50 nos acertos e decrementada o mesmo tanto nos erros.
    • Um campo de entrada para o usuário digitar a resposta da expressão que será sorteada.

Nosso jogo será basicamente isso, então para implementá-lo, iremos utilizar duas variáveis para armazenar cada número sorteado separadamente. Outra variável irá armazenar o “valor” do sinal da expressão. Como teremos um “score”, iremos precisar de uma variável para armazenar o valor correspondente.

Definido os elementos do nosso jogo, poderemos passar para o layout que será visto no próximo post. Uma ótima semana para todos.

Abraços.

Nenhum comentário:

Postar um comentário