Concepto del juego (75%)
Preparado para la posibilidad de añadir más colores.Realización (40%)
Menú básico para iniciar la partida (y para activar los controles).Incorporada rutina para limpiar el tablero cuando 2 estrellas o más se comunican. Está basado en el algoritmo 4-Way Flood Fill, que debido a las pocas casillas del tablero funciona bien a pesar de la recursividad; para que funcione utilizo 3 matrices bidimensionales a modo de sistemas de coordenadas: tablero, que guarda los colores situados en el tablero, stars, que guarda el color de las estrellas situadas en el tablero y flood, una matriz temporal usada por la rutina del "Flood Fill" para comprobar si una zona de un único color tiene más de dos estrellas. El funcionamiento es el siguiente:
- Cuando se sitúa una cruz en el tablero se oculta el cursor y se lanza la rutina floodFill(color de la estrella) por cada estrella que haya en la matriz stars.
- Si al lanzar floodFill() la casilla en flood ya está pintada es que ya hay una estrella en la zona; hacemos el floodFill() con un valor específico para poder eliminar todas las casillas posteriormente.
- Reiniciamos la matriz flood y limpiamos tablero y stars de las casillas eliminadas
- Si se han eliminado casillas mostramos la puntuación (casillas eliminadas en la jugada).
- Lanzamos nueva cruz.
Advertencia: los colores y la mayor parte de la presentación del juego es provisional y cambiará cuando toda la mecánica del juego esté bien definida.
No hay comentarios:
Publicar un comentario