Limite no chat /a -
Cheleber_Pausini - 13.01.2017
Bem tenho esse comando /a que й um chat para admins, mas a mensagem estб muito limitada e jб tentei alterar tamanhos de strings e isso e nada...
Код:
CMD:a(playerid, params[])
{
new texto1[128];
new nome1[MAX_PLAYER_NAME];
new Str[128];
if(PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid, COLOR_GRAD2, NOTADMIN);
if(adminstatus[playerid] == 1) return SendClientMessage(playerid, COR_BORDO, "Vocк nгo estб em modo admin, use /trabalhar.");
if(sscanf(params, "s",texto1)) return SendClientMessage(playerid,-1,"Uso correto: /a [Texto]");
for(new i = 0; i < MAX_PLAYERS; i++)
{
new adm[64];
switch(PlayerInfo[i][pAdmin])
{
case 1: adm = "Nнvel 1";
case 2: adm = "Nнvel 2";
case 3: adm = "Nнvel 3";
case 4: adm = "Nнvel 4";
case 1337: adm = "Master";
case 99999: adm = "GOD";
}
if(PlayerInfo[i][pAdmin] > 0){
GetPlayerName(playerid,nome1,sizeof(nome1));
format(Str, sizeof(Str), "*[%s] %s: {FFFFFF}%s", adm, nome1, texto1);
SendClientMessage(i, 0x33AA33AA, Str);
}
}
return 1;
}
Agradeзo se me puderem ajudar (:
Programando e Gambiarrando! -
RazorGuigo - 13.01.2017
Limites:
Entrada de texto: 128 Chars
Saida de Texto: 144 Chars
Vocк pode aumentar o Str[128] para [144],
caso ainda nгo seja o suficiente, utilize o plugin
SendLongMessage
Re: Limite no chat /a -
Meck - 13.01.2017
Код:
CMD:a(playerid,params[])
{
new adminstring[128];
if(adminstatus[playerid] == 1) return SendClientMessage(playerid, COR_BORDO, "Vocк nгo estб em modo admin, use /trabalhar.");
if(pInfo[playerid][pAdmin] >= 1)
{
if(!strlen(params))
{
SendClientMessage(playerid, -1, ""chat" /a [message]");
return 1;
}
format(adminstring, sizeof(adminstring), ""COR_BORDO"[Admin Chat] %s[%d]: %s",PlayerName(playerid), playerid, params);
SendMessageToAllAdmins(adminstring, -1);
}
else {
SendClientMessage(playerid,-1,"*"COR_BORDO" You do not have the right admin permissions for this command!");
}
return 1;
}
final
Код:
stock SendMessageToAllAdmins(message[], color)
{
foreach(Player, i)
{
if(pInfo[i][pAdmin] >= 1 || IsPlayerAdmin(i))
{
SendClientMessage(i, color, message);
}
}
return 1;
}
Re: Limite no chat /a -
Cheleber_Pausini - 13.01.2017
Aumentei as strings para 144, fiz o que o meck falou mas nгo funcionou.
Mas vi esse erro no server.log
Код:
Strings without a length are deprecated, please add a destination size.
Pesquisei no ****** e achei
https://sampforum.blast.hk/showthread.php?tid=608813
Ai mudei if(sscanf(params, "s",texto1)) para if(sscanf(params, "s[144]",texto1))
E ta funcionando, obrigado (:
Re: Limite no chat /a -
BobbMarley - 13.01.2017
ja tive problema com isso. й que quando o sscanf verifica se tem algum texto, ele tem que saber se apуs o comando tem uma string, e para funcionar corretamente ele detecta qnts algarismos tem nessa string e manda para o resto do cуdigo: defina(s[144]<numero de algarismos)