Dialog frage

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
  • #define SKIN_DIALOG 1 // anpassen!!

    if(strcmp(cmd,"/skin",true)==0)
    {
    ShowPlayerDialog(playerid,SKIN_DIALOG,DIALOG_STYLE_INPUT,"Skins","gebe deine gewünschte SkinID ein:","Weiter","abbrechen");
    return 1;
    }


    Das weißt du ja schon bestimmt. Danach aber unter das Callback OnPlayerDialogResponse:


    if(dialogid == SKIN_DIALOG)
    {
    if(response)
    {
    new string[128];
    format(string,sizeof(string)," Du hast dir SkinID %d gekauft. ",strval(inputtext)); // strval(inputtext) gibt halt den Wert des eingegebenen Textes ein
    SendClientMessage(playerid,FARBE,string);
    SetPlayerSkin(playerid,strval(inputtext));
    }
    else SendClientMessage(playerid,FARBE," Dann nicht...");
    }


    So sollte es klappen ;)


    Wenn du z.B ein Text eingibst, und du ihn wieder ausgeben möchtest, nicht strval(inputtext), sondern nur inputtext benutzen. :)


    edit: Hab jetzt vergessen, eine Abfrage einzufügen, ob strval(inputtext) auch wirklich eine Zahl ist. Kannst Du selber überprüfen mit:
    if(strval(inputtext) >= 0 && strval(inputtext) <= 299)
    {


    }


    <= 299, weil es nur maximal 299 Skins gibt und wenn der Spieler dort z.B 400 eingibt und du keine Abfrage gemacht hast, kann es zu Crashs führen.

    Let the party begin - turn all the lights on!