dini Probleme

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
  • Hallo,
    Ich hab ein Problem mit mein dini_System,wenn ich rein joine
    und die werte im gamemode sich ändern(SetPVarInt) wird dies
    vor dem disconnect nicht gespeichert und die datei Name.ini.part
    bleibt weiterhin offen.Könnt ihr sagen woran es liegt?
    dini_IntSet wird ausgeführt so(dini_IntSet(playerid,"....",GetPVarInt(playerid,"....")))


    beim Registrieren wird die Registrierungsdatum und ip eingetragen.



    MFG Martinez

  • //------------------[SpielerSpeichern-Stock]------------------------
    stock SpielerSpeichern(playerid)
    {
    //--------[Fragt ob Spieler noch auf Server ist ab]-------
    if(GetPVarInt(playerid,"eingeloggt") == 1)
    {
    //--------[Veriablien/Formate]-------
    new Spielerdatei[64];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    //--------[Account]-------
    dini_IntSet(Spielerdatei,"Tutorial",GetPVarInt(playerid,"Tutorial"));
    dini_IntSet(Spielerdatei,"Geschlecht",GetPVarInt(playerid,"Geschlecht"));
    dini_IntSet(Spielerdatei,"SWaffe",GetPVarInt(playerid,"SWaffe"));
    dini_IntSet(Spielerdatei,"SWaffe2",GetPVarInt(playerid,"SWaffe2"));
    dini_IntSet(Spielerdatei,"SWaffe3",GetPVarInt(playerid,"SWaffe3"));
    dini_IntSet(Spielerdatei,"SWaffeAmmo",GetPVarInt(playerid,"SWaffeAmmo"));
    dini_IntSet(Spielerdatei,"SWaffeAmmo2",GetPVarInt(playerid,"SWaffeAmmo2"));
    dini_IntSet(Spielerdatei,"SWaffeAmmo3",GetPVarInt(playerid,"SWaffeAmmo3"));
    //--------[Fraktion/Job]-------
    dini_IntSet(Spielerdatei,"Job",GetPVarInt(playerid,"Job"));
    //--------[Admin System]--------
    dini_IntSet(Spielerdatei,"Adminrang",GetPVarInt(playerid,"Adminrang"));
    //--------[Alles über Geld]--------
    dini_IntSet(Spielerdatei,"Geld",GetPVarInt(playerid,"Geld"));
    dini_IntSet(Spielerdatei,"Bank",GetPVarInt(playerid,"Bank"));
    //--------[RegisterDatum/RegisterIp]-------
    dini_IntSet(Spielerdatei,"GeburtsMonat",GetPVarInt(playerid,"GeburtsMonat"));
    dini_IntSet(Spielerdatei,"GeburtsTag",GetPVarInt(playerid,"GeburtsTag"));
    dini_IntSet(Spielerdatei,"Woher?",GetPVarInt(playerid,"Woher?"));
    }
    return 1;
    }

  • hast du Bei OnPlayerDisconnect
    Spielerspeichern Rein Gemacht


    ich habe es so




    if(GetPVarInt(playerid,"loggedin")==1)
    {
    SetPVarInt(playerid,"LspdDuty",0);
    SetPVarInt(playerid,"FbiDuty",0);
    SetPVarInt(playerid,"Aduty",0);
    SpielerSpeichern(playerid);
    }

    • Ist eingeloggt auch auf 1 gesetzt?
    • "Name.ini.part" - Das ist äußerst merkwürdig, da dini Dateien für jede Funktion öffnet und direkt wieder schließt. Eventuell bricht eine Funktion aus irgendeinem Grund ab. Versuche nach und nach ein paar Stellen auszuklammern und somit den Grund zu finden bzw. schau, wie weit deine Funktion durchläuft und so weiter.
    • Ist eingeloggt auch auf 1 gesetzt?
    • "Name.ini.part" - Das ist äußerst merkwürdig, da dini Dateien für jede Funktion öffnet und direkt wieder schließt. Eventuell bricht eine Funktion aus irgendeinem Grund ab. Versuche nach und nach ein paar Stellen auszuklammern und somit den Grund zu finden bzw. schau, wie weit deine Funktion durchläuft und so weiter.



    Genau und VIA Print nen Debug laufen um zu schauen wo der Code stoppt.

    RFT

  • //------------------[SpielerSpeichern-Stock]------------------------
    stock SpielerSpeichern(playerid)
    {
    printf("Debug 1/19");
    //--------[Fragt ob Spieler noch auf Server ist ab]-------
    if(GetPVarInt(playerid,"eingeloggt") == 1)
    {
    printf("Debug 2/19");
    //--------[Veriablien/Formate]-------
    new Spielerdatei[64];
    printf("Debug 3/19");
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",SpielerName(playerid));
    printf("Debug 4/19");
    //--------[Account]-------
    dini_IntSet(Spielerdatei,"Tutorial",GetPVarInt(playerid,"Tutorial"));
    printf("Debug 5/19");
    dini_IntSet(Spielerdatei,"Geschlecht",GetPVarInt(playerid,"Geschlecht"));
    printf("Debug 6/19");
    dini_IntSet(Spielerdatei,"SWaffe",GetPVarInt(playerid,"SWaffe"));
    printf("Debug 7/19");
    dini_IntSet(Spielerdatei,"SWaffe2",GetPVarInt(playerid,"SWaffe2"));
    printf("Debug 8/19");
    dini_IntSet(Spielerdatei,"SWaffe3",GetPVarInt(playerid,"SWaffe3"));
    printf("Debug 9/19");
    dini_IntSet(Spielerdatei,"SWaffeAmmo",GetPVarInt(playerid,"SWaffeAmmo"));
    printf("Debug 10/19");
    dini_IntSet(Spielerdatei,"SWaffeAmmo2",GetPVarInt(playerid,"SWaffeAmmo2"));
    printf("Debug 11/19");
    dini_IntSet(Spielerdatei,"SWaffeAmmo3",GetPVarInt(playerid,"SWaffeAmmo3"));
    printf("Debug 12/19");
    //--------[Fraktion/Job]-------
    dini_IntSet(Spielerdatei,"Job",GetPVarInt(playerid,"Job"));
    printf("Debug 13/19");
    //--------[Admin System]--------
    dini_IntSet(Spielerdatei,"Adminrang",GetPVarInt(playerid,"Adminrang"));
    printf("Debug 14/19");
    //--------[Alles über Geld]--------
    dini_IntSet(Spielerdatei,"Geld",GetPVarInt(playerid,"Geld"));
    printf("Debug 15/19");
    dini_IntSet(Spielerdatei,"Bank",GetPVarInt(playerid,"Bank"));
    printf("Debug 16/19");
    //--------[RegisterDatum/RegisterIp]-------
    dini_IntSet(Spielerdatei,"GeburtsMonat",GetPVarInt(playerid,"GeburtsMonat"));
    printf("Debug 17/19");
    dini_IntSet(Spielerdatei,"GeburtsTag",GetPVarInt(playerid,"GeburtsTag"));
    printf("Debug 18/19");
    dini_IntSet(Spielerdatei,"Woher?",GetPVarInt(playerid,"Woher?"));
    printf("Debug 19/19");
    }
    return 1;
    }


    in der Konsole kommt

    PHP
    [15:12:25] [join] Martinez has joined the server (0:217.50.156.202)
    [15:12:55] Debug 1/19
    [15:12:55] Debug 2/19
    [15:12:55] Debug 3/19
    [15:12:55] Debug 4/19
    [15:13:00] Debug 1/19
    [15:13:00] Debug 2/19
    [15:13:00] Debug 3/19
    [15:13:00] Debug 4/19
    [15:13:00] [part] Martinez has left the server (0:1)

    Einmal editiert, zuletzt von Martinez ()

  • Dann lass dir doch mal 'Spielerdatei' und 'GetPVarInt(playerid,"Tutorial")' ausgeben (vor dini_IntSet()). Versuche einfach den Fehler zu finden, indem du systemgenerierte Variablen vergleichst und somit dem Fehler auf die Spur kommst.