Registration/ Login funktioniert nichtmehr

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
  • Hey.


    Ich habe gerade eine Roleplay Namensabfrage geschrieben. Diese Überprüft ganz normal, ob man ein "_" im Namen hat, wenn nicht, dann wird man Gekickt. Dies klappt auch, aber nun funktioniert das Registrieren und Anmelden nichtmehr - man Connectet und kommt direkt zur Skinauswahl, vorher soll jedoch die Registration/ der Login kommen (Als würde man als Gast spielen).


    Code
    public OnPlayerConnect(playerid)
    {
    new Playerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.ini",name);
    if ( strfind ( name, "_", false, false) == -1 && !IsPlayerNPC (playerid) )
    {
    if(dini_Exists(Playerdatei))
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Anmelden...","Ihr Account wurde in unserer Datenbank gefunden!\nBitte geben sie nun ihr Passwort ein:","Anmelden", "Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registration...","Ihr Account wurde nicht in unserer Datenbank gefunden!\nBitte geben sie nun ihr Passwort ein:","Registrieren","Abbrechen");
    }
    SendClientMessage(playerid,Rot,"Sie haben keinen Roleplay Namen. (Zum_Beispiel)");
    Kick(playerid);
    return 1;
    }
    return 1;
    }

    Was habe ich Falsch gemacht?


    MfG

  • Schreibe das alles mal so:


    public OnPlayerConnect(playerid)
    {
    new Playerdatei[128],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.ini",name);
    if (strfind ( name, "_", false, false) == -1 && !IsPlayerNPC(playerid)) return SendClientMessage(playerid,Rot,"Sie haben keinen Roleplay Namen. (Zum_Beispiel)"),Kick(playerid);
    if(dini_Exists(Playerdatei)) return ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Anmelden...","Ihr Account wurde in unserer Datenbank gefunden!\nBitte geben sie nun ihr Passwort ein:","Anmelden", "Abbrechen");
    return ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registration...","Ihr Account wurde nicht in unserer Datenbank gefunden!\nBitte geben sie nun ihr Passwort ein:","Registrieren","Abbrechen");
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S


  • Und woran lag nun der Fehler? - an den "{ }"? Nun klappt es aufjedenfall, danke.


    MfG

  • Und woran lag nun der Fehler? - an den "{ }"? Nun klappt es aufjedenfall, danke.


    Nun, wenn im string (also in dem Namen) kein _ gefunden wird, returnt die Funktion -1. Du hast allerdings ein else genutzt, da war der Fehler :D

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S