Nach Restart alles Resettet?

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
  • Guten Abend Community!
    Wenn ich mich registriere, mir ein Skin auswähle läuft alles gut.
    Alles wird gespeichert wenn ich mich auslogge.
    Wenn ich mein Server restarte indem ich den Server schließe und wieder öffne, bleibt auch alles wie vorher.
    Doch wenn ich den Server INGAME restarte dann krieg ich wieder den CJ Skin, Adminlevel wird auf 0 gesetzt und mein Geld auch. Alles einfach.


    Hier mal vielleicht nützliche Codes:



    public OnGameModeExit()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    SaveAcc(i);
    }
    return 1;
    }



    public OnPlayerDisconnect(playerid, reason)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    SaveAcc(i);
    }
    return 1;
    }



    ocmd:restart(playerid,params[])
    {
    if(IsPlayerAnAdmin(playerid,3))
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    SaveAcc(i);
    }
    SendRconCommand("gmx");
    return 1;
    }
    else
    {
    SendClientMessage(playerid,c_falsch,"Das dürfen nur Admins!");
    return 1;
    }
    }



    stock LoadAcc(playerid)
    {
    new Spielerdatei[64],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    // Gespeicherte Sachen
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPlayerSkin(playerid,dini_Int(Spielerdatei,"Skin"));
    SetPVarInt(playerid,"Waffenschein1",dini_Int(Spielerdatei,"Waffenschein1"));
    SetPVarInt(playerid,"Waffenschein2",dini_Int(Spielerdatei,"Waffenschein2"));
    SetPVarInt(playerid,"Waffenschein3",dini_Int(Spielerdatei,"Waffenschein3"));
    SetPVarInt(playerid,"Autoschein",dini_Int(Spielerdatei,"Autoschein"));
    SetPVarInt(playerid,"Motorradschein",dini_Int(Spielerdatei,"Motorradschein"));
    SetPVarInt(playerid,"Flugschein",dini_Int(Spielerdatei,"Flugschein"));
    return 1;
    }


    stock SaveAcc(playerid)
    {
    new Spielerdatei[64],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    // Gespeicherte Sachen
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Skin",GetPlayerSkin(playerid));
    dini_IntSet(Spielerdatei,"Waffenschein1",GetPVarInt(playerid,"Waffenschein1"));
    dini_IntSet(Spielerdatei,"Waffenschein2",GetPVarInt(playerid,"Waffenschein2"));
    dini_IntSet(Spielerdatei,"Waffenschein3",GetPVarInt(playerid,"Waffenschein3"));
    dini_IntSet(Spielerdatei,"Autoschein",GetPVarInt(playerid,"Autoschein"));
    dini_IntSet(Spielerdatei,"Motorradschein",GetPVarInt(playerid,"Motorradschein"));
    dini_IntSet(Spielerdatei,"Flugschein",GetPVarInt(playerid,"Flugschein"));
    return 1;
    }




    stock IsPlayerAnAdmin(playerid,rang)
    {
    if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1;
    return 0;
    }


    Hat jemand vielleicht eine Möglichkeit dieses Problem zu lösen?


    MfG

  • Dann wird folgendes passiert sein.


    Irgendwo, setzt zu durch Deinen "Restart-Befehl" alle Werte auf Standard zurück.
    Wir müssne hier auch ein bisschen raten woran dies liegen kann.
    Folgende Gedanken habe ich hierbei:

    • Wird der Spieler bevor er gespeichert wird vom Server gekicktß (Dann unter OnPlayerDisconnect schauen, wo die Variablen zurückgesetzt werden)
    • Wird beim Einloggen durch den Restart die Werte generell auf den Standard zurückgesetzt?


    Vielleicht kommen wir dem Problem dadurch ein bisschen näher.

    Chief Technology Officer (CTO)


    Interesse an folgenden Domains?

    fivemp.de - planet-zoo.de

    Jetzt anschreiben :)

  • So ich vermute ich habe das Problem



    public OnGameModeInit()
    {
    DisableInteriorEnterExits();
    UsePlayerPedAnims();
    SetGameModeText("Blank Script");
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); //<<<
    return 1;
    }


    .. Ne das ist es auch nicht.
    Ich finde einfach nicht das Problem.
    Weitere Möglichkeiten?