Soy muy nuevo en la codificación y tengo problemas con una parte de mi proyecto final. El proyecto es muy abierto: haga una aplicación java gráfica. Elegí un juego de solitario peg, que como verás en la imagen a continuación:
http://i.imgur.com/dS65iZ2.jpg
Incorpora un concepto similar de piezas "saltantes" que utiliza un juego como las damas. Esto es lo que hice hasta ahora, un tablero compuesto por una cuadrícula de botones j de 7x7, cada uno usa una imagen cuadrada para representar una parte del tablero; aunque he dejado botones intencionalmente en blanco en lugar de los espacios que estarían en un tablero normal.
El problema con el que me he encontrado es el siguiente paso, la lógica del juego en sí; Estoy tratando de descubrir cómo implementar un sistema en el que pueda hacer clic en una clavija y luego hacer clic en un espacio vacío para 'mover' la clavija (que en este caso, simplemente cambiaría la imagen del botón j a la 'ranurada'). ' cuadrado). Sin embargo, el juego tiene que reconocer si el espacio en el que se hizo clic está lleno o no, si el segundo espacio en el que se hizo clic está vacío o no, y si el espacio ENTRE estos dos espacios está lleno o no, porque en este juego, las clavijas solo pueden moverse sobre otra clavija, y sólo en un espacio que está vacío.
Las clavijas no pueden moverse en diagonal, solo en las cuatro direcciones de la brújula. Reuní esto con la ayuda de mi instructor:
Traté de agregarle y descubrir cómo implementar lo que describí anteriormente, pero realmente no puedo entenderlo. Sé lo que tengo que hacer, pero me cuesta saber cómo ejecutarlo. Este código me permite hacer clic en el cuadrado identificado y 'vaciarlo', y también me permite hacer clic en el espacio vacío para quitar la clavija del cuadrado entre este y el primer cuadrado.
Pero no sé cuál es el código para identificar cuando un espacio está lleno o no, o el código para incluso diferenciar entre el espacio vacío y el espacio lleno. Supongo que es una especie de declaración if y el nombre del espacio y está vinculado a la imagen que se está utilizando actualmente (si es la imagen del agujero vacío o la imagen con ranura llena). Y luego una sentencia else y...
Bueno, como dije, soy muy nuevo en todo esto, y buscar en Google sobre el tema no me está ayudando porque solo lo entiendo a medias, y no sé cómo traducir la información dada al proyecto que tengo.
private class ButtonHandler implements ActionListener { public void actionPerformed(ActionEvent event) { if(event.getSource() == boxEleven) boxEleven.setIcon(holePic); if(event.getSource() == boxTwentyFive) { boxTwentyFive.setIcon(peggedHolePic); boxEighteen.setIcon(holePic); } else if(event.getSource() == boxEleven) boxEleven.setIcon( }}