Login/Register/Disconnect Speichert nichts..

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 Liebe Community
    ich bin grade dabei ein selfmade zu schreiben.. habe aber folgende Probleme undzwar wenn ich Mich registriere
    und mir z.B Admin level gebe und disconnecte dann speichert er dies nicht.. genau das gleiche mit dem Level oder
    Führerschein.. weiß einer wodran es liegt ?


    Codes:


    stock Register(playerid,key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_Create(Spielerdatei);
    dini_Set(Spielerdatei,"Passwort",key);
    SendClientMessage(playerid, ROT, "Du hast dich erfolgreich Registriert");
    dini_IntSet(Spielerdatei, "Level",1);
    dini_IntSet(Spielerdatei, "Führerschein",0);
    dini_IntSet(Spielerdatei, "Adminlevel",0);
    dini_IntSet(Spielerdatei, "Banned",0);
    dini_IntSet(Spielerdatei, "Geld",0);
    dini_IntSet(Spielerdatei, "Fraktion",0);
    pFirstLog[playerid] = true;
    SetPlayerScore(playerid,0);
    SetPVarInt(playerid,"loggedin",1);
    SpawnPlayer(playerid);
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein","Login","Abbrechen");
    return 1;
    }
    stock Login(playerid, key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    if(!strcmp(key,dini_Get(Spielerdatei, "Passwort"), false))
    {
    LoadAccount(playerid);
    pFirstLog[playerid] = false;
    SendClientMessage(playerid, GRÜN, "Du hast dich erfolgreich eingeloggt.");
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {
    SendClientMessage(playerid, BLUE,"Das Passwort war nicht richtig.");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein","Login","Abbrechen");
    return 1;
    }
    }


    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Banned",dini_Int(Spielerdatei,"Banned"));
    SetPVarInt(playerid,"Führerschein",dini_Int(Spielerdatei,"Führerschein"));
    if(GetPVarInt(playerid,"Banned")==1)
    {
    SendClientMessage(playerid, ROT, "Du bist von diesem Server gebannt");
    Kick(playerid);
    }
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }


    Unter Disconnect ;


    if(GetPVarInt(playerid,"loggedin")==1)
    {
    SpielerSpeichern(playerid);
    }


    er speichert nichts ... ich weiß nicht wodran das liegt auch wenn ich in der Spielerdatei Admin Levle eintrage
    und auf Server gehe habe ich dies nicht.. ? :(


    MFG Rapture

  • Du fragst beim Laden überhaupt nicht ab wie der Spieler heißt.
    name kann ja nicht von alleine gefüllt werden.
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);

  • Gerne :( Denn sonst hat mein Selfmade noch keinen sinn.. Ich weiß es echt nicht..


    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Banned",GetPVarInt(playerid,"Banned"));
    dini_IntSet(Spielerdatei,"Führerschein",GetPVarInt(playerid,"Führerschein"));
    }
    return 1;
    }