Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
daniel pinto

Ajuda para o Projecto

Recommended Posts

daniel pinto

Boa tarde, eu estou a fazer um projecto que consiste na criação em java do jogo da sueca, ja criei o baralho, embaralho, distruibuo as cartas, tenho mesa, trunfo, e 4 jogadores, estou neste momento a criar uma função para que o jogador que joga a seguir a mim, assistir á primeira carta que eu jogo e isso eu consigo, o que nao sei é como fazer no caso de ele nao ter carta para assistir á minha jogada. Alguem me consegue ajudar?

Share this post


Link to post
Share on other sites
KTachyon

Assim por alto diria para verificares se ele tem carta para assistir... Como ninguém sabe como é o teu código é difícil conseguires mais ajuda que isto.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites
daniel pinto

eu envio o meu codigo ;)

public CardHand selecciona (CardHand mao){
CardHand c = new CardHand();
Suit naipe = mesa.get(0).suit;
for(int i = 0; i < mao.getSize(); i++){
	if(mao.get(i).suit == naipe){
		 c.add(mao.get(i));
		mao.remove(i);


	}
} return c;
} 

public void JogaPc(CardHand hand){
CardHand d = selecciona(hand);
for(int i = 0; i < d.getSize(); i++){
	if(d.getSize() > i){mesa.add(d.get(0));


	} else { if (d.getSize() == i){
		mesa.add(hand.get(0));
	}
	}
}
}

basicamente na primeira função criei um novo cardhand, para guardar as cartas que tinham o mesmo naipe da carta que eu joguei, e depois fiz um for para percorrer a mao do jogador á procura de cartas desse naipe, na segunda utilizei o selecciona, para guardar as cartas do naipe, noutro cardhand, e se ele for maior que zero jogo a primeira carta, se for zero jogo primeira carta que tiver na mao, foi este o meu raciocinio

Share this post


Link to post
Share on other sites
KTachyon
if (c.getSize() == 0) {
    c = mao;
}

return c;


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites
daniel pinto

isso é em relação á primeira função não é? eu mudei o if que la tinha por essa e nao resultou... o que acontece é que quando eu carrego no joga, ele envia várias cartas repetidas

Share this post


Link to post
Share on other sites
KTachyon

Não me perguntes a mim, tu é que deves saber como é que o programa funciona. Apenas assumi que o processo de selecção de cartas passíveis de serem jogadas seria feito aqui, e, caso não houvessem cartas do mesmo naipe, o jogador podia seleccionar entre qualquer uma das cartas que tem na mão.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.