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

Tojorí – Java/MySQL

Tojorí es una libreria Java/Mysql para la creación de aplicaciones de base de datos utilizando el IDE de Netbeans desde[...]

Determinante de una matriz NxN en javascript

Notación matemática formada por una tabla cuadrada de números, u otros elementos, entre dos líneas verticales; el valor[...]

Microservicio REST Java con Spark – Parte 1

En este y un segundo post desarrollaremos un microservicio java utilizando el framework Spark que implementara las funci[...]

Conectar C Sharp con MySQL

Ya tengo varios post sobre conexión a base de datos en varios lenguajes y claro no podía faltar c#, el siguiente tutoria[...]

Introducción a Spark Framework

Spark Framework es un conjunto de librerías para los lenguajes Java y Kotlin que nos sirve para el desarrollo rápido y s[...]

Conoce VAR lo nuevo de Java 10

Java ha ido evolucionando a pasos agigantados en los últimos años gracias al pedido de su comunidad global de programado[...]