Anuncios Google

ayuda con guardar y cargar(no hay manera).

Hola,se que me habeis dicho muchas veces como guardar y cargar,pero de repente ha dejado de funcionarme la explicacion de copette y la de palib,asi que les dejo aqui las variables y ustedes intentan poner como cargarlo y guardarlo aver si asi lo consigo de una vez por todas(ni el fat ni el wifi nunca han sido mis amigos).

Variables:

u8 ce = 0;(activa la opcion continuar)

u8 complete(sirve para saber si te pasaste la mision)

u8 Selectedplayer(para saber que personaje tenias)

necesito que se guarden y carguen para poder seguir X-Soft,Hybbox y Genesis War DS.

esperan2



Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de eglomer

...

----------------------------------------------------------

/*u8 ce = 0;(activa la opcion continuar)

u8 complete(sirve para saber si te pasaste la mision)

u8 Selectedplayer(para saber que personaje tenias)*/

 

void FuncGuardar(char FileName,u8 VarSave)

{

     FILE*savefile = fopen(FileName,"wb");

    fwrite(&VarSave, 1, sizeof(VarSave), savefile);

    fclose(savefile);

}

FuncGuardar("file.sav", ce);

-------------------------------------------------------------

 

Así se guardaría sólo la última variable que le pasases, pues el modo wb sobreescribe, y el char, al pasarlo como un caracter sólo y no como una cadena dará error :S

 Como ya dije en el otro post, lo más fácil para cargar y guardar es a base de structs, pero sino se quiere usar structs, se puede hacer lo siguiente:

//Fuera del main

void Guarda (char archivo[], u8 ce, u8 complete, u8 selectedplayer){
     FILE *f;

     if ((f = fopen(archivo,"wb")) == NULL ){
         // pones el error que quieras
         PA_OutputText(0,0,0,"Error al abrir partida");
     }else{
            fwrite(&ce, 1, sizeof(ce), f);
            fwrite(&complete, 1, sizeof(complete), f);
            fwrite(&selectedplayer, 1, sizeof(selectedplayer), f);

            fclose(f);
     }

     return;
}

void Carga (char archivo[], u8 *ce, u8 *complete, u8 *selectedplayer){
     FILE *f;

     if ((f = fopen(archivo,"rb")) == NULL ){
         // pones el error que quieras
         PA_OutputText(0,0,0,"Error al abrir partida");
     }else{
            fread(&ce, 1, sizeof(ce), f);
                fread(&complete, 1, sizeof(complete), f);
            fread(&selectedplayer, 1, sizeof(selectedplayer), f);

                fclose(f);
     }

     return;
}

// En el main

    u8 ce = 0;
    u8 complete;
    u8 selectedplayer;
   
    Guarda ("file.sav", ce, complete, selectedplayer);
    Carga ("file.sav", &ce, &complete, &selectedplayer);

 

 

A ver si así solucionas tus problemas de Guarda/Carga de una vez :)

 

Saludos! ^^


Proyectos en curso

El Taller de Eglomer

Imagen de The Dark Master

voy a probarlo gracias,por

voy a probarlo gracias,por cierto ¿que va a pasar con el hybbox?

Ya nunca te veo.

salu2

Imagen de The Dark Master

vale no pasa nada,bueno a mi

vale no pasa nada,bueno a mi no al hybbox si,se ha quedado parado.

salu2

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.