Dialog Inputtext abfragen/auslesen

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
  • Für mein Skillsystem will ich per Dialog(Inputtext) Zahlen abfragen und falls keine Zahl angegeben den Dialog erneut aufrufen. Dafür müsste ich einmal wissen wie man den Inputtext abfragt und ausliest. In der SuFu habe ich leider nichts gefunden und ein Tutorial zu Dialogen habe ich beim Überfliegen auch nicht gefunden. Falls jemand ein solches Tutorial findet kann er dies auch einfach gerne posten. Ich danke!

  • Um Abzufragen ob ein String nur zahlen erhält kannst du diese Funktion verwenden (IsNumeric)


    IsNumeric(value[]){
    new cpoint;
    while((value[cpoint] >= '0' && value[cpoint] <= '9') || (cpoint == 0 && value[cpoint] == '-'))
    cpoint++;
    return (value[0] && strlen(value) == cpoint);}


    dann fragst du einfach folgendes ab:
    if(IsNumeric(inputtext)) {
    // Inputtext ist eine Nummer
    } else {
    // Inputtext ist keine Nummer
    }


    Ließ dir einfach die Wiki Einträge durch, die sind selbsterklärend:
    http://wiki.sa-mp.com/wiki/ShowPlayerDialog
    http://wiki.sa-mp.com/wiki/Dialog_Styles
    http://wiki.sa-mp.com/wiki/OnDialogResponse

  • Ganz kurz, dass ist eine ziemlich schlechte Funktion ^^


    Angenommen wir geben 128 Zeichen ein..wobei nur die erste Ziffer eine Zahl ist...überprüft diese Funktion trotzdem alle Zeichen...und fragt dann nochmal die Länge des Strings ab.


    Besser wäre sowas:

    //Edit:


    Beim Dialog Style Inputtext fehlt leider eine Erklärung. Da wird nur der Dialog Style Passwort erklärt.

    Egal ob Input oder Password, das was eingegeben wurde, befindet sich immer in der Variable inputtext.
    Bei DIALOG_STYLE_LIST, befindet sich der String von dem angeklickten Item in dieser Variable.

    ast2ufdyxkb1.png


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

  • Brauche dann nur noch die Erklärung dafür wie man den Text ausliest und als Zahl für einen Skill setzt.

    Das macht man z.B. so:


    C
    if(isNumeric(inputtext))
    {
        SpielerInfo[playerid][Skill] = strval(inputtext);
    }

    ast2ufdyxkb1.png


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