Login/Register

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,


    Da man bei meinem Server wenn man sich einloggt /login oder /register schreiben muss, wollte ich das in ein Dialog ändern.


    Folgendes Problem, wenn man bei dem Dialog das Passwort eingibt und login klickt passiert nix und wenn man beim Register Dialog ein Passwort eingibt und register klickt steht da zwar, Erfolgreich Registriert, aber bei scriptfiles ist dann bei dem Spieler kein passwort gespeichert, bitte Hilfe


    Erstmal Login:




    GetPlayerName(playerid, plname, sizeof(plname));
    format(string, sizeof(string), "%s.ini", plname);
    if(fexist(string))
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"LOGIN","Gebe dein Passwort ein.","Login","Abbrechen");


    if(dialogid==DIALOG_LOGIN)
    {
    if(response==0)
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Um zu spielen musst du dich einloggen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Das Passwort ist nicht korrekt");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"LOGIN","Gebe dein Passwort ein.","Login","Abbrechen");
    return 1;
    }
    new tmppass[64];
    OnPlayerLogin(playerid,tmppass);
    }
    }


    Und dann der /login Befehl


    if (strcmp(cmd, "/login", true) ==0 )
    {
    if(IsPlayerConnected(playerid))
    {
    new tmppass[64];
    if(gPlayerLogged[playerid] == 1)
    {
    SendClientMessage(playerid, COLOR_WHITE, "SERVER: Du bist bereits eingeloggt.");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Verwendung: /login [passwort]");
    return 1;
    }
    strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
    OnPlayerLogin(playerid,tmppass);
    }
    return 1;
    }




    //Register


    else
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gebe dein gewünschtes Passwort ein.","Registrieren","Abbrechen");
    }
    }


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Um zu spielen musst du dich registrieren.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Das Passwort ist nicht korrekt");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gebe dein gewünschtes Passwort ein.","Registrieren","Abbrechen");
    return 1;
    }
    new tmppass[64];
    OnPlayerRegister(playerid, tmppass);
    return 1;
    }
    }




    /register Befehel




    if (strcmp(cmd, "/register", true) ==0 )
    {
    if(IsPlayerConnected(playerid))
    {
    if(gPlayerLogged[playerid] == 1)
    {
    SendClientMessage(playerid, COLOR_WHITE, "SERVER: Du bist bereits eingeloggt.");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "%s.ini", sendername);
    new File: hFile = fopen(string, io_read);
    if (hFile)
    {
    SendClientMessage(playerid, COLOR_YELLOW, "Dieser Name ist schon vergeben! Bitte benutze einen anderen.");
    fclose(hFile);
    return 1;
    }
    new tmppass[64];
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Verwendung: /register [passwort]");
    return 1;
    }
    strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
    OnPlayerRegister(playerid,tmppass);
    }
    return 1;
    }




    Wär nett könntet ihr mir helfen, das Login wär wichtiger.


    Mfg, René

  • Für Dobble pots krigste eine verwahrnung und jetzt biss mehr zum thema.


    Guck dir mal das Login and Register system von MrMonatTutorials auf Youtube an. Das hilft dir weiter

  • Hab ich schon aber da muss man ja ganz neues dini dingsda machen, und wollte eigt das alte behalten weil jetzt ist da alles drin führerschein usw, und bei mr monat nur psw...



    Mfg, René