Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Juegos / Visual Basic / Puzzle en Visual Basic [Código Fuente]

Puzzle en Visual Basic [Código Fuente]

Por jc mouse jueves, abril 26, 2012

Rompecabezas 3×3 realizado en Visual Basic .NET, lo que se hizo fue una migración de un proyecto hecho en java (puedes verlo en el siguiente enlace –Puzzle Java-)  a este lenguaje de  Microsoft, al ser ambos lenguajes orientado a objetos, no existió mayor problema, sin embargo cada lenguaje cuenta con sus particularidades así que no es una copia exacta aunque si conserva la esencia misma del juego.

Puzzle VB

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

  • Realizado en Visual Studio 2008
  • Framework 3.5
  • No utiliza ninguna librería externa

Nivel: Intermedio

Respecto al juego tenemos:

El proyecto esta estructurado de la siguiente forma:

- form1.vb
- Game.vb
- btnPieza.vb
- rscBoton.resx

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 win() As Integer = {1, 2, 3, 4, 5, 6, 7, 8, -1}  almacena las posiciones ganadoras del juego, es decir el puzzle completamente armado, otro array pos_juego() As Integer , 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.

form1: Es un formulario que representa a la interfaz del juego.

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

rscBoton: es un paquete de recursos que contiene imagenes que hace uso el proyecto

Las imágenes para el rompecabezas, están fuera del proyecto en una carpeta externa llamada puzzle, en la dirección «e:\vb\» almacenada en la variable path_app de la función Llenar_Tablero(), es obvio que tu debes cambiarlo por la ruta que utilices en tu pc. Cuando desees crear el exe para distribuirlo, debes comentar esa dirección y dejar la ruta del programa de la siguiente forma

Dim path_app As String = Application.StartupPath

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

Descarga el juego y el proyecto enVisual Basic AQUI

Tags

Artículos similares

Gestión de productos – El modelo (Parte 4)

En la estructura del proyecto, nuestro modelo mvc esta compuesto por tres paquetes, la vista, el modelo y controlador. L[...]

Yachaywasi – Crea exámenes tipo test para android

Yachaywasi versión 3.1 es una aplicación para android que te permite crear, editar y realizar exámenes tipo test cómodam[...]

Ejercicios con Hashtable y C#

Ejercicio: Escriba un programa en consola que implemente un Hashtable, cree una clase «Persona«, este será el tipo de da[...]

Microservicio REST Java con Spark – Parte 2

Segunda y ultima parte del post dedicado a la creación de un microservicio en lenguaje java utilizando el framework Spar[...]

GraphADT: Clases para trabajar con grafos en java

GraphADT es una proyecto alojado en github escrito en java que te permite trabajar con grafos, a la fecha de escribir es[...]

Transacciones con Java y MariaDB

Se define como Transacción en base de datos a una «unidad lógica de trabajo» compuesta por un conjunto de operaciones qu[...]