PVarInt("LogIn")

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 Frage zu PVarInt.
    Also ich habe hier bei DIALOG_LOGIN
    bzw bei DIALOG_REGISTER.

    if(dialogid==DIALOG_LOGIN)
    {
    if(response==0)
    {
    SendClientMessage(playerid,ROT,"Du hast den LogIn vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login"," Willkommen auf Nevus-Life\n Dein Account wurde in unsere Datenbank Gefunden.\n Bitte Logge dich ein","Login","Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,inputtext);
    SpawnPlayer(playerid);
    SetPVarInt(playerid,"LogIn",1);
    return 1;
    }
    }
    }
    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,ROT,"Du hast den Register vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    SpawnPlayer(playerid);
    SetPVarInt(playerid,"LogIn",1);
    return 1;
    }
    }
    }





    Dort Setze ich PVarInt LogIn auf 1.
    So nun habe ich aber das Problem das wenn ich ein Befehl mache z.B Kick.

    ocmd:kick(playerid,params[])
    {
    new pID,string,grund[128];
    if(GetPVarInt(playerid,"LogIn") == 1)return SendClientMessage(playerid,ROT,"Logge dich bitte vorher ein.");
    {
    SendClientMessage(playerid,ROT,"1");
    }
    return 1;
    }

    (( ISt nur ein Beispiel um das zu testen . ))
    So aber es geht nicht es komtm immer die Meldung Logge dich bitte vorher ein obwohl das ja schon passiert.

  • So ein quatsch, mach einfach getpvar == 0.
    Sonst returnt er bei 1 und das möchtest du nicht.


    ocmd:kick(playerid,params[])
    {
    new pID,string,grund[128];
    if(GetPVarInt(playerid,"LogIn") == 0)return SendClientMessage(playerid,ROT,"Logge dich bitte vorher ein.");
    SendClientMessage(playerid,ROT,"1");
    return 1;
    }

    KleineHilfe 2.0


  • Siehe mein Edit, das ist falsch so wird returnt wenn er eingeloggt ist und die Nachricht wird niemals kommen.
    Fehler bleibt Fehler, dein Lösungsweg und Fehlererkennung bleibt mir ein Rätsel gerade.

    KleineHilfe 2.0