Admins in Textdraw Wiedergeben, aber in einer Zeile`?

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 communit, ich habe ein kleines probem:




    ich wollte mir ein textdraw machen, mitdem ich alle verfügbaren onlinearen serveradmins auflisten kann, aber in einem Textdraw.
    nun hab ich das problem, dass immer nur 1x aufgelistet werden kann,


    so sieht mein OnAdminUpdate() aus:



    public OnAdminUpdate()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][Admin] >= 1 && PlayerInfo[i][Admin] < 6)
    {
    new sendername[MAX_PLAYERS];
    new string[64];
    GetPlayerName(i, sendername, sizeof(sendername));
    format(string,64, "Admins Online: %s", sendername);
    TextDrawSetString(Adminsonline,string);
    TextDrawShowForAll(Adminsonline);
    }
    }
    }


    }


    wie kann ich das machen, dass alle admins in einer Reihe sind? ps: benutze eine Box.



    mfg Multivan


    edit: mal wieder tolle logik, nen string in 256 fassen, obwohl nur 64 vorhanden sind X( //ausgebesssert.

    526C4Hj.png Mit freundlichen Grüßen,
    Noneatme

  • public OnAdminUpdate()
    {
    new ausgabe[128]; //Je nach Anzahl der Admins erhöhen
    format(ausgabe, sizeof(ausgabe),"Admins online:");
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][Admin] >= 1 && PlayerInfo[i][Admin] < 6)
    {
    new sendername[MAX_PLAYERS];
    GetPlayerName(i, sendername, sizeof(sendername));
    format(ausgabe, sizeof(ausgabe), "%s %s", ausgabe,sendername);
    TextDrawSetString(Adminsonline,ausgabe);
    TextDrawShowForAll(Adminsonline);
    }
    }
    }


    }


    Habs jetzt nicht getestet, aber es sollte funktionieren. Grundidee ist, den String einmalig zu erstellen und wenn Admins online sind, deren Namen einfach noch hinten ranzuhängen.

  • Wenn du sie in einer Reihe haben willst dann einfach in der Schleife ein format verwenden
    format(string, sizeof(string), "%s, %s", string, sendername);


    // bloody war schneller


    Nicht jeder, der sich für super hält, ist ein Superheld. :love:
    ------------------------------------------------------------------------------------------------