elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Juego Candy Crush
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Juego Candy Crush  (Leído 2,982 veces)
bjork

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Juego Candy Crush
« en: 14 Agosto 2014, 00:32 am »

Hola a todos :)
Tengo que hacer el juego Candy Crush en c++.
El array bidimensional tTablero tablero está dentro del struct tJuego juego,así:

typedef struct{
tTablero tablero;
int intentos;
int puntos;
}tJuego;

Al buscar si hay 3 o más elementos iguales en el array bidimensional (juego.tablero[filas][columnas]) tanto en filas como en las columnas,es decir,cuando se forman grupos,tengo que marcar a true estas posiciones en un array bidimensional de booleanos.
He hecho esto pero cuando compruebo en el array bidimensional de booleanos(tArrayBool grupo) si me reconoce los grupos que se han formado,siempre me sale el mismo resultado :

0000011100000111 .... (5 ceros y 3 unos)

Código
  1.  
  2. const int FILAS=9;
  3. const int COLUMNAS=9;
  4.  
  5. [....]
  6.  
  7. void verGrupos(tJuego juego,tArrayBool grupo){
  8. boolGrupos(grupo);//Inicializo el array bidimensional de booleanos a false.
  9. int cont=1;
  10.  
  11. for(int f=0; f< FILAS-1;){
  12. for(int c=0; c< COLUMNAS-1; c++){
  13. //Primero comprobar si hay grupos en horizontal
  14. if(juego.tablero[f][c] == juego.tablero[f][c+1]){
  15. cont++;
  16. if(cont >=3){
  17. int i=c;//Asigno el valor de la columna en que me encuentro actualmente a i.
  18. int num=0;
  19. while(cont>num){//Siempre me va comparar con 0.
  20. //Pongo a true la posición en la que estoy;la fila es constante cierto tiempo,lo que varía en cada momento es la columna.
  21.                                                grupo[f][i] = true;
  22. //Disminuyo el contador porque ya he ido poniendo las posiciones anteriores a true en el array de booleanos.
  23.                                               cont--;
  24. //Disminuyo para que vaya a la columna anterior.
  25.                                               i--;
  26. }
  27. }
  28. }
  29. //else
  30. }
  31. f++;
  32. }
  33. //Muestra lo que guarda el array de booleanos.
  34. for(int f=0; f< FILAS-1; f++){
  35. for(int c=0; c< COLUMNAS-1; c++){
  36. cout << grupo[0][c] ;
  37. }
  38. }
  39.  
  40.  
  41.  

Si pueden ayudarme a encontrar el fallo,se lo agradecería :).


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Candy Crush, el juego que encandila a miles de usuarios
Noticias
wolfbcn 0 1,949 Último mensaje 7 Abril 2013, 01:59 am
por wolfbcn
Candy Crush, ¡vigilen sus carteras!
Noticias
wolfbcn 1 2,002 Último mensaje 25 Mayo 2013, 17:43 pm
por TaLaP0 XoR BiT
Los peligros de la adicción al Candy Crush Saga
Noticias
wolfbcn 1 1,873 Último mensaje 19 Octubre 2013, 21:23 pm
por crazykenny
¿Comenzó el declive de Candy Crush?
Noticias
Mister12 0 1,283 Último mensaje 14 Agosto 2014, 07:01 am
por Mister12
Elimina las molestas notificaciones de Facebook, incluidas las de Candy Crush
Noticias
wolfbcn 0 1,596 Último mensaje 11 Enero 2015, 02:29 am
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines