
inluxbdx
(usa Ubuntu)
Enviado em 13/06/2015 - 10:53h
Então, na verdade tem que verificar tudo isso. Por que o jogador pode salvar a partida (o estado atual) e carregar depois. A função que tó usando pra salvar tá bem enxuta, acredito que tenho que verificar se o usuário já está no save, e atualizar a linha correspondente a ele. Assim como na leitura do save.bin e do ranking.bin.
void save_bin(Tabuleiro *jogador, Tabuleiro *computador){
char ch, sair;
printf("Deseja sair do jogo \n");
getchar();
scanf("%c", &sair);
if(sair=='S' || sair=='s'){
printf("Deseja salvar a partida? \n");
getchar();
scanf("%c",&ch);
if(ch=='S' || ch=='s'){
FILE* fp = fopen("save.bin", "wb+");
if(fp==NULL){
printf("Erro ao abrir o arquivo\n");
exit(EXIT_FAILURE);
}
fread(jogador, sizeof(Tabuleiro),1,fp);
fread(computador, sizeof(Tabuleiro),1,fp);
fwrite(jogador,sizeof(Tabuleiro),1,fp);
fwrite(computador,sizeof(Tabuleiro),1,fp);
fclose(fp);
printf("Salvando...\n");
printf("Retornando ao menu inicial ... \n");
limpa_tela_enter();
}else if(ch=='N' || ch=='n') {
getchar();
limpa_tela_enter();
}
} else if(sair=='N' || sair=='n') {
getchar();
limpa_tela_enter();
}
}