Galera, estou desenvolvendo um jogo de Xadrez, porém estou aprendendo java no tapa, por curiosidade!
O maximo que consegui desenvolver até agora foi um tabuleiro, alguem conseguiria me ajudar me mostrando como devo colocar as peças, pretas e brancas em suas posições iniciais?
Segue em anexo o trabalho realizado até o momento.
OI OI oI ,
olha eu nunca fiz um jogo de xadrez em java, mas acho que vou entrar nessa fria contigo, e vamos ir analisando juntos e postando aqui neste topico, em questão de jogo em java o que eu ja fix é aquele jogo do galo
x | o |
o | x |
o | o | X
,Logo de noite vou analisar o teu codigo e amanha digo qualquer coisa, mas antecipo ja que a parte dos movimentos das peças será um pouco complicado de implementar, mas nada impossivel para um ser humano
S
sulito
E esqueci de ti dizer assim que acabamos de fazer o jogo, vamos incluir o java RMI para que seja possivel jogar em ambiente de rede, e com assistentes da partida.
A
AntiCop
Po cara muito obrigado.
O problema que realmente nao sei nada de java, tou apanhando, eu preciso por os icones das peças em suas respectivas casas, como que eu poderia fazer isso?
S
sulito
Eu tambem sou fraco em java, mas vamos analisar em conjunto fica calmo, se a coisa esquentar ligamos pra SUN .
vamos ir postando o codigo aqui e analisando
S
sulito
Estas a usar que IDE??? os IDE por vezes atrapalham no codigo eles metem coisas estranhas por vezes
A
AntiCop
Tou usando o eclipse que foi o mais indicado para mim.
S
sulito
vou postar todo o codigo para discutirmos ( eu ainda não analisei o codigo, mas vi coisas estranhas que não sei ) class Casa
importjava.awt.Color;importjava.awt.Graphics;importjavax.swing.JPanel;/** * Classe que representa uma casa do tabuleiro * */@SuppressWarnings("serial")publicclassCasaextendsJPanel{privateintposX,posY;privatebooleanisFilled=false;/** * Construtor que recebe como parâmetro a posicão de X e Y onde * a casa vai ser renderizada e se está ocupada ou não * @param posX * @param posY * @param isFilled */publicCasa(intposX,intposY,booleanisFilled){this.posX=posX;this.posY=posY;this.isFilled=isFilled;}/** * Método que desenha a classe, recebendo o gráfico e a cor como * parâmetros. * @param g * @param cor */publicvoiddesenhaCasa(Graphicsg,Colorcor){g.setColor(cor);g.fillRect(posX,posY,50,50);}/** * Método setter para a variável isFilled * @param isFilled */publicvoidsetFilled(booleanisFilled){this.isFilled=isFilled;}/** * Método getter para a variável isFilled * @return */publicbooleangetFilled(){returnisFilled;}}
class Tabuleiro
importjava.awt.Color;importjava.awt.Graphics;importjavax.swing.JPanel;/** * Classe que representa o tabuleiro * */@SuppressWarnings("serial")publicclassTabuleiroextendsJPanel{privateCasa[][]tabuleiro=newCasa[8][8];privatestaticColorcorCasa=Color.BLACK;publicvoidpaint(Graphicsg){for(inti=0;i<8;i++){for(intj=0;j<8;j++){tabuleiro[i][j]=newCasa(i*50,j*50,false);tabuleiro[i][j].desenhaCasa(g,corCasa);inverteCor(corCasa);}inverteCor(corCasa);}}/** * Método que varia a cor entre preto e branco para desenhar a casa * @param cor */publicvoidinverteCor(Colorcor){if(cor==Color.WHITE)corCasa=Color.BLACK;elsecorCasa=Color.WHITE;}}
@SuppressWarnings(“serial”)
esta linha que esta acima eu não sei para que serve??
A
AntiCop
Sem ela estava dando um warning, eu pesquisei e pus ela, ai saiu o warning, mas sem ela o codigo funciona mt bem.
S
sulito
E que tal se as Casas fossem umas Labels Pretas e brancas, e os jogadores fossem outra labels com uma imagem de fundo que ficam a andar por cima das labels que representam as casas???
A
AntiCop
Mas ai eu nao estaria utilizando o java 2d neh?
Eu queria fazer uma coisa mais na unha mesmo. Pra aprender.
S
sulito
È claro que não é java 3D nem 2D, eu tambem não mexo com java 2D e 3D, uma label é uma etiqueta onde podemos inserir texto e imagem normal 1D
A
AntiCop
Xii cara, me enrolou agora hahaha Realmente nao sei como seria isso que voce esta dizendo
A
AntiCop
Alguem consegue me ajudar?
Estou apenas tentando colocar umas peças nas casas iniciais, mas realmente nao faço a menor ideia de como se faz.
Tenho um modelo de peças que estou pondo em anexo.