Proyecto buscaminas

46

Transcript of Proyecto buscaminas

Page 1: Proyecto buscaminas
Page 2: Proyecto buscaminas

CETIS 109PROYECTO BUSCAMINAS

DESARROLLO DE APLICACIONES MOVILESGRADO: 4 GRUPO:DM

EDITH YAMILETH GONZALEZ CAROJORGE ENRIQUE SANTIAGO GARCIA PROFRA: MARGARITA ALV. ROMERO

IDEA CREACION DE UNA APLICACIÓN PARA ANDROID, LA CUAL LLEVA EL NOMBRE DE MINESWEEPER (BUSCA MINAS).

Page 3: Proyecto buscaminas

USOS DE LA APLICACIÓN Y RESOLUCION PRACTICA ENTRETENIMIENTO CONOCIMIENTO

INTRODUCCION

Page 4: Proyecto buscaminas

En este proyecto se hizo el estudio y comprobación de la teoría aplicada acerca del juego Buscaminas (Minesweeper), el objetivo era investigar acerca de su impacto en el Mercado, además de la realización del juego en un formato APK para que sea instalado

en cualquier Móvil Android.

JUSTIFICACION:Lo creamos como un homenaje a los juegos predeterminados en Microsoft que muchas veces se piensa ya no tienen lugar en la actualidad, lo adaptamos a un modo Móvil para todos aquellos

que aun siguieran siendo jugadores potenciales ya que, no es solo útil para el entretenimiento, en ocasiones ha sido utilizada como

practica en el entorno educativo, por su estrategia

CONCLUSIONESLlegamos a la conclusión de que el juego Buscaminas

(Minesweeper) ha sido comúnmente usado por muchas personas, también existe otro porcentaje que no sabe acerca de él, de las

personas que nos dieron sus opiniones, nos dimos cuenta de que hay mucha gente que encuentra un gusto por el juego, les

gustaría nuevas dinámicas, actualizaciones, etc. Además de

Page 5: Proyecto buscaminas

contener una historia no muy conocida, todo esto fue logrado a través de la investigación realizada a lo largo de este proyecto.

GRAFICAS

Page 6: Proyecto buscaminas

Esta grafica especifica la valoración del juego en pc según sus clientes, es un juego clásico, que se sigue considerando entre los ciudadanos como arduamente atrayente, además de un reto para

la comunidad.

Page 7: Proyecto buscaminas

Esta grafica de pastel marca el número de personas que consideran aburrido o entretenido

Page 8: Proyecto buscaminas

CUESTIONARIO DE ESTUDIO DE MERCADOA través de este proyecto creamos una encuesta compuesta por

las preguntas que están a continuación que fue aplicada a distintas personas:

¿Conoce el juego Minesweeper (Buscaminas)?

¿Cómo se enteró de su existencia?

¿Alguna vez lo uso?

¿Con que frecuencia?

En una escala del 1 al 10 ¿Cómo lo valoraría?

En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

¿Alguna vez lo ha recomendado o mostrado a otras personas?

¿Qué es lo que le gusto y lo que no, de este juego?

¿Qué cambios haría para mejorarlo?

¿Qué incrementaría tu potencial interés en este juego?

Page 9: Proyecto buscaminas

*LA ENCUESTA SE APLICO A 11 PERSONAS, ESTAS FUERON SUS RESPUESTAS:

ENCUESTA 1Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

Page 10: Proyecto buscaminas

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 2Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

Page 11: Proyecto buscaminas

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 3Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

Page 12: Proyecto buscaminas

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 4Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

Page 13: Proyecto buscaminas

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 5Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

Page 14: Proyecto buscaminas

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 6Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

Page 15: Proyecto buscaminas

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

-¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 7Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

Page 16: Proyecto buscaminas

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 8Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

Page 17: Proyecto buscaminas

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 9Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

Page 18: Proyecto buscaminas

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 10Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

Page 19: Proyecto buscaminas

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

-¿Qué incrementaría tu potencial interés en este juego? ENCUESTA 11Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

Page 20: Proyecto buscaminas

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 12Nombre: Ocupación:

Page 21: Proyecto buscaminas

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 13

Page 22: Proyecto buscaminas

Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

10. -¿Qué incrementaría tu potencial interés en este juego?

Page 23: Proyecto buscaminas

ENCUESTA 14Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

Page 24: Proyecto buscaminas

10. -¿Qué incrementaría tu potencial interés en este juego?

ENCUESTA 15Nombre: Ocupación:

1. -¿Conoce el juego Minesweeper (Buscaminas)?

2. -¿Cómo se enteró de su existencia?

3. -¿Alguna vez lo uso?

4. -¿Con que frecuencia?

5. -En una escala del 1 al 10 ¿Cómo lo valoraría?

6. - En comparación a otros juegos del mismo tipo ¿Cómo lo cataloga?

7. -¿Alguna vez lo ha recomendado o mostrado a otras personas?

8. -¿Qué es lo que le gusto y lo que no, de este juego?

9. -¿Qué cambios haría para mejorarlo?

Page 25: Proyecto buscaminas

10. -¿Qué incrementaría tu potencial interés en este juego?

METODOLOGIA

En este proyecto nos basamos en una Investigación: Descriptiva

Por medio de la Investigación descriptiva tratamos de exponer cada una de las teorías, y los descubrimientos a lo largo de la investigación, además de toda la información que se pudiera reunir acerca del proyecto, su historia, su proceso etc.Observamos las ideas y opiniones de las personas en campo abierto respecto a la aplicación del Juego en sus vidas, su uso, entre otras cosas.

Page 26: Proyecto buscaminas

MARCO TEORICO

¿POR QUE LA APLICACIÓN ES PARA ANDROID?¿Por qué nos interesa Android? Android es una plataforma importante por dos razones. Primero, el hecho de que Google lo esté introduciendo y la notoriedad que Android ha obtenido en un periodo de tiempo tan corto. Google está mostrando su poderío e intentando ganar el abarrotado mercado móvil. Su primera salva en este mercado, Android y la Open Handset Alliance es un impresionante punto de partida. La segunda razón por la que Android es importante es porque no es solo otra plataforma móvil con un menú telefónico y una pantalla táctil. Android toma un abordaje distinto para las aplicaciones. La arquitectura de Android permite un entorno de software altamente personalizable gracias a su enlace de ejecución de las acciones solicitadas y el código para satisfacer estas

Page 27: Proyecto buscaminas

solicitudes. Ya sea por las consideraciones dirigidas por el mercado o los aspectos técnicos de Android, es una plataforma digna de examinar.

¿EN QUE PLATAFORMA FUE INICIADA ESTA IDEA? Eclipse: es un entorno de desarrollo integrado, de Código abierto y Multiplataforma. Mayoritariamente se utiliza para desarrollar lo que se conoce como "Aplicaciones de Cliente

Enriquecido", opuesto a las aplicaciones "Cliente-liviano" basadas en navegadores. Es una potente y completa plataforma de Programación, desarrollo y compilación de elementos tan variados como sitios web, programas en C++o aplicaciones Java. No es más que un entorno de desarrollo integrado (IDE) en el que encontrarás todas las herramientas y funciones necesarias para tu trabajo, recogidas además en una atractiva interfaz que lo hace fácil y agradable de usar.

ADT

Page 28: Proyecto buscaminas

El ADT por sus siglas Herramientas de Desarrollo Android en inglés Android Development Tools; es un plugin para Eclipse que permite construir aplicaciones para Android.

ADT extiende las capacidades de Eclipse permitiéndonos desarrollar rápidamente proyectos para Android, agregar paquetes bases para las aplicaciones, testear nuestras aplicaciones usando las herramientas del SDK y exportar nuestras aplicaciones a .apks.

DESCRIPCION DEL MANEJO DE LA APLICACIONBuscaminas es un juego de video de un solo jugador. El objetivo del juego es despejar un tablero rectangular que contiene "minas" ocultos sin detonar ninguna de ellas, con la ayuda de pistas sobre el número de minas vecinas en cada campo. El juego tiene su origen en la década de 1960, y ha sido escrito para muchas plataformas informáticas en uso hoy en día. Tiene muchas variaciones y ramificaciones.

Buscaminas: reglas y aspectos básicosObjetivoEncontrar los recuadros vacíos evitando las minas. Cuanto más rápido vacíe el tablero, mejor será su puntuación.

TableroBuscaminas tiene tres tableros estándar a elegir, cada uno de una dificultad creciente.

Principiante: 81 recuadros, 10 minas

Page 29: Proyecto buscaminas

Intermedio: 256 recuadros, 40 minas Experto: 480 recuadros, 99 minas

También puede crear un tablero personalizado; para ello, haga clic en el menú Juego y, a continuación, en Opciones. Buscaminas admite tableros de hasta 720 recuadros y 668 minas.

Cómo jugarLas reglas del Buscaminas son simples:

Si se descubre una mina termina el juego. Si se descubre un recuadro vacío, el juego sigue. Si se descubre un número, indica el número de minas que hay

ocultas en los ocho recuadros de alrededor, una información que le permite deducir los recuadros en los que puede hacer clic con seguridad.

Consejos y sugerenciasMarque las minas. Si sospecha que un recuadro esconde una mina, haga clic con el botón secundario en él. Se agregará una marca al recuadro. (Si no está seguro, vuelva a hacer clic con el botón secundario para marcarlo con un signo de interrogación.)

Estudie los patrones. Si tres recuadros de una fila muestran 2-3-2, puede saber que probablemente haya tres minas alineadas al lado. Si en un recuadro aparece un 8, todos los recuadros que lo rodean están minados.

Explore las zonas inexploradas. ¿No sabe dónde hacer clic? Pruebe a explorar nuevos territorios. Es mejor hacer clic en medio de los recuadros no marcados que hacer clic en una zona que sospecha que está minada.

Page 30: Proyecto buscaminas
Page 31: Proyecto buscaminas

ASPECTO HISTORICOBuscaminas (nombre original 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 detonar ninguna.El Buscaminas es, probablemente, el juego más popular de todos los que Windows incluye y de paso, el más original en su concepto. ¿Quién podría pensar que liberar un campo minado pudiese ser tan divertido? pues Robert Donner y Curt Johnson, creadores de este clásico. 

El Buscaminas vio la luz por primera vez dentro del Microsoft Entertaintment Pack para Windows. Dos años más tarde reaparecería ya dentro de la instalación estándar de Windows 3.1, y a partir de ahí en todas las sucesivas entregas del sistema operativo de Microsoft.SUS PRIMEROS CREADORESRobert Donner y Curt Johnson se acreditan por Microsoft como los autores de Buscaminas de Windows.Buscaminas fue programado por Robert Donner, quien comenzó a trabajar en Microsoft en mayo de 1989. Originario de Winnipeg, Canadá, que ya tenía un grado de Maestría en Ciencias de la Computación y había escrito 'Pista: Maestro detective' y 'Riesgo' en lenguaje ensamblador para el apple II.Donner también escribió TicTactics para la primera versión WEP. Esta fue una adaptación de la versión tablero de juego, lanzado en 1985 por Innovention. Notablemente, los dos programas anteriores de Donner para el Apple II eran adaptaciones de mesa

Page 32: Proyecto buscaminas

de juego y vendidos por Genius Ocio, filial Mastertronic desaparecida especializada en conversiones de juegos de mesa.

CODIGOEl código de la aplicación es:

package com.androidya.buscaminas;

import android.app.Activity;import android.content.Context;import android.graphics.Canvas;import android.graphics.Paint;import android.graphics.Typeface;import android.os.Bundle;import android.view.Menu;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;import android.view.Window;import android.view.WindowManager;import android.widget.LinearLayout;import android.widget.Toast;

public class MainActivity extends Activity implements OnTouchListener { private Tablero fondo; int x, y; private Casilla[][] casillas; private boolean activo = true;

@Override protected void onCreate(Bundle savedInstanceState) {

Page 33: Proyecto buscaminas

requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);

LinearLayout layout = (LinearLayout) findViewById(R.id.layout2); fondo = new Tablero(this); fondo.setOnTouchListener(this); layout.addView(fondo); casillas = new Casilla[8][8]; for (int f = 0; f < 8; f++) { for (int c = 0; c < 8; c++) { casillas[f][c] = new Casilla(); } } this.disponerBombas(); this.contarBombasPerimetro(); }

@Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity_main, menu); return true; }

public void presionado(View v) { casillas = new Casilla[8][8]; for (int f = 0; f < 8; f++) { for (int c = 0; c < 8; c++) { casillas[f][c] = new Casilla(); } }

Page 34: Proyecto buscaminas

this.disponerBombas(); this.contarBombasPerimetro(); activo = true;

fondo.invalidate(); }

@Override public boolean onTouch(View v, MotionEvent event) { if (activo) for (int f = 0; f < 8; f++) { for (int c = 0; c < 8; c++) { if (casillas[f][c].dentro((int) event.getX(), (int) event.getY())) { casillas[f][c].destapado = true; if (casillas[f][c].contenido == 80) { Toast.makeText(this, "Booooooooommmmmmmmmmmm", Toast.LENGTH_LONG).show(); activo = false; } else if (casillas[f][c].contenido == 0) recorrer(f, c); fondo.invalidate(); } } } if (gano() && activo) { Toast.makeText(this, "Ganaste", Toast.LENGTH_LONG).show(); activo = false; }

return true; }

class Tablero extends View {

public Tablero(Context context) {

Page 35: Proyecto buscaminas

super(context); }

protected void onDraw(Canvas canvas) { canvas.drawRGB(0, 0, 0); int ancho = 0; if (canvas.getWidth() < canvas.getHeight()) ancho = fondo.getWidth(); else ancho = fondo.getHeight(); int anchocua = ancho / 8; Paint paint = new Paint(); paint.setTextSize(20); Paint paint2 = new Paint(); paint2.setTextSize(20); paint2.setTypeface(Typeface.DEFAULT_BOLD); paint2.setARGB(255, 0, 0, 255); Paint paintlinea1 = new Paint(); paintlinea1.setARGB(255, 255, 255, 255); int filaact = 0; for (int f = 0; f < 8; f++) { for (int c = 0; c < 8; c++) { casillas[f][c].fijarxy(c * anchocua, filaact, anchocua); if (casillas[f][c].destapado == false) paint.setARGB(153, 204, 204, 204); else paint.setARGB(255, 153, 153, 153); canvas.drawRect(c * anchocua, filaact, c * anchocua + anchocua - 2, filaact + anchocua - 2, paint); // linea blanca canvas.drawLine(c * anchocua, filaact, c * anchocua + anchocua, filaact, paintlinea1); canvas.drawLine(c * anchocua + anchocua - 1, filaact, c * anchocua + anchocua - 1, filaact + anchocua, paintlinea1);

if (casillas[f][c].contenido >= 1

Page 36: Proyecto buscaminas

&& casillas[f][c].contenido <= 8 && casillas[f][c].destapado) canvas.drawText( String.valueOf(casillas[f][c].contenido), c * anchocua + (anchocua / 2) - 8, filaact + anchocua / 2, paint2);

if (casillas[f][c].contenido == 80 && casillas[f][c].destapado) { Paint bomba = new Paint(); bomba.setARGB(255, 255, 0, 0); canvas.drawCircle(c * anchocua + (anchocua / 2), filaact + (anchocua / 2), 8, bomba); }

} filaact = filaact + anchocua; } } }

private void disponerBombas() { int cantidad = 8; do { int fila = (int) (Math.random() * 8); int columna = (int) (Math.random() * 8); if (casillas[fila][columna].contenido == 0) { casillas[fila][columna].contenido = 80; cantidad--; } } while (cantidad != 0); }

private boolean gano() { int cant = 0; for (int f = 0; f < 8; f++) for (int c = 0; c < 8; c++)if (casillas[f][c].destapado)

Page 37: Proyecto buscaminas

cant++; if (cant == 56) return true; else return false; }

private void contarBombasPerimetro() { for (int f = 0; f < 8; f++) { for (int c = 0; c < 8; c++) { if (casillas[f][c].contenido == 0) { int cant = contarCoordenada(f, c); casillas[f][c].contenido = cant; } } } }

int contarCoordenada(int fila, int columna) { int total = 0; if (fila - 1 >= 0 && columna - 1 >= 0) { if (casillas[fila - 1][columna - 1].contenido == 80) total++; } if (fila - 1 >= 0) { if (casillas[fila - 1][columna].contenido == 80) total++; } if (fila - 1 >= 0 && columna + 1 < 8) { if (casillas[fila - 1][columna + 1].contenido == 80) total++; }

if (columna + 1 < 8) { if (casillas[fila][columna + 1].contenido == 80) total++; } if (fila + 1 < 8 && columna + 1 < 8) {

Page 38: Proyecto buscaminas

if (casillas[fila + 1][columna + 1].contenido == 80) total++; }

if (fila + 1 < 8) { if (casillas[fila + 1][columna].contenido == 80) total++; } if (fila + 1 < 8 && columna - 1 >= 0) { if (casillas[fila + 1][columna - 1].contenido == 80) total++; } if (columna - 1 >= 0) { if (casillas[fila][columna - 1].contenido == 80) total++; } return total; }

private void recorrer(int fil, int col) { if (fil >= 0 && fil < 8 && col >= 0 && col < 8) { if (casillas[fil][col].contenido == 0) { casillas[fil][col].destapado = true; casillas[fil][col].contenido = 50; recorrer(fil, col + 1); recorrer(fil, col - 1); recorrer(fil + 1, col); recorrer(fil - 1, col); recorrer(fil - 1, col - 1); recorrer(fil - 1, col + 1); recorrer(fil + 1, col + 1); recorrer(fil + 1, col - 1); } else if (casillas[fil][col].contenido >= 1 && casillas[fil][col].contenido <= 8) { casillas[fil][col].destapado = true; } } }

Page 39: Proyecto buscaminas

}