Fehler im Loginsystem, nur ich finde ihn nicht:S

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
  • Ayo Ladys, da ich gemerkt habe, dass ich einen Fehler im Loginsystem habe, habe ich versucht ihn zu entfernen nur finde ich ihn leider nicht:(
    Also kommen wir zum Fehler:
    Wenn man richtiges PW eingibt loggt er sich ein (alles i.o)
    Wenn man falsche PW eingibbt sendet er dem Spieler ne nachricht dass das PW falsch war
    Aber wenn man garkein PW eingibt, loggt er sich einfach ein, ohne dabei die Spielervariablen zu laden oO


    Hier der Code


    stock Login(playerid,key[])
    {
    new Spieler[64],Sname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Sname,sizeof(Sname));
    format(Spieler,sizeof(Spieler),"/PennerGrounds/Spieler/%s.txt",Sname);


    if(!strcmp(dini_Get(Spieler,"Passwort"), key,false) && strlen(key))
    {
    new name[MAX_PLAYER_NAME+1], string[128];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "{6863BD}Der Spieler {FFFFFF}%s {6863BD}hat sich gerade eingeloggt!", name);
    SendClientMessageToAll(0xFFFFFFFF, string);
    LoadAccount(playerid);

    if(SpielerInfo[playerid][Adminlevel] > 0)
    {
    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pName, sizeof pName);
    strins(pName, "[PeM]", 0);
    SetPlayerName(playerid, pName);
    }
    }


    else
    {
    SendClientMessage(playerid,0xFFFFFFFF,"{6863BD}Das eingegebene Passwort war nicht richtig!");
    ShowPlayerDialog(playerid,2,DIALOG_STYLE_PASSWORD ,"Login","Bitte gib dein Passwort ein.","Login","Abbruch");
    }


    }

  • du könntest unter ondialogresponse abfragen ob überhaupt was eingegeben wurde bevor du ihn zum login stock schickst.
    if(!strlen(inputtext))


    edit hab grad gesehen du hast hier die abfrage schon
    && strlen(key))


    aber scheint nicht zu klappen -.-
    vielleicht wird ein leerzeichen an den stock geschickt und kein leerer string.. kp