[Problem] Spieler werden gebannt/ Passwort angeblich falsch

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 Leute,


    Ich habe ein Problem. Und zwar, einige Leute werden gebannt wenn sie auf den Server kommen. Bzw. Angeblich ist das Passwort falsch obwohl es richtig ist.
    Wie kann ich das beheben??


    MFG EricWright

    2 Mal editiert, zuletzt von EricWright ()

  • Godfather...


    Function OnPlayerLogin(playerid,password[])
    {
    TextDrawShowForPlayer(playerid,Copyright14);
    new tmp2[256];
    new string2[128];
    new playername2[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername2, sizeof(playername2));
    format(string2, sizeof(string2), "/Accounts/%s.ini", playername2);
    new File: UserFile = fopen(string2, io_read);
    if(UserFile)
    {
    new PassData[256];
    new keytmp[256], valtmp[256];
    fread( UserFile , PassData , sizeof( PassData ) );
    keytmp = ini_GetKey( PassData );
    if( strcmp( keytmp , "Key" , true ) == 0 )
    {
    valtmp = ini_GetValue( PassData );
    strmid(PlayerInfo[playerid][pKey], valtmp, 0, strlen(valtmp)-1, 255);
    }
    if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 )
    {
    new key[ 256 ] , val[ 256 ];
    new Data[ 256 ];
    while ( fread( UserFile , Data , sizeof( Data ) ) )
    {
    key = ini_GetKey( Data );
    if( strcmp( key , "Level" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pLevel] = strval( val ); }
    if( strcmp( key , "AdminLevel" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdmin] = strval( val ); }
    if( strcmp( key , "Supporter" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSupporter] = strval( val ); }


    Da kommen die Sachen die geladen werden....


    for(new i = 1;i< 14;i++)
    {
    new tmpstring[128];
    format(tmpstring,sizeof tmpstring, "waffenslot%d",i);
    if( strcmp( key , tmpstring , true ) == 0)weapon[i-1] = strval(ini_GetValue( Data ));
    format(tmpstring,sizeof tmpstring, "ammoslot%d",i);
    if( strcmp( key , tmpstring , true ) == 0)ammo[i-1] = strval(ini_GetValue( Data ));
    GivePlayerWeapon(playerid,weapon[i-1],ammo[i-1]);
    }
    }//end while
    fclose(UserFile);//close the file after everything has been read in the while
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das Passwort ist nicht korrekt.","Login","Abbrechen");
    fclose(UserFile);
    gPlayerLogTries[playerid] += 1;
    if(gPlayerLogTries[playerid] == 4) { Kick(playerid); }
    LoginTextForPlayer(playerid, 1);
    return 1;
    }


    Bitte um Hilfe

    Einmal editiert, zuletzt von EricWright ()