segunda-feira, 16 de abril de 2018

Trabalhho PARTE I


O jogo escolhido para ser desenvolvido foi o Plaque Attack lançado em 1983 para o console ATARI 2600.
 
Estabelecendo o modelo natural

Nesse jogo o jogador controla um tubo de pasta de dente que flutua dentro de uma boca e “atira”. Seu objetivo é eliminar “alimentos inimigos” como hambúrgueres, sorvetes e doces que tentam chegar aos dentes.
O jogador deve usar o  tubo para lançar jatos de pasta dental nos inimigos que, inicialmente surgem de cima para baixo numa velocidade reduzida, em fila de três elementos dispostos horizontalmente. Caso não consiga atingir os inimigos, os dentes inicialmente dispostos num total de 4 na parte inferior e 4 na superior, serão destruídos a medida que os “alimentos inimigos” os tocam.
Para avançar na primeira fase é necessário que jogador consiga destruir os alimentos até atingir a pontuação de 120, sendo que para cada acerto são contabilizados 5 pontos. Para cada dois mil pontos conseguidos pelo jogador, o game irá doar um novo dente. A cada dente atingido a direção dos inimigos é invertida, necessitando do jogador uma atenção especial para não deixar que dentes do lado oposto sejam atingidos.
A velocidade do jogo aumenta a medida que ocorre o avanço dos níveis das fases. A forma dos inimigos se movimentarem também começa a mudar e agora ao invés de se movimentarem em linha reta eles irão fazer uma espécie de zig-zag na tela, dificultando assim a precisão do jogador em atingir o alvo.
Resultado de imagem para imagem do plaque attack
Imagem do jogo


 Estabelecendo o modelo matemático

É possível realizar a movimentação do tubo de pasta de dentes, nosso “personagem” principal, nas direções para a parte superior da tela e para a inferior, quando automaticamente a ponta do tudo também se inverte acompanhando as mesmas direções. É possível também movimentar o tubo da direita para esquerda com incrementos de 5 pixels, porém a ponta do mesmo não acompanha esse movimento, estando sempre apontada para cima ou para baixo.
Os inimigos surgem com deslocamento a partir das laterais direita e/ou esquerda  e logo realizam o movimento até a borda inferior em linha reta sempre em fila de três ou mais elementos, porém com o avançar das fases os movimentos também são executados em pequenas diagonais.
A cada colisão com um dos dentes, os inimigos invertem a direção no eixo Y, ora decrescendo, ora aumentando o valor do incremento de  pixels no eixo. Não há colisão entre o tubo de pasta e inimigos em si. Apenas acontece colisão entre o jato  lançado pelo tubo de pasta e os alimentos.
Os elementos do protótipo do jogo basicamente podem ser desenhados utilizando-se das formas básicas como retângulos, elipses ou círculos, arcos e triângulos.
Os “dentes” do nosso jogo estão subdivididos nas partes inferior e superior da tela posicionados inicialmente a 100 pixels da extremidade esquerda da tela e distanciados uns dos outros por uma diferença também de 100 pixels totalizando 4 na parte superior e 4 na inferior. Possuem o formato retangular com 20 pixels de largura e 30 de altura.
O tudo de pasta tem as dimensões de 20 pixels de largura por 60 de altura e movimentação obedecendo os deslocamentos vertical, e horizontal ao comando das teclas de direção direita, esquerda, inferior e superior do teclado.

 
Exemplo do modelo matemático

 Estabelecendo o modelo computacional

O tipo de programação utilizada será baseada em procedimentos. A ferramenta a ser utilizada será o Processing.
Alguns procedimentos foram criados para constituir os elementos básicos do jogo. Os procedimentos desenhaTubo(),  desenhaDenteSup(),  desenhaDenteInf() e  DesenhaInimigos() criam os personagens principais e são chamadas no jogo através da função void Draw(). No primeiro procedimento o elemento criado é o tudo de pastas, no qual foi utilizado as funções nativas do processing rectMode(), rect() e triangle() além de uma estrutura condicional para que o objeto pudesse se movimentar através das teclas de direcionamento do teclado.
Para desenhar os inimigos na tela foi utilizada a função ellipse() padronizando a altura e largura para todos eles. A movimentação dos mesmos será autônoma em L ou zig-zag
.
Já para o protótipo dos dentes foram usadas as funções rectMode() e rect() com um laço de repetição para criar a quantidade de elementos necessárias, num total de três elementos. A colisão entre eles e os inimigos fará com que o dente atingido seja destruído e imediatamente os inimigos irão inverter o movimento no eixo Y (ainda nao implementado).


 
Modelo computacional

Modelos dos protótipos dos elementos do jogo:






Nenhum comentário:

Postar um comentário

Deixe aqui seu comentário