Frage zu Dialog Alter

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
  • Abend



    Ich habe eine Frage, und zwar,
    hab ich ein "Dialog Alter" Gemacht wo man sein alter zwischen 16 - 90 angeben muss, funktioniert auch.
    nun ist meine frage, er muss ein "Alter" zwischen 16 - 90 auswählen, nur das Problem ist.
    So bald er unter 16 oder über 90 geht, kommt wie gewollt die Fehler Meldung, aber der Dialog schließt sich dann einfach,
    Ich will das jetzt so machen das wenn er eine Zahl unter 16 oder über 90 eingibt das die Nachricht kommt Und der Dialog wieder erscheinen tut.


    Mein Code:


    if(dialogid==DIALOG_ALTER)
    {
    if(response == 1)
    {
    new string[100];
    format(string, sizeof(string), "{DCDCDC}Okay, du bist also {23DD00}%i {DCDCDC}Jahre alt", strval(inputtext));
    SendClientMessage(playerid, GELB, string);
    if(strval(inputtext)<16||strval(inputtext)>90)return SendClientMessage(playerid,ROT,"Du musst ein Alter zwischen 16 - 90 Jahren wählen");
    SetPVarInt(playerid,"Alter",strval(inputtext));
    ShowPlayerDialog(playerid,DIALOG_REGISTERDONE,DIALOG_STYLE_MSGBOX,"Mameladen of Reallife","{E2C500}Register Schritt 4/4:\n{DCDCDC}Die Regestrierung ist hiermit nun abgeschlossen.\nDu kannst dir im folgenden noch das Tutorial ansehen.\n\n{23DD00}Forumaccount:\n{DCDCDC}Folgt.","Weiter","");
    }
    if(response == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"Mameladen of Reallife","{E2C500}Registrierung Schritt 3 / 4:\n\n{DCDCDC}Jetzt benötigen wir noch dein Alter\n{23DD00}16 - 90","Weiter","Abbrechen");
    }
    }


    Grüße

  • Und was bringt das ganze?
    Dann gibt der User ein falsches Alter an und das alles war umsonst ( >.<) Das mit 16 ist sowieso Übertrieben finde ich, mach lieber 14... die meisten User sind zwischen 13 - (schätzungsweise) 27 Jahre alt. Das höchste was ich kenne vom Alter eines Users war 24 Jahre.

  • Und was bringt das ganze?
    Dann gibt der User ein falsches Alter an und das alles war umsonst ( >.<) Das mit 16 ist sowieso Übertrieben finde ich, mach lieber 14... die meisten User sind zwischen 13 - (schätzungsweise) 27 Jahre alt. Das höchste was ich kenne vom Alter eines Users war 24 Jahre.

    Mein guter, das ist doch hierbei irrelevant denn meine Frage lautete,
    wie stelle ich es an den Dialog erneut anzuzeigen wenn er unter 16 oder über 90 geht,
    und auserdem ist das doch meine Sache ob ich dies über 16 mache oder nicht .. :pinch:

  • Zitat

    Mein guter, das ist doch hierbei irrelevant denn meine Frage lautete,


    wie stelle ich es an den Dialog erneut anzuzeigen wenn er unter 16 oder über 90 geht,


    und auserdem ist das doch meine Sache ob ich dies unter 16 oder über 90 mache.. :pinch:

    Ich wollte dich nur darauf Hinweisen das es Sinnlos ist... die Lösung wurde bereits erwähnt. Du machst einfach die Nachricht und den Dialog rein.


    PS: Der Code muss nicht perfekt sein, ich weiss nicht ob man mehrere Dinge in eine Zeile schreiben kann weil ich auch noch neu im Skripten bin. Ich würde es deshalb so machen:

    if(strval(inputtext)<16||strval(inputtext)>90)
    {
    SendClientMessage(playerid,ROT,"Du musst ein Alter zwischen 16 - 90 Jahren wählen");
    ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"Mameladen of Reallife","{E2C500}Registrierung Schritt 3 / 4:\n\n{DCDCDC}Jetzt benötigen wir noch dein Alter\n{23DD00}16 - 90","Weiter","Abbrechen");
    }


    PS: Das mit 16 war nur ein Tipp, viele User werden unter 16 Jahre alt sein. Das mit den 90 ist mir egal aber ach egal ich lass es einfach!