Yaan.Mx
22/07/2012, 01:43 PM
Boas.
Estou codando um gamemode do 0 mas está com um bug..
Quando um jogador digita no chat, ele tá com o nick de outra pessoa, as vezes todos que estão no server ficam com o nick de uma pessoa, ai do nada muda pra outro nick.. Isso ocorre só no OnPlayerText, no TAB e em comandos o nick fica normal..
Callback:
public OnPlayerText(playerid, text[])
{
if(Flooder[playerid] == 1)
{
SendClientMessage(playerid, -1, "{FF4500}| ANTI-FLOOD | Você está calado.");
return 0;
}
IsFlooding[playerid]++;
if(!IsPlayerAdmin(playerid))
{
if(strlen(text) == strlen(szPlayerChatMsg[playerid]) && !strcmp(szPlayerChatMsg[playerid], text, false))
{
SendClientMessage(playerid, -1, "{FF4500}| ANTI-FLOOD | Não repita a mesma mensagem");
format(szPlayerChatMsg[playerid], 128, "%s", text);
return 0;
}
}
if(IsFlooding[playerid] >= 3)
{
IsFlooding[playerid] = 0;
Flooder[playerid] = 1;
format(String, sizeof(String), "{FF4500}| ANTI-FLOOD | O jogador %s foi calado por 45 segundos.", PlayerName(playerid));
SendClientMessageToAll(-1, String);
SetTimerEx("LiberarChat", 45000, false, "i", playerid);
return 0;
}
else
{
SetTimerEx("SemFlood", 2000, false, "i", playerid);
}
format(String, sizeof(String), "%s [%d]: {FFFFFF}%s", nome, playerid, text);
SendClientMessageToAll(GetPlayerColor(playerid), String);
return 0;
}
Estou codando um gamemode do 0 mas está com um bug..
Quando um jogador digita no chat, ele tá com o nick de outra pessoa, as vezes todos que estão no server ficam com o nick de uma pessoa, ai do nada muda pra outro nick.. Isso ocorre só no OnPlayerText, no TAB e em comandos o nick fica normal..
Callback:
public OnPlayerText(playerid, text[])
{
if(Flooder[playerid] == 1)
{
SendClientMessage(playerid, -1, "{FF4500}| ANTI-FLOOD | Você está calado.");
return 0;
}
IsFlooding[playerid]++;
if(!IsPlayerAdmin(playerid))
{
if(strlen(text) == strlen(szPlayerChatMsg[playerid]) && !strcmp(szPlayerChatMsg[playerid], text, false))
{
SendClientMessage(playerid, -1, "{FF4500}| ANTI-FLOOD | Não repita a mesma mensagem");
format(szPlayerChatMsg[playerid], 128, "%s", text);
return 0;
}
}
if(IsFlooding[playerid] >= 3)
{
IsFlooding[playerid] = 0;
Flooder[playerid] = 1;
format(String, sizeof(String), "{FF4500}| ANTI-FLOOD | O jogador %s foi calado por 45 segundos.", PlayerName(playerid));
SendClientMessageToAll(-1, String);
SetTimerEx("LiberarChat", 45000, false, "i", playerid);
return 0;
}
else
{
SetTimerEx("SemFlood", 2000, false, "i", playerid);
}
format(String, sizeof(String), "%s [%d]: {FFFFFF}%s", nome, playerid, text);
SendClientMessageToAll(GetPlayerColor(playerid), String);
return 0;
}