Logica em um jogo de Truco  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
leonardo2204
Thread.start()
[Avatar]

Membro desde: 31/03/2010 00:02:06
Mensagens: 25
Offline

Então galera, é o seguinte:

Estou desenvolvendo um jogo de truco em Java com Swing e estava pensando qual a melhor estrategia para rankear as cartas.
Não tenho muita idéia de como fazer isso...
Estava pensando em pegar as 12 cartas (3 de cada um dos 4 jogadores) e montar tipo uma lista, fila sei la, de acordo com o ranking, da mais forte pra mais fraca.
Dai de acordo com q os caras vao jogando, vai removendo dessa estrutura e ja compara pela posição qual a maior a carta (ou empate) e da os pontos pra dupla.

Como vcs recomendariam que eu fizesse isso ?

Lembrando que na minha classe Carta, eu tenho essas variaveis:



Inicio o baralho de 0 a 39, ja organizando por valor e naipe, onde 0 é o 4 no truco (+fraco) e o 9 é o 3(mais forte) obviamente sem contar o vira, dai so uso modulo pra ir dividindo as cartas por valor, esquecendo o naipe, ja que ele so e usado para ver manilha.
Img para vcs entenderem o ranking por valor:


Uploaded with ImageShack.us

Ideias são bem vindas !

Obrigado !

Federal University of São Carlos Student
São Carlos, Brazil
Institute of Computer Science
leonardo2204
Thread.start()
[Avatar]

Membro desde: 31/03/2010 00:02:06
Mensagens: 25
Offline

Alguma ideia galera ?

Federal University of São Carlos Student
São Carlos, Brazil
Institute of Computer Science
gomesrod
GUJ Ranger
[Avatar]

Membro desde: 11/05/2007 19:46:22
Mensagens: 901
Offline

Olá,

Eu pensaria em algo assim:



A lógica seria essa:

- Primeiro você cria o baralho, que é uma coleção de cartas fazendo todas as combinações entre naipes e valores.
- Do baralho, tira 3 para cada jogador e tira o "vira"; o resto não é usado na rodada.
- Inicialize uma coleção de CartaJogada, que serão as cartas efetivamente jogadas naquela rodada

- A Cada carta jogada pelos jogadores, é criada uma instância de CartaJogada contendo: referência à carta, referência ao jogador e o valor. Verifique se a carta é manilha (seguinte ao Vira), se for atribua um valor especial dependendo do naipe; senão será o valor dela mesma.

- No final da rodada você terá 4 CartaJogada, basta ver a que tem maior valor e automaticamente saberá quem jogou.
leonardo2204
Thread.start()
[Avatar]

Membro desde: 31/03/2010 00:02:06
Mensagens: 25
Offline

Vlw pela dica, vo tentar implementar desse jeito !

Viu galera, meu projeto ta sendo hospedado como open source no google, ta bem tosco, pq eu to aprendendo a programar em java ainda !
Se algm se interessar em fazer parte e quiser em ajudar, me da um toque por MP ou aki no post msm !
http://code.google.com/p/trucomaogrande/

Abraço

Federal University of São Carlos Student
São Carlos, Brazil
Institute of Computer Science
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team