Projeto POO - 2011.2
Ir para navegação
Ir para pesquisar
O projeto final da disciplina Programação Orientada a Objetos poderá ser desenvolvido em dupla e deverá ser apresentado em sala no dia 14 de dezembro de 2011.
JavaBomber - Clone do jogo Bomberman
Desenvolver um jogo em Java usando somente as APIs do Java 2D. O jogo requer 2 jogadores humanos, cada qual controlando seus respectivos personagens (JavaBomberman).
- Cada personagem possui comandos para mudar sua direção (ex: cima, baixo, esquerda, direita) e ainda para lançar bomba
- O cenário é composto por blocos de tijolos, que podem ser explodidos, e blocos de metal, que não podem ser explodidos, além de blocos vazios, por onde o personagem pode se deslocar
- Na situação inicial do jogo
- Cada personagem só poderá lançar uma bomba por vez. Assim que a bomba explodir, este personagem poderá lançar outra bomba assim que desejar
- A bomba lança uma onda de choque para as quatro casas adjacentes à casa onde está situada a bomba, além da sua própria casa
- Cada jogador possui 3 vidas, assim que um dos jogadores ficar com 0 vidas, o outro é declarado vencedor
- Um jogador perde uma vida sempre que estiver no alcance da onda de choque de uma bomba, não importando qual jogador a lançou
- Um jogador pode passar pela casa que tenha uma bomba lançada por ele mesmo, mas não poderá passar por uma casa que contenha uma bomba lançada pelo adversário
Requisitos do jogo
- Blocos de tijolos que forem explodidos poderão deixar poderes, os quais ficarão visíveis na tela até que um jogador passe por cima destes
- Os poderes são classificados como bons ou ruins
- Bons
- Aumento da onda de choque - Faz com que a distância da onda de choque da bomba do jogador aumente 1 casa
- Aumento no número de bombas simultâneas de um jogador - O total de bombas de um jogador será acrescido em 1
- Ruins
- Diminuição da onda de choque
- Diminuição do número de bombas simultâneas de um jogador
- Bons
Requisitos de programação
- Todas imagens usadas no jogo deverão ter obrigatoriamente a dimensão de 40x40 pixels
- Ao término de cada rodada deverá solicitar ao usuário se ele deseja jogar mais uma partida
- Cada jogador possuirá um painel com informações a respeito do número de vidas que ainda resta e o total de partidas que este ganhou
- Na tela de configuração cada jogador poderá indicar quais teclas serão usadas para controlar o personagem. O sistema não deve permitir que os dois jogadores tenham uma mesma tecla em comum selecionada
- Todos os elementos gráficos do jogo deverão possuir classes específicas, as quais poderão ser subclasses da classe Elemento
- O jogo deverá possuir uma tecla que permita dar um pause no jogo e a mesma pode ser usada para iniciar novamente o jogo
- Os poderes serão colocados de forma aleatório nos blocos com tijolos, sendo que a cada rodada será sorteado um número máximo de poderes que poderá aparecer
- A cada nova rodada o cenário deverá ser montado de forma aleatória (número de blocos de tijolos e a disposição dos mesmos). O total de blocos de metal deve ser fixo, como apresentado no Esqueleto do projeto, disponibilizado pelo professor
- O cenário deverá possuir no mínimo 60% da área com blocos de tijolos
- 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
Esqueleto do jogo JavaBomber
- Pegue aqui o código fonte com o esqueleto funcional (projeto Netbeans)
- Pegue aqui o pacote JAR com código compilado. Pronto para ser executado.
Exemplo: java -jar JavaBomber.jar
Soluções dos alunos
Grupo | Licença | Código Fonte
|
---|---|---|
Grupo 1 | GPL |