Chat postet nur die Hälfte als wie geschrieben wird

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 undzwar wenn ich /n benutze und was schreibe postet er aber nur die ersten paar Buchstaben aber nicht alles?
    obwohl ich jetzt den string usw schon hör gemacht habe trotzdem bleibt der fehler?



    ocmd:n(playerid,params[])
    {
    new message[800];
    if(sscanf(params,"s",message)) return SendClientMessage(playerid,WEIß,"{FFD200}Benutzung:{FEFEFE}/n [Text]");
    else
    {
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    new str[800], name[800];
    GetPlayerName(playerid,name,24);

    new NeulingChat[800];
    if(pInfo[playerid][pAdmin] == 0) { NeulingChat= "Neuling"; }
    else if(pInfo[playerid][pAdmin] == 1) { NeulingChat = "Admin"; }
    else if(pInfo[playerid][pAdmin] == 2) { NeulingChat = "Admin"; }
    else if(pInfo[playerid][pAdmin] == 3) { NeulingChat = "Admin"; }
    else if(pInfo[playerid][pAdmin] == 4) { NeulingChat = "Admin"; }
    else if(pInfo[playerid][pAdmin] == 5) { NeulingChat = "Admin"; }
    else if(pInfo[playerid][pAdmin] == 6) { NeulingChat = "Admin"; }
    else if(pInfo[playerid][pAdmin] == 7) { NeulingChat = "Admin"; }

    format(str,500,"[%s] %s: %s",NeulingChat,name,message);

    if(GetPlayerScore(i)<=3 || isPlayerAnAdmin(i,1) || isPlayerAnAdmin(i,2) || isPlayerAnAdmin(i,3) || isPlayerAnAdmin(i,4) || isPlayerAnAdmin(i,5) || isPlayerAnAdmin(i,6) || isPlayerAnAdmin(i,7))
    {
    SendClientMessage(i,HELLBLAU,str);
    }
    }
    }
    return 1;
    }

  • Sorry mal nebenbei 3 strings zu je 800?
    Findest du das nicht bisschen fressend?

  • format(str,500,"[%s] %s: %s",NeulingChat,name,message);


    zu


    format(str,sizeof str,"[%s] %s: %s",NeulingChat,name,message);


    Ich würde dir nebenbei auch abraten die strings in der Schleife immer und immer neu erstellen..


    Machs dann lieber so:
    for(new i=0,str[800],name[800]; i<MAX_PLAYERS; i++)


    mfg :thumbup: