Login & Register System

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
  • Kann nicht einfach jemand sagen, was man ändern muss?


    Oder mir sagen, was ich schicken soll und er ändert es?


    Habe das standart GF einloggen per /login und /register etc...
    Wenn ihr das alle wisst, kanns dochnicht schwer sein...
    Schicke ich euch die zeilen und ihr ändert sie ;(



    oder Blackfox....
    Kann ich dir nicht die pwn schicken du änderst sie?
    Dann kannste vllt gleich mal versuchen warnings rauszubekommen und mir zurückschicken?


    Kennt sich nochjemand damit aus, den ich vertrauen kann und ers mir ändert?

    2 Mal editiert, zuletzt von Ill ()

  • habs jetzt hinbekommen, allerdings 1bug!


    Unszwar kommt immer das Register fenster


    Auch wenn es den namen schon gibt.
    Sobald man dann halt das PW Eingibt, kommt erst, das der name schon vergeben ist
    Nur wenn man neu registriert hat danach kommt das login fenster...


    Das register fenster soll aber einglich garnicht erst kommen
    wenn der name schon besetzt ist oder ihn selber der gehört
    sondern man soll sich gleich einloggen können,
    weil sonst wird man dauert gekickt, und einloggen ist nie möglich :huh:



    //EDIT:
    Habe noch nen fehler... bzw sollte das weg:
    Unszwar wenn man dann sich eingeloggt hat, nach dem register und login
    muss man unten einen pfeil oder spawn klicken, damit das erst startet und man spawnt
    Geht das nicht so, das man direkt spawnen kann sobald man pw eingegeben hat?

    Einmal editiert, zuletzt von Ill ()

  • du musst schecken ob der name schon existiert/die datei schon existiert.
    if(!fexist(string))
    {
    das was kommen soll wenn der typ net gereggt is
    }

    wie meinste?
    In sufu
    if(!fexist(string))
    {


    eingeben?


    Also habe dort
    if(!fexist(string)
    eingegeben, aber finde nix damit

  • Also ich finds schon bisschen dumm das du angst hast anderen Leuten dein Script zu schicken wenn du selbst allgemein die Basic nicht umschreiben kannst.
    Und was sollen die Leute denn dort aus deinem Script klauen :wacko: ...
    Jedenfalls hier Standart GF mit dem Gui Register & Login http://www.mediafire.com/download.php?mwtbjztndjy
    Wenn der Link nicht geht (Jedenfalls bei mir öffnet der nicht.) Dann im Englischen Forum http://forum.sa-mp.com/index.php?topic=122308.0
    da kannst ja die Seiten durch gucken ob jemand geuploaded hat und sonst, das was du GEMACHT hast in dem Script in das eine übernehmen.

  • Funktioniert ja schon alles...
    Allerdings kommt wenn der name schon vorhanden ist, nicht das login fenster, sondern trotzdem
    Register fenster



    //---------------------------<[ OnDialogResponse ]>--------------------------------------------------------


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    new sendername[MAX_PLAYER_NAME];
    new string[128];
    if(response)
    {
    if(dialogid == 12346 || dialogid == 12347)
    {
    if(strlen(inputtext))
    {
    new tmppass[64];
    strmid(tmppass, inputtext, 0, strlen(inputtext), 255);
    //Encrypt(tmppass);
    OnPlayerLogin(playerid,tmppass);
    }
    else
    {
    new loginstring[128];
    new loginname[64];
    GetPlayerName(playerid,loginname,sizeof(loginname));
    format(loginstring,sizeof(loginstring),"Falsches Passwort\nBitte gebe dein Richtiges ein:",loginname);
    ShowPlayerDialog(playerid,12347,DIALOG_STYLE_INPUT,"Login",loginstring,"Login","Exit");
    gPlayerLogTries[playerid] += 1;
    if(gPlayerLogTries[playerid] == 5) { Ban(playerid); }
    }
    }
    if(dialogid == 12345)
    {
    if(strlen(inputtext))
    {
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "/Users/%s.ini", sendername);
    new File: hFile = fopen(string, io_read);
    if (hFile)
    {
    SendClientMessage(playerid, COLOR_YELLOW, "Dieser Benutzername ist bereits vergeben bitte benutze ein anderen.");
    fclose(hFile);
    return 1;
    }
    new tmppass[64];
    strmid(tmppass, inputtext, 0, strlen(inputtext), 255);
    //Encrypt(tmppass);
    OnPlayerRegister(playerid,tmppass);
    }
    else
    {
    new regstring[128];
    new regname[64];
    GetPlayerName(playerid,regname,sizeof(regname));
    format(regstring,sizeof(regstring),"Willkommen, %s\nDu hast keinen Account.\nBitte registriere dich:",regname);
    ShowPlayerDialog(playerid,12345,DIALOG_STYLE_INPUT,"Register",regstring,"Register","Exit");
    }
    }
    }
    else
    {
    Kick(playerid);
    }
    return 1;
    }



    Was braucht ihr denn einglich alles?



    //EDIT:


    Soll ich irgendwo da das mit exist einfügen oder so?
    Und was ist mit dem spawn... das man nicht unten nen pfeil oder spawn klicken muss


    Wo muss ich das:
    SetPlayerSpawn(playerid);
    hinmachen??



    public OnPlayerRequestClass(playerid, classid)
    {
    PlayerPlaySound(playerid, 1068, 0.0, 0.0, 0.0);
    PlayerInfo[playerid][pModel] = Peds[classid][0];


    if (RegistrationStep[playerid] == 0 && gPlayerLogged[playerid] != 1)
    {
    SendClientMessage(playerid, COLOR_GREEN, "Bitte warten...Spiel wird geladen...");
    SendClientMessage(playerid, COLOR_YELLOW2, "Willkommen auf DEIN NAME!");
    SendClientMessage(playerid, COLOR_YELLOW2, "");
    if (gPlayerAccount[playerid] != 0)
    {
    new loginstring[128];
    new loginname[64];
    GetPlayerName(playerid,loginname,sizeof(loginname));
    format(loginstring,sizeof(loginstring),"Willkommen, %s\nDieser Name ist Registriert.\nDu kannst dich nun einloggen:",loginname);
    ShowPlayerDialog(playerid,12346,DIALOG_STYLE_INPUT,"Login",loginstring,"Login","Exit");
    }
    else
    {
    gPlayerAccount[playerid] = 0;
    new regstring[128];
    new regname[64];
    GetPlayerName(playerid,regname,sizeof(regname));
    format(regstring,sizeof(regstring),"Willkommen, %s\nDu hast keinen Account.\nBitte Registriere dich:",regname);
    ShowPlayerDialog(playerid,12345,DIALOG_STYLE_INPUT,"Register",regstring,"Register","Exit");
    }
    PlayerPlaySound(playerid, 1187, 0.0, 0.0, 0.0);
    PlayerInfo[playerid][pModel] = Peds[classid][0];
    SetPlayerTeamFromClass(playerid,classid);
    }
    else SpawnPlayer(playerid);
    return false;
    }


    Oder ist hier was falsch?




    //EDIT:


    Habe gerade bisschen getestet...
    Wenn ich die zahlen tausche... also


    ShowPlayerDialog(playerid,12346,DIALOG_STYLE_INPUT,"Login",loginstring,"Login","Exit");


    //IN


    ShowPlayerDialog(playerid,12345,DIALOG_STYLE_INPUT,"Register",regstring,"Register","Exit");


    dann steht da zwar register etc... aber trotzdem loggt der ein, ich versteh das net^^

    4 Mal editiert, zuletzt von Ill ()