Stats aller Spieler in einem Dialog

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
  • Moin,


    bin schon seit Tagen am testen, googlen etc. Ich kommt aber einfach nicht weiter.


    Also ich scripte derzeit an nem Free4All DM Gamemode. 1 Runde = 8min | nach den 8 Minuten sollen die Stats der Spieler in einem Dialog gezeigt werden.



    new string[600];
    new fstring[128];
    foreach(Player, i)
    {
    format(fstring, sizeof(fstring),"{FFFFFF}%s - {FF0000}Kills: %i Deaths: %i Ratio: %0.02f Damage: %f\n",PlayerName(i), MKills[i],MDeaths[i],Float:MKills[i]/Float:MDeaths[i],MDamage[i]);
    strcat(string, fstring, sizeof(string));
    ShowPlayerDialog(i,mstats,DIALOG_STYLE_LIST,"Statistics",string,"Close",#);
    }


    Am Endeffekt sehe ich nur meine Stats im Dialog und der Gegner seine eigenen.


    Screen:


    Es sollten darunter aber noch die Stats der anderen Spieler zu sehen sein.


    Danke im Voraus
    - Alberi Carino

  • new string[256];


    for(new i=0;i<GetMaxPlayers();i++){
    if(IsPlayerConnected(playerid)){
    format(string, sizeof(string), "%s\n{FFFFFF}%s - {FF0000}Kills: %i Deaths: %i Ratio: %0.02f Damage: %f\n", string, PlayerName(i), MKills[i], MDeaths[i], MRatio[i], MDamage[i]);
    }
    }
    ShowPlayerDialog(i,mstats,DIALOG_STYLE_LIST,"Statistics",string,"Close",#);


    Ungetestet, müsste so passen.


    Der geht jeden Slot durch und fragt, ob auf dem Slot ein Spieler connected ist. Wenn ja, speichert er in einem String alle Daten, so wie du es mit strcat gemacht hast, inklusive Zeilenumbruch \n.
    Am Anfang dann immer der vorherige String, sodass am Ende nun alle Daten mit einem Backslash n getrennt sind um ihn in einem Dialog anzuzeigen.