ShowPlayerDialog

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
  • Moinsen,
    ich brauche kurz Hilfe. Und zwar möchte ich das wenn der Spieler /stats eingibt, dass
    da dann ein Dialog kommt mit seinem Namen drinne so ungefähr:

    new name[MAX_PLAYER_NAME];
    ShowPlayerDialog(playerid, DIALOG_TESTER, DIALOG_STYLE_LIST, "{FAFAFA]Statistik", "* %d *", "Okey", "Abbruch",name);


    Ich weiß man kanne s nicht so Abfragen aber weiss einer wie :o

    :) SWAGETTI & YOLONAISE!

  • new name[MAX_PLAYER_NAME],string[32];
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    format(string,32,"* Name: %s * ", name);
    ShowPlayerDialog(playerid, DIALOG_TESTER, DIALOG_STYLE_LIST, "{FAFAFA]Statistik", string, "Okey", "Abbruch");


    1. Ein Name ist keine Zahl!
    2. Du musst den Namen des Spielers auch abfragen!

  • Erstmal ist der Name nicht vom Datentyp double, sondern String, weshalb du auch mit diesem arbeiten musst.
    Dann musst du dies wie folgt abändern:
    new name[MAX_PLAYER_NAME],string[26];
    GetPlayerName(playerid,name,sizeof(name));
    format(string,sizeof(string),"%s",name);
    ShowPlayerDialog(playerid,DIALOG_TESTER,DIALOG_STYLE_MSGBOX,"{FAFAFA}Statistik",string,"Okay","Abbruch");
    Was habe ich nun gemacht?
    Der String, von dem eben die Rede war, wurde formatiert, sodass mit diesem im ShowPlayerDialog gearbeitet werden kann.
    Außerdem habe ich den definieren Namen zurückgeben lassen, mit der Funktion GetPlayerName, welcher dann im formatieren String abgerufen wird.
    Nebenbei habe ich den DIALOG_STYLE geändert, da eine Messagebox das ganze besser aussehen lässt und zudem mehr Sinn macht, als eine Listenbox.

  • Bekomme das hier


    C:\Users\EGAL\Desktop\ÜBERRASCHUNG\gamemodes\xDDD.pwn(27069) : warning 219: local variable "string" shadows a variable at a preceding level
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Warning.

    :) SWAGETTI & YOLONAISE!

  • Erstmal ist der Name nicht vom Datentyp double, sondern String, weshalb du auch mit diesem arbeiten musst.


    %d steht nicht für double sondern für dezimal.


    und bei deinem Beispiel ist die Variable string überflüssig...da kann man direkt name verwenden ;)


    mfg. :thumbup:

    ast2ufdyxkb1.png


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

  • Tut mir leid, bin noch zu sehr an Java gewöhnt, aber im Prinzip gibt beides das selbe aus.


    Nein nicht direkt ^^


    double gibt z.B. in Java auch Kommazahlen aus, sprich 1.23 ;)


    Aber %d gibt eben nur ganze Integer aus ... und mit %f muss man Floats ausgeben ;)


    mfg. :thumbup:

    ast2ufdyxkb1.png


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