Mudanças entre as edições de "Projeto POO - 2013.2"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 21: Linha 21:
 
** Curar - Remove o efeito do golpe Paralisia que tenha sido aplicado anteriormente, ou seja, a velocidade do pokemon volta ao seu nível original  
 
** Curar - Remove o efeito do golpe Paralisia que tenha sido aplicado anteriormente, ou seja, a velocidade do pokemon volta ao seu nível original  
 
* Todo pokemon possui um nível de vida que inicia no nível máximo que é 100
 
* Todo pokemon possui um nível de vida que inicia no nível máximo que é 100
* Todo pokemon possui um nível de ataque, que vai de 0 a 50 e que deve ser inversamente proporcional ao seu nível de defesa, que também vai de 0 a 50. Ou seja, quanto maior o nível de ataque, menor será o nível de defesa
+
* Todo pokemon possui um nível de ataque que vai de 0 a 50
* Todo pokemon possui um nível de velocidade, que durante o início de uma rodada determina quem irá atacar primeiro. Este nível é de 1 a 5
+
* Todo pokemon possui um nível de defesa que vai de 0 a 50
 +
* Todo pokemon possui um nível de velocidade que vai de 0 a 50. A velocidade determina quem irá atacar primeiro.  
 
** Se o nível de velocidade for o mesmo para os dois pokemons em uma batalha, então é feito um sorteio para determinar quem inicia primeiro
 
** Se o nível de velocidade for o mesmo para os dois pokemons em uma batalha, então é feito um sorteio para determinar quem inicia primeiro
 +
 +
A tabela abaixo indica os valores de ataque, defesa e velocidade de cada pokemon. Também indica qual tipo de pokemon tem vantagem e desvantagem sobre outros tipos.
 +
* A vantagem significa: Se o pokemon do tipo Fogo atacar um pokemon do tipo Gelo, então a força do seu ataque será aumentada em 50%. Supondo que tenha usado um golpe forte, que tem um dano de 30%, então este ataque será de 45%.
 +
* A desvantagem significa: Se o pokemon do tipo Fogo atacar um pokemon do tipo Água, então a força do seu ataque será reduzida em 50%. Supondo que tenha usado um golpe forte, que tem um dano de 30%, então este ataque será de 15%.
  
 
===Lista dos pokemons===
 
===Lista dos pokemons===
Linha 53: Linha 58:
 
| Terrestre || Sandshrew ||38 ||43 ||19  || Fogo/Elétrico || Planta/Inseto
 
| Terrestre || Sandshrew ||38 ||43 ||19  || Fogo/Elétrico || Planta/Inseto
 
|-
 
|-
| Elétrico  || Pikachu ||31 ||18 ||51 || Água/Voador || Terrestre/Pedra
+
| Elétrico  || Pikachu ||31 ||19 ||50 || Água/Voador || Terrestre/Pedra
 
|-
 
|-
 
| Lutador  || Mankey ||43 ||19 ||38  || Pedra/Inseto || Voador
 
| Lutador  || Mankey ||43 ||19 ||38  || Pedra/Inseto || Voador

Edição das 21h20min de 2 de dezembro de 2013

O projeto final da disciplina Programação Orientada a Objetos poderá ser desenvolvido em dupla e deverá ser apresentado em sala no dia 16 de dezembro de 2013.

Javamon - Clone do Jogo Pokemon

Desenvolver um jogo em Java usando somente as APIs do Java 2D. O jogo requer 2 jogadores interagindo através da rede de computadores. Trata-se de uma batalha por rodada. A cada rodada cada jogador escolhe a ação desejada para seu pokemon e o vencedor da rodada dependerá da análise dos golpes, movimentos, etc que foram executados por cada pokemon.

Regras do jogo

  • O jogo deverá oferecer 10 tipos de pokemons
  • Cada jogador deverá ter 6 pokemons, escolhidos dentre os 10 possíveis
  • O jogo termina quando todos os pokemons de um jogador forem derrotados
  • Um jogador poderá escolher um pokemon por vez para participar de uma batalha. Quando um pokemon é derrotado, o jogador poderá escolher outro para colocar em seu lugar, desde que ainda tenha pokemons disponíveis.
  • Cada pokemon possui 4 golpes de luta (2 fracos e 2 fortes), sendo que cada golpe possui o dano que causa e a probabilidade de acerto.
    • Golpes fortes possuem uma probabilidade menor de acerto (40%)
      • Envenenamento - Faz com que o adversário perca 30% de sua vida ao final da rodada em que foi usada.
      • Queimadura - Faz com que o adversário perca 30% de sua vida ao final da rodada em que foi usada.
    • Golpes fracos possuem uma probabilidade maior de acerto (80%)
      • Paralisia - Faz com que o adversário tenha sua velocidade de ataque reduzida em 20% a cada que for usada. Se usado diversas vezes contra o mesmo pokemon, este terá sua velocidade reduzida em no máximo em 80%.
      • Soco - Faz com que o adversário perca 10% de sua vida ao final da rodada em que foi usada.
  • Cada pokemon possui um único item especial e que só pode ser usado uma única vez durante a batalha
    • Recuperar vida - Faz com que o nível de vida do pokemon selecionado fique novamente cheio
    • Curar - Remove o efeito do golpe Paralisia que tenha sido aplicado anteriormente, ou seja, a velocidade do pokemon volta ao seu nível original
  • Todo pokemon possui um nível de vida que inicia no nível máximo que é 100
  • Todo pokemon possui um nível de ataque que vai de 0 a 50
  • Todo pokemon possui um nível de defesa que vai de 0 a 50
  • Todo pokemon possui um nível de velocidade que vai de 0 a 50. A velocidade determina quem irá atacar primeiro.
    • Se o nível de velocidade for o mesmo para os dois pokemons em uma batalha, então é feito um sorteio para determinar quem inicia primeiro

A tabela abaixo indica os valores de ataque, defesa e velocidade de cada pokemon. Também indica qual tipo de pokemon tem vantagem e desvantagem sobre outros tipos.

  • A vantagem significa: Se o pokemon do tipo Fogo atacar um pokemon do tipo Gelo, então a força do seu ataque será aumentada em 50%. Supondo que tenha usado um golpe forte, que tem um dano de 30%, então este ataque será de 45%.
  • A desvantagem significa: Se o pokemon do tipo Fogo atacar um pokemon do tipo Água, então a força do seu ataque será reduzida em 50%. Supondo que tenha usado um golpe forte, que tem um dano de 30%, então este ataque será de 15%.

Lista dos pokemons

Tipo Pokemon Ataque Defesa Velocidade Vantagens Desvantagens
Fogo Ponyta 37 24 39 Gelo/Inseto Água/Terrestre
Gelo Shellder 32 49 19 Planta/Voador Fogo/Pedra
Planta Bulbasaur 34 34 32 Água/Terrestre Inseto/Gelo
Água Goldeen 35 31 34 Fogo/Pedra Planta/Elétrico
Pedra Geodude 40 50 10 Gelo/Elétrico Água/Lutador
Voador Hoothoot 27 27 46 Planta/Lutador Gelo/Elétrico
Inseto Caterpie 35 45 20 Terrestre/Planta Fogo/Lutador
Terrestre Sandshrew 38 43 19 Fogo/Elétrico Planta/Inseto
Elétrico Pikachu 31 19 50 Água/Voador Terrestre/Pedra
Lutador Mankey 43 19 38 Pedra/Inseto Voador

Requisitos do jogo

  • Todo pokemon deverá possui 2 imagens para sua representação gráfica. Uma imagem para quando este estiver de frente e outra quando este estiver de costas.
    • Todas imagens deverão ter obrigatoriamente a dimensão de 80x80 pixels
  • Ao término do jogo, ou seja, quando um jogador teve todos seus pokemons derrotados, deve-se perguntar aos jogadores se desejam iniciar uma nova partida
  • Todos os métodos deverão ser comentados, de acordo com o padrão do JavaDOC, e dentro dos métodos é necessário comentar cada parte de seu funcionamento chave
  • Todo o código estará sob a licença de software livre GPL


Soluções dos alunos

Grupo Licença Código Fonte