[Ajuda] AntFlood bugado!!
#1

Problema e que quando eu tomo mute aparece que nгo posso falar no chat,mas mesmo assim aparece no chat oque escrevi,segue codigo do antiflood e print do erro.

pawn Код:
if(strlen(text) == strlen(nMsg[playerid]) && !strcmp(nMsg[playerid], text,  false)){SendClientMessage(playerid, -1, "( ANTI - FLOOD ) Nгo repita a mesma mensagem!");return 0;}
    if(Mute[playerid] == 1) return SendClientMessage(playerid, 0xFF0000AA, "(ANTI - FLOOD) Vocк nгo pode digitar no chat enquanto estiver mutado..");
    AFlood[playerid]++;
    if(AFlood[playerid] == 2) SetTimerEx("Flood", 2500, 0 , "i" , playerid);
    else if(AFlood[playerid] == 3) return SendClientMessage(playerid, 0xFF0000 , "( ANTI - FLOOD ) Nгo faзa flood ou vocк pode ser mutado.."), 0;
    else if(AFlood[playerid] == 4)
    {
        SendClientMessage(playerid, 0xFF0000AA, "(ANTI - FLOOD) Vocк foi mutado por 30 Segundos.");
        Mute[playerid] = 1;
        SetTimerEx("Flood2", 30000 , 0 , "i", playerid);
        return 0;
    }
    format(String, sizeof(String), "(id:%d): {FFFFFF}%s",playerid, text);
    SendPlayerMessageToAll(playerid, String);
    return 0;
    }
Reply
#2

@Edit
Achei um codigo que tinha aqui adaptei ele:

No topo:
pawn Код:
new IsFlooding[MAX_PLAYERS];
new Flooder[MAX_PLAYERS];
Em:
pawn Код:
public OnPlayerText(playerid, text[])
Adicione isso:
pawn Код:
{
if(Flooder[playerid] == 1)
{
SendClientMessage(playerid, -1, "(ANTI - FLOOD) Vocк nгo pode digitar no chat enquanto estiver mutado..");
return 0;
}
IsFlooding[playerid]++;
if(IsFlooding[playerid] >= 3)
{
IsFlooding[playerid] = 0;
Flooder[playerid] = 1;
SendClientMessage(playerid, -1, "(ANTI - FLOOD) Vocк foi mutado por 30 Segundos.");
SetTimerEx("LiberarChat", 30000, false, "i", playerid);
return 0;
}
else
{
SetTimerEx("SemFlood", 2000, false, "i", playerid);
}
return 1;
}


forward SemFlood(playerid);
public SemFlood(playerid)
{
IsFlooding[playerid] = 0;
return 1;
}


forward LiberarChat(playerid);
public LiberarChat(playerid)
{
Flooder[playerid] = 0;
IsFlooding[playerid] = 0;
SendClientMessage(playerid, -1, "( ANTI - FLOOD ) Nгo faзa flood ou vocк pode ser mutado..");
return 1;
}
Crйdito: Desconhecido

Espero que ajude!
Reply
#3

г? toda demora e o cara me bota isso que n entendi nada.fale certo amigo!!! ngm ajuda no forum.
Reply
#4

Jб Atualizei o ultimo comentбrio acima!
Reply
#5

deu esses erros!
E:\Jogos\desktop pc\new gm zp\gamemodes\GM.pwn(1323) : error 021: symbol already defined: "format"
E:\Jogos\desktop pc\new gm zp\gamemodes\GM.pwn(1325) : error 010: invalid function or declaration
E:\Jogos\desktop pc\new gm zp\gamemodes\GM.pwn(1327) : error 010: invalid function or declaration
onplayertext abaixo:

pawn Код:
{
    if(Flooder[playerid] == 1)
    {
    SendClientMessage(playerid, -1, "(ANTI - FLOOD) Vocк nгo pode digitar no chat enquanto estiver mutado..");
    return 0;
    }
    IsFlooding[playerid]++;
    if(IsFlooding[playerid] >= 3)
    {
    IsFlooding[playerid] = 0;
    Flooder[playerid] = 1;
    SendClientMessage(playerid, -1, "(ANTI - FLOOD) Vocк foi mutado por 30 Segundos.");
    SetTimerEx("LiberarChat", 30000, false, "i", playerid);
    return 0;
    }
    else
    {
    SetTimerEx("SemFlood", 2000, false, "i", playerid);
    }
    return 1;
    }
    forward SemFlood(playerid);
    public SemFlood(playerid)
    {
    IsFlooding[playerid] = 0;
    return 1;
    }
    forward LiberarChat(playerid);
    public LiberarChat(playerid)
    {
    Flooder[playerid] = 0;
    IsFlooding[playerid] = 0;
    SendClientMessage(playerid, -1, "( ANTI - FLOOD ) Nгo faзa flood ou vocк pode ser mutado..");
    return 1;
    }
    format(String, sizeof(String), "(id:%d): {FFFFFF}%s",playerid, text);
    SendPlayerMessageToAll(playerid, String);
    return 0;
    }
    return 1;
}
Reply
#6

Deixe somente assim:
pawn Код:
{
if(Flooder[playerid] == 1)
{
SendClientMessage(playerid, -1, "(ANTI - FLOOD) Vocк nгo pode digitar no chat enquanto estiver mutado..");
return 0;
}
IsFlooding[playerid]++;
if(IsFlooding[playerid] >= 3)
{
IsFlooding[playerid] = 0;
Flooder[playerid] = 1;
SendClientMessage(playerid, -1, "(ANTI - FLOOD) Vocк foi mutado por 30 Segundos.");
SetTimerEx("LiberarChat", 30000, false, "i", playerid);
return 0;
}
else
{
SetTimerEx("SemFlood", 2000, false, "i", playerid);
}
return 1;
}


forward SemFlood(playerid);
public SemFlood(playerid)
{
IsFlooding[playerid] = 0;
return 1;
}
Apague isso do final:
pawn Код:
format(String, sizeof(String), "(id:%d): {FFFFFF}%s",playerid, text);
    SendPlayerMessageToAll(playerid, String);
    return 0;
    }
    return 1;
}
E compile !
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)