Breve historia

Solo disponible en BuenasTareas
  • Páginas : 5 (1207 palabras )
  • Descarga(s) : 0
  • Publicado : 19 de junio de 2011
Leer documento completo
Vista previa del texto
1. Breve historia:

El Buscaminas (en inglés: Minesweeper) es un videojuego para un jugador inventado por Robert Donner en 1989. El objetivo del juego es despejar un campo de minas sin destapar ninguna mina.
El juego ha sido programado para muchos sistemas operativos, pero debe su popularidad por la versión que viene con Microsoft Windows.
Fuente: www.wikipedia.com

2. Reglas:

ElObjetivo del juego es destapar todas las casillas que no ocultan una mina, si se destapa una casilla que contiene una mina se pierde el juego, cuando se destapa una casilla que no tiene una mina esta podrá contener un numero que indica cuantas minas tiene alrededor, si no tiene numero significa que no tiene minas alrededor y las casillas vecinas que no tengan ninguna mina alrededor se destaparanautomáticamente, para terminar el juego se deben marcar las casillas que se sospeche que tienen mina con Click derecho, se pondrá una B sobre la casilla, si se ponen 20 casillas con B y no existen más casillas por descubrir se ganara el juego.
La versión 1.0 del juego tiene 1 nivel de dificultad, 9x9 casillas con 20 minas.

3. Interfaz del juego.

Imagen 1. Interfaz juego

1. Botón parainiciar un juego Nuevo. También muestra el número de minas por encontrar, cada vez que se pone una B el contador disminuye.
2. Minas sin destapar.
3. Mina destapada, el 4 indica que hay 4 minas alrededor.
4. B, Bandera, indica que se sospecha que existe una mina en ese lugar.

Cuando se ponen 20 B y no hay más casillas por destapar se ganara el juego.

Imagen 2. Interfaz del juegocuando se presiona una mina

5. Se destapa una casilla que contiene una mina, automáticamente se pierde el juego.
6. Aparece un mensaje indicando que se pierde el juego.

Imagen 3. Interfaz cuando se gana el juego

7. Indicador de banderas=20.
8. Mensaje que indica que se gano el juego.

4. Lógica utilizada.

4.1 Interfaz

Panel principal que contiene un Grid que separalos botones con la imagen y el botón de iniciar.
Un Panel superior que contiene a la izquierda una imagen y a la derecha una botón para iniciar un juego nuevo.
Panel de abajo que tiene un Grid con 81 botones.
Los 81 botones tienen implementado un evento, en donde se identifica que botón es presionado y si es click derecho o izquierdo.
El botón de iniciar tiene implementado un evento parainiciar un juego nuevo.

5.2. Lógica.

Se inicia la matriz con las minas, es aleatoria, 0 si no contiene mina, -1 si contiene mina, si pongo bandera cambia a 2 si no tiene mina y -2 si tiene mina.

Una vez se presiona un botón se identifica que botón fue presionado, para esto se recorre la matriz de botones y se compara con evento.getSource(); esto nos sirve para encontrar la celda endonde se presiono, se compara con la matriz de minas y si tiene mina se termina el juego, si no se evalúa cuantas minas tiene minas alrededor, si no tiene se evalúa cada celda alrededor de esa celda para ver si tampoco tiene minas para desactivarlas automáticamente, para esto se llama la misma función de manera recursiva con un parámetro de 1 o 0, 1 para evaluar cuantas minas tiene alrededor y 0 paraque entre de manera recursiva, se vio la necesidad de implementar un la lista que guarde que casillas se han visto para evitar bucles infinitos,
Cuando se ponen las 20 banderas se valida si quedan casillas desactivadas, si no se gana el juego.

5. Fragmentos de Código.

5.1. Variables Globales

Entre las mas importantes tenemos:
JButton botones[][]; // Matriz de los botones
intmatrizMinas[][];// Matriz con las minas puestas, se llena aleatoriamente
int dim = 9; //numero de filas y columnas, posee 9 filas y 9 columnas
int minasPuestas = 0; //numero de minas puestas, empieza con 0
int totalMinas = 20; // total de minas.

6.3. Constructor

public buscaminas() {

EtiquetaNum = new javax.swing.JLabel();
iniciar =...
tracking img