Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Juego Simple De Puzzle
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Juego Simple De Puzzle 
 
Hola Comunidad!.

Creo que alguien ha hecho algo parecido en gambas. Este código lo convertí  y lo retoque de un libro que tenia por casa.
Seguro que mas de uno conoce este juego.En vez de ordenar letras, se ordenan números.

Al principio utilice el propio formulario como contenedor y luego lo hice con un panel.
Tenéis una imagen del juego aquí.

 puzzle

Y a continuación el código para Gambas3,convertido de Gambas2 y mejorado en algunos aspectos.
Hay cosas que se pueden cambiar, tamaños de las fichas, numero de estas, retocando luego el panel.

La creación de la clase fue muy simple y no necesaria realmente,estoy verde en el tema.

Se aceptan consejos sobre como debería distribuir del código.
Mejorando la distribución de nuestro código,nuestro programa sera mas claro de ver.
El programa es solo un ejemplo.Lo importante es mejorar.


Saludos.

PuzzleNumeros2a.tar.gz
Descripción:  
Descargar
Nombre del archivo: PuzzleNumeros2a.tar.gz
Tamaño: 8.83 KB
Descargado: 45 veces
PuzzleNumeros2a.tar.gz
Descripción:  
Descargar
Nombre del archivo: PuzzleNumeros2a.tar.gz
Tamaño: 8.83 KB
Descargado: 45 veces
PuzzleNumeros2a.tar.gz
Descripción:  
Descargar
Nombre del archivo: PuzzleNumeros2a.tar.gz
Tamaño: 8.83 KB
Descargado: 45 veces

 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Juego Simple De Puzzle 
 
Observación:

De este programa cree un paquete de instalación. Lo añadí a la carpeta juegos.
Lo curioso, es que una vez que arranca el programa, si dejo el cursor al comenzar fuera de su formulario,
temporalmente el icono del cursor esta como reloj, en espera.Unos segundos.

¿ Es normal que una aplicación haga eso ?.

Saludos.
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Juego Simple De Puzzle 
 
Observacion2:

Los hombres normalmente hubiéramos usado el botón de iniciar y luego jugar.
Pues las mujeres parecen tener un sexto sentido, van directamente a las piezas
sin usar antes el botón y ale, otra cosa que arreglar.

A pesar de no estar activo el panel, se moverán las piezas.Si es que...cachis!.

Saludos.
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Juego Simple De Puzzle 
 
Es un juego sencillo, pero me hace romer los cascos.
Si empiezas sin mas, pero bueno todo es saver.
Lo demas funciona bien, el boton terminar nose para que sirve, como no he terminado ninguno, jeje
 



 
tonixs - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Juego Simple De Puzzle 
 
tonixs:

Es para parar el reloj.Realmente el programa no comprueba si esta en orden.

Saludos.
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Juego Simple De Puzzle 
 
Cronometro?
Eso si es un fallo, no he visto ninguno, que esta escondido?
 



 
tonixs - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Juego Simple De Puzzle 
 
He introducido una pequeña mejora, ahora se pueden hacer puzzle, de varias imagenes: el programa coge una imagen de 350x350, y la divide  (tiene que tener instalado el programa convert) en trozos, para luego mostrarlas en las fichas:


Puzzle sin terminar;
puzzledesordenado


Puzzle terminado:
puzzleconimagenes

Este es el código fuente...Enlace de descarga

Para el tema de saber cuando esta "terminado de ordenar el puzzle", pienso que se deberia declarar una matriz de 8 elemento (numeros enteros del 1 al 8),  la cual:
- se desordena como las fichas inciales
- cada vez que se mueve una ficha, tambien se mueven los elementos de la matriz
- cada segundo, se comprueba que la matriz tiene su orden "1,2,3,4,5,6,7,8" si lo tiene , el puzzle esta terminado,

Saludos..

Nota:
En vez de heredar de la clase Label, he hereddo de la clase  ToolButton, que tiene la propiedad de poder poner dibujos (picture),
A lo me jor habria que añadir una propiedad, que indicase en que posicion esta del tablero,... abriria una nueva forma de saber si las fichas estan ordenadas o no...
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
última edición por jsbsan el Domingo, 06 May 2012, 19:17; editado 3 veces 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Juego Simple De Puzzle 
 
Ahora si veo el cronómetro, y esto de las foto me gusta muuuuuuucho más.
 



 
tonixs - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Juego Simple De Puzzle 
 
Julio:

Genial.Vas bien. Te cuento.
Mi idea era trocear una imagen.(Era otro programa)
Se que usas convert.Hace tiempo tiempo hablaste del tema.

Esto esta hecho con Gambas2.No use Gambas3, pero no creo que sea difícil de convertirlo.
Ademas Gambas3 tiene que ofrecer una gran cantidad de posibilidades del tratamiento de imágenes, que carece gambas2.

Use el componente gb.image

En este caso era solo 4 trozos de la imagen.
 imagenes

El formulario principal:

PRIVATE imagenes AS NEW Object[]
PRIVATE imagen_aux AS NEW Image
PRIVATE imagen_copia AS NEW Image
PRIVATE miformulario AS FormImagen


PUBLIC SUB Form_Open()
  
  imagen_aux = imagen_aux.Load("~/Imágenes/Gambas3.png")
  
  miformulario = NEW FormImagen(imagen_aux.Width, imagen_aux.Height, imagen_aux)
  miformulario.Show
  
  imagen_copia = imagen_aux.COPY(0, 0, imagen_aux.Width / 2, imagen_aux.Height / 2)
  comun
  
  imagen_copia = imagen_aux.COPY(imagen_aux.Width / 2, 0, imagen_aux.Width / 2, imagen_aux.Height / 2)
  comun
  
  imagen_copia = imagen_aux.COPY(0, imagen_aux.Height / 2, imagen_aux.Width / 2, imagen_aux.Height / 2)
  comun
  
  imagen_copia = imagen_aux.COPY(imagen_aux.Width / 2, imagen_aux.Height / 2, imagen_aux.Width / 2, imagen_aux.Height / 2)
  comun

END

PUBLIC SUB comun()
  imagenes.Add(imagen_copia)
  miformulario = NEW FormImagen(imagen_copia.Width, imagen_copia.Height, imagen_copia)
  miformulario.Show
END

 


El del formulario que muestra la imagen.(Anda que no se me han ocurrido diabluras con esto para nuestro usuario)  
Valeee..para el jefe.

PRIVATE miimagen AS Image

PUBLIC SUB _new(ancho AS Integer, alto AS Integer, imagen AS Image)
  Dibujo.Width = ancho
  Dibujo.Height = alto  
  ME.Width = ancho
  ME.Height = alto  
  miimagen = imagen
END


PUBLIC SUB Form_Open()

ME.Caption = "Parte"
Draw.Begin(Dibujo)
  Draw.Image(miimagen, 0, 0, miimagen.Width, miimagen.Height)
Draw.End
  
END
 


Entonces, lo suyo que no tiene que ser difícil es la creación del código para que trocee las imágenes y las vaya almacenando en una matriz de imágenes
y se puede usar directamente las funciones del propio gambas.

Yaaa, ya se que fue para salir del paso y rápido a la vez.

Ah, la diablura consistía...psss..psss..imagina ese formulario de imágenes con coordenadas al azar, con unas imágenes determinadas por todo el escritorio...
Si a eso le añades un bucle..

Lo que me fastidia, es que el formulario hijo debería ser independiente del principal, así la broma seria mejor.

Saludos.
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Juego Simple De Puzzle 
 
Shell:

Citar:
imagen_copia = imagen_aux.COPY(imagen_aux.Width / 2, 0, imagen_aux.Width / 2, imagen_aux.Height / 2)


Pues si, mejor usar las ordenes que tiene ya Gambas3, para hacer lo que hace el comando "convert"


He encontrado varios .pdf, sobre algoritmos para resolver puzzles:

Enlace 1

Enlace 2
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Juego De Las Palabras(ex Juego Del Cine) N... Dani26 Aplicaciones/Fragmentos de Código 1 Domingo, 11 Septiembre 2011, 04:44 Ver último mensaje
ivanovichenco
No hay nuevos mensajes Resolucion De Puzzle Deslizantes De 8 Y 15 jsbsan Aplicaciones/Fragmentos de Código 2 Viernes, 21 Septiembre 2012, 19:12 Ver último mensaje
jsbsan
No hay nuevos mensajes Puzzle Con Imagenes Sencillo tano estrella General 1 Martes, 16 Diciembre 2014, 21:55 Ver último mensaje
v3ctor
No hay nuevos mensajes Juego Simple Por Turnos: Pokemon Batallas jsbsan Aplicaciones/Fragmentos de Código 5 Miercoles, 26 Agosto 2015, 09:35 Ver último mensaje
Shell
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron