diff --git a/main.c b/main.c index b749dc0..df9c8e5 100644 --- a/main.c +++ b/main.c @@ -102,6 +102,7 @@ int main(int argc, char* argv[]){ } if(sair== - 4){ // limpar jogo para reiniciar + restartGame(game,tableSize,&nJogada); } } @@ -117,7 +118,7 @@ int main(int argc, char* argv[]){ int askUser(){ int cod =0; char answer; - printf("Quer jogar novamente?(y or n)\n"); + printf("Deseja jogar novamente?(y or n)\n"); scanf(" %c",&answer); if(answer == 'n' || answer == 'N'){ diff --git a/minesweeper b/minesweeper index d2174c4..28d2d6f 100755 Binary files a/minesweeper and b/minesweeper differ diff --git a/tGame.c b/tGame.c index 8e8597e..7aeed98 100644 --- a/tGame.c +++ b/tGame.c @@ -177,3 +177,16 @@ void floodFillVazias(tGame** g, int sz, char bomba, char vazia, int x, int y){ floodFillVazias(g, sz, bomba, vazia, x, y - 1); } + +void restartGame(tGame** g, int sz, int* nJogada){ + int i,j; + *nJogada = 1; + for(i=0; i < sz; i++){ + for(j=0; j < sz; j++){ + if(g[i][j].state == 1){ + g[i][j].state = 0; + } + } + } + +} \ No newline at end of file diff --git a/tGame.h b/tGame.h index e63319a..92405d7 100644 --- a/tGame.h +++ b/tGame.h @@ -29,6 +29,9 @@ void floodFillVazias(tGame** g, int sz, char bomba, char vazia, int x, int y); // conta as bombas em uma dada posicao void conta_bomba_position(tGame **g,int i,int j,int sz,char bomba); +// reinicia o jogo para o estado inicial +void restartGame(tGame** g, int sz, int* nJogada); + // desaloca memoria alocada de uma tGame void freePosition(tGame* g);