XP : JogoTruco

XP » XP » WebHome » TrabalhosFinais » JogoTruco

-- JoaoAmorim - 03 Jul 2005

Jogo Truco

Definição

O jogo de truco é composto de um baralho de quarenta cartas que vão de Ás a Sete e inclui Valete, Dama e Rei, variando nos quatro naipes. Cada jogador recebe três cartas e após uma seqüência de três rodadas verificando qual a carta de maior valor, decide-se o ganhador. As cartas possuem uma ordem peculiar: Quatro, cinco, seis, sete, dama, valete, rei, ás, dois e três, esta ordem sendo de menor para maior. Além desta verificação, ainda existe a manilha, que é superior as anteriores e é escolhida na hora do jogo, virando-se uma carta. As manilhas então são as quatro cartas de número imediatamente superior a carta virada, e entre elas seguem uma ordem de naipe sendo: ouros, espadas, copas e paus, indo novamente da menor para maior. O empate na mesma rodada é determinado pelo vencedor da primeira rodada, e se o empate ocorrer nesta rodada, a decisão é feita imediatamente na segunda rodada, ou na terceira.

Equipe

João de Amorim Junior, Marcus Vinicius Xavier

Modelagem

A cada partida acumula-se pontos e o jogo termina quando um dos jogadores atingir doze pontos. Esta característica foi abstraída do jogo, pois não faria diferença no funcionamento interno do mesmo, visto que não há interações com usuários humanos para fazer as apostas de pontuação. O jogo pode ser jogado em duplas, mas nós o limitamos para ser jogado por apenas dois jogadores para simplificar o modelo. O baralho é representado por um objeto Vector contendo objetos da classe Carta, e são inicializados no construtor da classe JogoTruco. O método deAsCartas, distribui as mesmas aos jogadores. A resolução do resultado é feita comparando as cartas na sequência que foram dadas. Essa característica se dá por que não elimina o caráter aleatório da escolha do jogador, visto que o mesmo não possui inteligência para decidir as cartas que devem ser jogadas em cada rodada.

Codificação

Foi necessária uma modificação no framework sugerido, pois como as cartas deviam ser distribuídas entre os jogadores, achamos adequando que cada objeto de jogador fosse responsável por suas cartas. Para isso, inserimos um método abstrato na classe Jogo, que possibilitou a criação de objetos derivados da classe Jogador, no nosso caso JogadorTruco?. O código do framework e os testes que originaram a mudança estão disponíveis junto aos fontes do jogo. A classe JogoTruco tem o método main para facilitar sua execução. O resultado é exibido no cômputo do mesmo. Para os testes de unidade usamos o JUnit.

O código e os arquivos .class estão disponíveis em anexo. Anexamos também o diretório .metadata do nosso workspace, para que assim seja possível verificar os históricos para ver a evolução dos testes, utilizando o Eclipse.

E D U G R A F - Laboratório de Software Educacional - UFSC - CTC - INE
Campus Universitário - Trindade, Florianópolis, SC, Brasil 88040-090
Fone: +55 48 331 9735 / Fax: +55 48 331-9770