/buyweed Befehl [Komme nicht weiter]

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 Community!


    Sitze gerade an nem Befehl und komme nicht weiter.
    Der Befehl soll so sein, das wenn ich bei einem Dialog etwas eingebe (in diesem Fall 'Gramm'), dass der pro 1 Gramm - 15 $ abziehen soll.
    Bisheriger Code:



    if(dialogid==dialog_buydrugs)
    {
    if(response==0)
    {
    return 1;
    }
    if(response==1)
    {
    if(listitem==0)
    {
    ShowPlayerDialog(playerid,dialog_buyweed,DIALOG_STYLE_INPUT,"Weed","Ray: Wieviel Gramm darf's denn sein, mein Lieber?","Kaufen","Abbrechen");
    return 1;
    }


    Wie mach ich das nun?
    1 Gramm soll 15 $ Kosten.


    MfG


    //edit: Ich kenne mich mit DIALOG_STYLE_INPUT noch garnicht wirklich aus.

  • public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])


    mit inputtext wird ausgelesen was der spieler in den input dialog eingegen hat



    if(dialogid==dialog_buydrugs)
    {
    if(response==1)
    {
    if(listitem==0)return ShowPlayerDialog(playerid,dialog_buyweed,DIALOG_STYLE_INPUT,"Weed","Ray: Wieviel Gramm darf's denn sein, mein Lieber?","Kaufen","Abbrechen");
    }
    }
    if(dialogid==dialog_buyweed)
    {
    if(response==1)
    {
    GivePlayerMoney(playerid,-strval(inputtext)*15);//mit strval den inputtext string in ein integer umwandeln und mit dem weed preis multiplizieren
    return 1;
    }
    }


    man sollte dann natürlich auch noch so abfragen machen wie:


    hat der spieler genug geld
    if(GetPlayerMoney(playerid)<strval(inputtext))return bla


    is das eingegebene eine zahl (den stock gibts überall im inet)
    if(!IsNumeric(inputtext))return bla


    die eingabe begrenzen damit man nicht ins minus kann
    if(strval(inputtext)<1||strval(inputtext)>100)return bla