Anexados: Trabalho Final Comp2.html
Enviado pelo Google Docs http://docs.google.com/

Relatorio em anexo.

--
You received this message because you are subscribed to the Google Groups "Comp 2 - 
Geral" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/comp2-geral?hl=en.

Title: Trabalho Final Comp2

GuitaRPG

(Não abordamos a temática do jogo no relatório, porém já estamos com o nome decidido)

  1. Objetivo Geral:

A aplicação segue um estilo de RPG (Role Playing Game) com interface gráfica baseada em botões, algumas imagens estacionarias e caixas de texto. O jogador criará um personagem, que levará em conta as classes disponíveis para ele, e partirá em sua aventura pelo mundo do jogo.

O jogo contará com dois botões principais, o botão de “Ação” e o “Menu”. Na opção de “Menu” do jogo serão fornecidas as possibilidades de salvar o progresso do jogo (guardando os itens, posição e atributos do personagem criado), acessar sua lista de equipamentos e itens, informações sobre o seu personagem e mapas. Ao clicar no botão de “Ação” será apresentada para o jogador uma lista das ações que ele pode executar no local em que está, podendo essas serem: “Checar” certo objeto, “Ir para” outro local, utilizar certa habilidade, entre outros.

A interface do jogo também contará com: uma barra de HP (Health Points) e outra de MP(Music Points) do personagem, para o jogador poder, rapidamente, verificar se o personagem está em perigo, uma caixa de texto que mostrará descrições de objetos e locais, além das falas de outros personagens e, finalmente, a imagem de fundo cujo propósito é inserir o jogador no mundo do jogo.

  1. Casos de Uso:

        Ao abrir o jogo surgirá uma janela de título, onde o usuário selecionará entre as opções de “Novo Jogo” ou “Carregar Jogo”. Após a selecionada a opção, o jogo será executado e várias opções estarão disponíveis para o usuário nesta tela, como: “Menu” e “Ação” que, quando selecionadas, terão outras opções dentro delas. Dentro da opção “Menu”, o jogador poderá obter informações a respeito da situação na qual se encontra no momento, como um mapa da área na qual ele está, atributos do personagem (que definirão seu poder, resistência, entre outros), equipamentos e itens, além das opções de salvar e sair do jogo. Dentro de “Ação” a quantidade de opções sempre dependerá da área na qual o personagem se encontra. Algumas das opções que poderão estar disponíveis são as de movimento, como andar até “lugar”, de “ação” em si, onde o personagem fará algo com algum objeto do ambiente, caso o personagem entre em modo de batalha, todas as opções disponíveis serão diferentes. Ao invés de ter os comandos anteriores, ele terá comandos como “ataque”, “usar habilidade”, “fugir”, entre outros.

  1. Diagrama das Classes:

MODELO

VISTA

CONTROLADOR

  1. Personagem

Vai conter uma lista de itens e uma lista de equipamentos, array list de Strings.

Vai ter uma string “foco” para definir em que está focado a atenção do personagem, seja em algum lugar ou objeto.

Terá os “stats” (HP, MP, atributos, nível do personagem, etc) dele.

  1. Objeto

Classe que implementará a interface Interactive.
Terá nome, descrição e o endereço da imagem relacionada a ele (em uma String).
Vai ter um método onfocus() que caso ele esteja em foco é chamado, também chama outras classes do controlador para alterar as opções mostradas na tela do jogo, como a imagem de fundo.

  1. Inimigo

Subclasse de objeto, terá, além de tudo que Objeto contem, uma lista dos itens que o jogador ganhará caso o derrote e os seus próprios “stats”.

  1. Itens

Outra subclasse de objeto, terá, fora tudo da sua super classe, os “stats” do equipamento.

  1. Lugar

Mais uma subclasse de objeto, tem uma lista de objetos(objetos inanimados, “NPCs”, por exemplo, encontrados no lugar) e lugares(que são ligados a esse), ambas array lists de Strings.

  1. Interface Gráfica(GUI)

Pega do controlador os endereços das imagens (que estão armazenados dentro das classes do modelo), se comunica com a classe do controlador Cenario para fazer tudo isso.

Existem quatro janelas planejadas, a tela inicial, tela para carregar o jogo antigo, tela para começar um novo jogo e a tela original onde o jogo se passará.

  1. Batalha

Pega informação do personagem e do inimigo, faz todos os cálculos, é chamada para calcular a chance de encontro de batalha dependendo do local em foco, se um Objeto estar em foco o cálculo irá à 0.

Tem um método onfocus() também para quando entrar na batalha o foco do personagem ser esta.

.

  1. Game

Chama o XML para criar as instâncias, tem Arraylists de todos os itens, lugares, inimigos, etc (são usados para verificação do foco).

Tem o laço do jogo e chama constantemente o onfocus() de quem está no foco do personagem.

  1. Cenario

Fala com a vista, muda os Action listeners, imagens, botões, etc.

  1. Interactive

Tem os métodos vazios para Objetos que se pode interagir.

  1. Classes do tipo Exception

Listam todas as exceptions do jogo.

  1. XML

Classe que ficará responsável por ter os métodos que lidem com o XML, lendo-o e criando instâncias baseadas nele.

Esquema da interface:

Grupo:

Nº: 1

Rubens Santos, DRE:111031112

Carlos Sergio, DRE: 111030946

Rodrigo Studart, DRE:111201513

Matheus Forny, DRE: 111201814

Responder a