Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Juegos En Java

Iniciado por angelus, 13 de Diciembre de 2004, 03:42:01 PM

« anterior - próximo »

angelus

 Tengo una tarea para el miercoles 15 de Diciembre del 04 de realizar un juego "memorama" para niños. Con las funciones on clic permut ya puedo hacer que cambie o que gire las imágenes pero, el problema no es ese, el problema es que no puedo validar que solamente gire dos imágenes o que solamente active dos clics y si son iguales que siga jugando ya con un par menos o lo contrario, que despues de dar dos clics y la imágen no es igual que las tape.

Si me pueden ayudar, se los agradeceré:

Buffon

 no he entendido muy bien tu pregunta pero bueno:

cuando capturas el evento de click 'MouseEvent' blablabla

llamas a una funcion con ese mismo evento.

cada una de las fichas tiene que tener unas coordenadas (x,y) y un width y un height.

el evento MouseEvent evt

tiene una funcion que te indica donde haspinchado.

evt.getPoint();

y eso lo pones en un point

Point p = evt.getPoint();

y ahora haces un bucle para buscar si has pinchado encima de alguna de las imagenes.

y puedes por ejemplo, ponerle un booleano, 'pinchado' a true.

con lo cuál, si al encontrar la imagen que has pinchado, tenia ese booleano a true, no haces nada.

en serio no he entendido tu preguna, y llego tarde a clase ¬¬' (como siempre que me entretengo en este foro jeje) luego releo tu cuestión que lo mismo me he pasao 3 pueblo  (asco)  

Warchief

 Si es java (un applet quizás?) (JButton)evt.getSource() devuelve el boton pulsado. Puede hacerse con toggle buttons con una imagen de 'deseleccionado' (la parte trasera de las cartas) y otra de seleccionado (la imagen real). Si los botones estan en una matriz, al pinchar en uno, con el actionPerformed se recorre la matriz en busca de otro seleccionado, y se comparan sus imagenes (las imagenes pueden tener un codigo apuntado en otra matriz de enteros). Darles la vuelta es tan facil como jButtoni.setSelected(boolean) y ocultarlos jButtoni.setVisible(false). (con javax.swing, con awt es parecido, pero creo que cambiaba la api de setvisible, ya no recuerdo).

Buffon

 he tao pensando jeje y lo de comparar que has pinchado el mismo objeto, es mucho mas sencillo.

ya pensando no en el memorama sino en un tipo mjajong.

si tus objetos son Piezas, necesitas 3 variables.

Pieza p1;
Pieza p2;
int numClicks.

a cada click, dependiendo el numClicks actualizas p1 o p2.

cuando numClicks sea 1 ya q se actualizara como (numClicks+1)%2

puedes o provocar un evento propio o llamar a una funcion tuya, provocar un evento queda mas bonito pero menos eficiente.

y esta funcion es la que se encarga de ver si has pinchado en dos objetos parecido, iguales o distintos.

p1.equals(p2);

sirve pa saber si es el mismo.

---------------------------------------

pero para lo del memorama es mucho mas sencillo :)






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.