SA-MP Forums Archive
[Ajuda] Nicks sendo trocados no OnPlayerText - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Nicks sendo trocados no OnPlayerText (/showthread.php?tid=361834)



Nicks sendo trocados no OnPlayerText - Yaan.Mx - 22.07.2012

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:

pawn Код:
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;
}



Re: Nicks sendo trocados no OnPlayerText - Dolby - 22.07.2012

pawn Код:
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);
    }

   
    GetPlayerName(playerid,nome,24);
    format(String, sizeof(String), "%s [%d]: {FFFFFF}%s", nome, playerid, text);
    SendClientMessageToAll(GetPlayerColor(playerid), String);
    return 0;
}



Re: Nicks sendo trocados no OnPlayerText - Yaan.Mx - 22.07.2012

Obrigado Gustavo, nгo tenho com quem testar, mas acho que vai dar certo. Esqueci o GetPlayerName, й isso? hehe