/news Fehler

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!
    Ich habe ein Problem mit meinem /news Befehl und zwar wird der String nie komplett angezeigt.
    Ich habe die Stringlänge schon mehrmals variiert, allerdings hat es nie etwas geholfen.
    Hier der Code:



    CMD:news(playerid, params[])
    {
    if(sInfo[playerid][frak] == 4)
    {
    if(sInfo[playerid][fduty] == 0) return SendClientMessage(playerid, COLOR_RED, "[Info] Du musst im Dienst sein um diesen Befehl zu nutzen.");
    new param[256];
    if(sscanf(params, "s", param)) return SendClientMessage(playerid, COLOR_BLUE, "[Info]"cWhite" Verwende:"cBlue" /news [Text]");
    SendNewsMessage(playerid, param);
    return 1;
    }
    else
    {
    return SendClientMessage(playerid, COLOR_RED, "[Info] Du darfst diesen Befehl nicht nutzen!");
    }
    }


    stock SendNewsMessage(playerid, text[])
    {
    new string[256];
    format(string, sizeof(string), "[%s] %s: %s", fInfo[sInfo[playerid][frak]][fshort], GetName(playerid), text);
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(!IsPlayerConnected(i)) continue;
    if(sInfo[i][eingeloggt]==0) continue;
    SendClientMessage(i,fInfo[sInfo[playerid][frak]][fcolor], string);
    }
    return 1;
    }


    MfG!

  • Mit SendClientMessage kannst du maximal 144 sichtbare Zeichen (plus EOS) anzeigen. Daher reicht es, wenn string 145 groß ist, mehr geht nicht, dann zeigt es dir gar nichts mehr an.


    Falls du das sscanf Plugin verwendest, musst du in sscanf nach dem s die Größe des Strings in eckigen Klammern angeben.




    EDIT: (Post unten)
    ZeroTheHero: Gerne! Da dein Problem behoben ist, wäre es super, wenn du den Thread als erledigt markierst. Danke!

    3HZXdYd.png

    Einmal editiert, zuletzt von Jeffry ()

  • Mit SendClientMessage kannst du maximal 144 sichtbare Zeichen (plus EOS) anzeigen. Daher reicht es, wenn string 145 groß ist, mehr geht nicht, dann zeigt es dir gar nichts mehr an.


    Falls du das sscanf Plugin verwendest, musst du in sscanf nach dem s die Größe des Strings in eckigen Klammern angeben.


    Vielen dank!
    Lag an der Sache mit sscanf!