[Pedido] Anti Palavхes.
#1

Olб, eu possuo um anti-palavхes, que por sua vez estб com pequeno problema. O player sу й punido se o palavreado estiver no primeiro local do texto...

Exemplo;

FdPoooxa vocк й chato. ( O player й punido, pois o FdPoooxa, estб no primeiro local do texto. )

Agora se for assim;

Vocк й muito chato seu FdPoooxa ( Nгo funciona, pois estб em outro local, fora da primeira palavra ).

Alguйm poderia me ajudar?

Cуdigo:

pawn Код:
public OnPlayerText(playerid, text[])
{
   
    for(new Z; Z < sizeof(Badwords); Z++)
    {
        if(strcmp(text, Badwords[Z], true) == 0)
        {
            new
                str[128],
                Nome[24]
            ;
            GetPlayerName(playerid, Nome, sizeof(Nome));

            Avisos[playerid] ++;
            if(Avisos[playerid] < 2)
            {
                format(str, sizeof(str), "( Palavreado ) o jogador %s foi avisado, Motivo: Palavrгo. Avisos: [%d/2]", Nome, Avisos[playerid]);
                SendClientMessageToAll(0x00CDD8AA, str);
                return 0;
            }
            else if(Avisos[playerid] >= 2)
            {
                format(str, sizeof(str), "( Palavreado ) O jogador %s foi kickado, Motivo: Palavrгo. Avisos: [%d/2]", Nome, Avisos[playerid]);
                SendClientMessageToAll(0x00CDD8AA, str);
                GameTextForPlayer(playerid, "~r~kickado", 3000, 1);
                Kick(playerid);
                Avisos[playerid] = 0;
                return 1;
            }
        }
    }
Sou grato desde jб!
Reply
#2

Quote:
Originally Posted by Mercurio
Посмотреть сообщение
Olб, eu possuo um anti-palavхes, que por sua vez estб com pequeno problema. O player sу й punido se o palavreado estiver no primeiro local do texto...

Exemplo;

FdPoooxa vocк й chato. ( O player й punido, pois o FdPoooxa, estб no primeiro local do texto. )

Agora se for assim;

Vocк й muito chato seu FdPoooxa ( Nгo funciona, pois estб em outro local, fora da primeira palavra ).

Alguйm poderia me ajudar?

Cуdigo:

pawn Код:
public OnPlayerText(playerid, text[])
{
   
    for(new Z; Z < sizeof(Badwords); Z++)
    {
        if(strcmp(text, Badwords[Z], true) == 0)
        {
            new
                str[128],
                Nome[24]
            ;
            GetPlayerName(playerid, Nome, sizeof(Nome));

            Avisos[playerid] ++;
            if(Avisos[playerid] < 2)
            {
                format(str, sizeof(str), "( Palavreado ) o jogador %s foi avisado, Motivo: Palavrгo. Avisos: [%d/2]", Nome, Avisos[playerid]);
                SendClientMessageToAll(0x00CDD8AA, str);
                return 0;
            }
            else if(Avisos[playerid] >= 2)
            {
                format(str, sizeof(str), "( Palavreado ) O jogador %s foi kickado, Motivo: Palavrгo. Avisos: [%d/2]", Nome, Avisos[playerid]);
                SendClientMessageToAll(0x00CDD8AA, str);
                GameTextForPlayer(playerid, "~r~kickado", 3000, 1);
                Kick(playerid);
                Avisos[playerid] = 0;
                return 1;
            }
        }
    }
Sou grato desde jб!
Mercъrio, tente usar strfind no OnPlayerText, Acho que darб certo.

Eu mesmo estou tentando montar um para meu servidor.
Reply
#3

Quote:
Originally Posted by .FuneraL.
Посмотреть сообщение
Mercъrio, tente usar strfind no OnPlayerText, Acho que darб certo.

Eu mesmo estou tentando montar um para meu servidor.
>__<
Reply
#4

tente isto amigo

pawn Код:
public OnPlayerText(playerid, text[])
{

    static
        Nome[24],
        str[128]
    ;
   
    Nome[0] = EOS;
    str[0]  = EOS;
   
    for(new Z; Z < sizeof(Badwords); Z++)
    {
        if(strfind(text, Badwords[Z], true) != -1)
        {
            GetPlayerName(playerid, Nome, sizeof(Nome));

            Avisos[playerid] ++;
            if(Avisos[playerid] < 2)
            {
                format(str, sizeof(str), "( Palavreado ) o jogador %s foi avisado, Motivo: Palavrгo. Avisos: [%d/2]", Nome, Avisos[playerid]);
                SendClientMessageToAll(0x00CDD8AA, str);
                return 0;
            }
            else if(Avisos[playerid] >= 2)
            {
                format(str, sizeof(str), "( Palavreado ) O jogador %s foi kickado, Motivo: Palavrгo. Avisos: [%d/2]", Nome, Avisos[playerid]);
                SendClientMessageToAll(0x00CDD8AA, str);
                GameTextForPlayer(playerid, "~r~kickado", 3000, 1);
                Kick(playerid);
                Avisos[playerid] = 0;
                return 1;
            }
        }
    }
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)