SII Save & Load

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hi all,
    da ich mit SII probleme habe würd ich mich freuen wenn Ihr mir helfen könnt.
    Ich will nä Save & Load Datei.
    Hier jetzt beispiel nän enum.


    PHP
    enum hInfo
    {
        Float:eX,
        Float:eY,
        Float:eZ,
        Float:aX,
        Float:aY,
        Float:aZ,
    };
    new HausInfo[MAX_HOUSES][hInfo];


    //

    PHP
    #define MAX_HOUSES 10


    Jetzt brauch ich 2 Codes, entweder Callbacks oder Stocks,
    der eine Load und der andere Save.
    Bsp Save Callback/Stock
    soll die Floats in eine Datei schreiben und per Load will ich die wieder auslesen.
    Bei mir ist das problem ich habs versucht aber nie wurde was in die Datei geschrieben.
    Würde mich freuen wenn wer was machen kann :)
    Mfg

  • dini:
    speichern:
    public SaveHaus()
    {
    for(new i=0;i<MAX_HOUSES;i++)
    {
    new formatLD[256];
    format(formatLD,sizeof(formatLD),"hausdaten_%d.cfg",i);
    if(dini_Exists(formatLD))
    {
    dini_FloatSet(formatLD,"eX",HausInfo[i][eX]);
    dini_FloatSet(formatLD,"eY",HausInfo[i][eY]);
    dini_FloatSet(formatLD,"eZ",HausInfo[i][eZ]);
    dini_FloatSet(formatLD,"aX",HausInfo[i][aX]);
    dini_FloatSet(formatLD,"aY",HausInfo[i][aY]);
    dini_FloatSet(formatLD,"aZ",HausInfo[i][aZ]);


    }
    else
    {
    dini_Create(formatLD);
    dini_FloatSet(formatLD,"eX",HausInfo[i][eX]);
    dini_FloatSet(formatLD,"eY",HausInfo[i][eY]);
    dini_FloatSet(formatLD,"eZ",HausInfo[i][eZ]);
    dini_FloatSet(formatLD,"aX",HausInfo[i][aX]);
    dini_FloatSet(formatLD,"aY",HausInfo[i][aY]);
    dini_FloatSet(formatLD,"aZ",HausInfo[i][aZ]);
    }
    return 1;
    }
    }
    laden:


    public loadhaus()
    {
    for(new i=0;i<MAX_HOUSES;i++)
    {
    new formatLD[256];
    format(formatLD,sizeof(formatLD),"hausdaten_%d.cfg",i);
    if(dini_Exists(formatLD))
    {
    HausInfo[i][eX]= dini_Int(formatLD, "eX");
    HausInfo[i][eY] = dini_Int(formatLD, "eY");
    HausInfo[i][eZ] = dini_Int(formatLD, "eZ");
    HausInfo[i][aX]= dini_Int(formatLD, "aX");
    HausInfo[i][aY] = dini_Int(formatLD, "aY");
    HausInfo[i][aZ]= dini_Int(formatLD, "aZ");
    }
    else
    {
    dini_Create(formatLD);
    dini_FloatSet(formatLD,"eX",HausInfo[i][eX]);
    dini_FloatSet(formatLD,"eY",HausInfo[i][eY]);
    dini_FloatSet(formatLD,"eZ",HausInfo[i][eZ]);
    dini_FloatSet(formatLD,"aX",HausInfo[i][aX]);
    dini_FloatSet(formatLD,"aY",HausInfo[i][aY]);
    dini_FloatSet(formatLD,"aZ",HausInfo[i][aZ]);
    }
    return 1;
    }
    }

  • INI_WriteFloat("Key",HausInfo[MAX_HOUSES][eX]);


    Was key ist weist du bestimmt wen nicht:
    Key ist was vor dem steht was gespeichert werden soll.


    HausInfo[MAX_HOUSES][eX] Bedeutet:
    Es speichert genau das was eX ist.


    Wen du eX einen bestimmten wert setzt wird der gespeichert.



    Hab ausversehen lastx dringehabt von mir noch ^^.

  • Sorry schnacke konnte nicht antworten war weg.
    Aber bin ja jetzt da ^^.


    Mach es per schleife also wie m33p4....
    for(new i=0;i<MAX_HOUSES;i++)



    und dan:
    INI_WriteFloat("Key",HausInfo[i][eX]);