Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Java / Proyectos / Rompecabezas [Código Fuente]

Rompecabezas [Código Fuente]

Autor jc mouse miércoles, abril 25, 2012

Hace tiempo me pidieron el código fuente de un juego de Puzzle de Neon Genesis Evangelión, este juego es completo, tiene sonido, registro de jugadas, se pueden cargar diferentes juegos de imágenes mediante el uso de XML, etc, sin embargo al ser tan completo contiene muchas lineas de código y también muchas clases, ademas de hacer uso de algunas librerías externas, todo esto hace que su estudio sea mucho más extenso y complicado por programadores novatos, así que considero mucho mejor dejarles un proyecto mucho más sencillo y mucho más entendible pero no por eso menos interesante, al fin y al cabo lo que interesa conocer es como programar un rompecabezas, ya el que quiera después le puede agregar sonido, contador de movidas y demás complementos que vea por conveniente.

Puzzle java

El proyecto está comentado, sin embargo no esta demás algunas aclaraciones.

  • Realizado en Netbeans 6.9
  • No utiliza ninguna librería externa

Respecto al juego tenemos:

El proyecto esta estructurado en las siguientes paquetes y clases

- jcPuzzleSample
----- Game.java
----- Main.java
----- frmPrincipal.java
- pieza
----- btnPieza.java
- pieza.rec
----- logo.jpg
----- vacio.jpg
- puzzle
----- puzzle.game1
----- puzzle.game2

Game: En esta clase se encuentra la lógica del juego. El juego funciona bajo una matriz de 3×3, sin embargo puede modificarse para el tamaño que se desee.

El juego funciona de la siguiente manera:

Un array de tipo int[] win = {1,2,3,4,5,6,7,8,-1}  almacena las posiciones ganadoras del juego, es decir el puzzle completamente armado, otro array int[] pos_juego = new int[win.length] , del mismo tamaño que el anterior va almacenando las diferentes posiciones que pueden tomar las casillas en el transcurrir del juego, se puede advertir un elemento «-1» en ambos array, este simboliza una casilla vacia.

Ten en cuenta que si bien se hace uso de array, estamos hablando de una matriz 3×3

Cuando se hace clic en una casilla, esta busca un espacio libre (casilla vacía) donde moverse,  si la encuentra se desplaza a esa posición actualizando las posiciones de las casillas almacenadas en la variable «pos_juego», si no existe ninguna posición libre, se queda donde esta, el juego finaliza cuando se termina de armar el puzzle, osea cuando las variables win y pos_juego son iguales.

frmPrincipal: Es un JFrame, la interfaz del juego.

btnPieza: esta clase es un JButton, con esta boton formaremos una matriz de controles para el puzzle.

puzzle: es un paquete el cual tiene dentro otros dos paquetes game1 y game2, estos paquetes almacenan las imagenes del rompecabezas.

Eso es todo, el juego ocupa tan solo tres clases en comparación del juego de Neón Genesis que tiene 14 clases, pero estas tres clases son suficientes para realizar un rompecabezas.

Si no te quedo claro, échale un ojo al siguiente video 🙂

Descarga el juego AQUI

El proyecto en java/Netbeans 6.9 AQUI

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Buscar y cargar imagenes de disco

Buscar y cargar imagenes de disco

Cuando se almacenan imágenes en una aplicación java y se desea después a modo de registro buscar estas y cargarlas en al...

Netbeans «Problemas de Referencia»

Netbeans «Problemas de Referencia»

Cuando nos bajamos un proyecto de internet o cuando nos pasan un código de otra pc (que técnicamente viene siendo lo mis...

Procedimientos almacenados en java

Procedimientos almacenados en java

En este tuto realizaremos la implementación y ejecución de procedimientos almacenados de MySQL en Java, si quieres darle...

Procedimientos Almacenados: Parámetros OUT

Procedimientos Almacenados: Parámetros OUT

En un post anterior conocimos que es y como funciona un parámetro de entrada IN en procedimientos almacenados y lenguaje...

Gráficos iReport con parámetros tipo Date

Gráficos iReport con parámetros tipo Date

Matando dos pájaros de un solo tiro :), doy respuesta a un par de preguntas que están relacionadas, en este post veremos...

Editar archivos PDF en linea

Editar archivos PDF en linea

Editar un documento PDF no es tan sencillo como editar un archivo de texto por ejemplo, para editar archivos PDFs necesi...

8 comentarios en “Rompecabezas [Código Fuente]”

  1. Ebr dice:

    Muchas gracias mouse por compartir el codigo, me ha sido de gran ayuda para aprender a realizar el juego. Saludos desde Mexico y sigue asi, buen trabajo

  2. Eduardo dice:

    Muchas gracias mi amigo! a un día de entregar el trabajo creo qe me ayudó bastante 🙂 sino es qe en su totalidad.

    Muchisimas gracias!

    1. Mouse dice:

      me alegro que te sea de utilidad 🙂

      1. Lucas Sola dice:

        Hola Mouse, sos grandioso!!, la verdad que compartir tu saber es algo inusual, ya que todos quieren paga por esto… te agradezco nuevamente!!!

  3. indira dice:

    Muchisimas gracias me sirvio bastante ,aprender el juego .Saludos de Perú.Eres excelente profe.

  4. Mario dice:

    Una pregunta y si lo quisiera hacer en Jcreator que me recomendarías, o como podría empezar, si me pudieras ayudar, gracias.

  5. Nely dice:

    Hola, primero que nada gracias por la pagina es una gran pagina de gran ayuda muchas felicidades, pero quisiera que me dijeras donde puedo obtener el codigo fuente del puzzle, la verdad no lo encontre y me interesa mucho, espero tu respuesta y gracias 🙂

  6. steveen io dice:

    Como aumento mas niveles me ayudarias mucho de antemano gracias

Los comentarios estan cerrados

Comparte lo que sabes

Categorias

Últimas entradas

Si trabajas con redes sociales (RRSS) a continuación te muestro tres herramintas gratuitas que te ayudaran a la hora de...

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...

En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...

Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...

Herramientas

Generador de Enlaces a Whatsapp