[Ajuda] И Possivel [anti_Flood]
#1

iae Galera to com esse ANTI aki mais to com duvida ei vi ali q a cada 2 segundo q o Player escreve na terceira tentativa ele й calado por 1minuto й possivel colocar pra pegar tb com 3 segundo e 4segundo ai ia fica assim

a cada 2seg, 3seg e 4seg o ANTI_Flood pega tanto faz o PLAYER flodar com 2 , 3 e 4 segundo o anti flood ativa me ajuda..... ta aki isso й um [FS]

pawn Код:
#include <a_samp>

new IsFlooding[MAX_PLAYERS];
new Flooder[MAX_PLAYERS];
new szPlayerChatMsg[MAX_PLAYERS][128];

public OnGameModeInit()
{
    print("\n--------------------------------------");
    print(" FilterScript Ant-Flood BY: FreNeticO");
    print("--------------------------------------\n");
    return 1;
}


public OnPlayerText(playerid, text[])
{
    if(Flooder[playerid] == 1)
    {
        SendClientMessage(playerid, -1, "{FF0000}[ERRO]{FFFFFF} Vocк estб calado e nгo pode usar o chat !");
        return 0;
    }
    IsFlooding[playerid]++;
    if(!IsPlayerAdmin(playerid))
    {
        if(strlen(text) == strlen(szPlayerChatMsg[playerid]) && !strcmp(szPlayerChatMsg[playerid], text,  false))
        {
            SendClientMessage(playerid, -1, "{FF0000}[ERRO]{FFFFFF} Nгo repita a mesma mensagem!");
            format(szPlayerChatMsg[playerid], 128, "%s", text);
            return 0;
        }
    }
    if(IsFlooding[playerid] >= 3)
    {
        IsFlooding[playerid] = 0;
        Flooder[playerid] = 1;
        SendClientMessage(playerid, -1, "{FF0000}[INFO]{FFFFFF} Vocк foi calado por 1 minuto. Motivo: Flood !");
        SetTimerEx("LiberarChat", 60000, 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;
    SendClientMessage(playerid, -1, "Vocк foi descalado, nгo faзa mais flood !");
    return 1;
}

acho q o tempo de FLOOD fica nessa LINHA..

pawn Код:
SetTimerEx("SemFlood", 2000, false, "i", playerid);
Reply
#2

Nгo entendi. Explica claramente;
Reply
#3

esse ANTI_FLOOD й assim vo dar um EX de flod.

[1]text ssssssss
depois de 2 seg
[2]text ssssssss
depois de 2 seg
MSN: Vocк foi calado por 1 minuto. Motivo: Flood

so acontese isso se o cara flodar em 2 em 2 segundo..
queria q pegase tb com 3 e 4 segundo entendeu ......
Reply
#4

aqui esta o tempo do antiflood
pawn Код:
//o pwn trabalha com milesimos de segundos entao seria
SetTimerEx("LiberarChat", 60000, false, "i", playerid);
// 60000 = 60 segundos = 1 minuto
aqui и o tempo que ele tem entre as frases que ele pode falar no xat que seria de 2 em 2 segundos
pawn Код:
SetTimerEx("SemFlood", 2000, false, "i", playerid);
// 2000 = 2minutos
e explique melhor oque vc quer que eu tmb n entendi '-'

@edit

E INSTO NAO И UM FILTERSCRIPT

pawn Код:
public OnGameModeInit()
FS SERIA

pawn Код:
public OnFilterScriptInit()
Reply
#5

eu criei um FS do jeito q ta ali copilor normal e testei e pegor..
outro EX:
[1]text ssssssss
depois de 2 seg
[2]text ssssssss
depois de 2 seg
MSN: Vocк foi calado por 1 minuto. Motivo: Flood

>>>>>so acontese isso se o cara flodar em 2 em 2 segundo..<<<<<<
queria q pegase tb com 3 e 4 segundo entendeu ......

quando o cara escreve um EX:
[1]text ssssssss
depois de 3 seg
[2]text ssssssss
nao pega o FLOD й pq isso ta em 2segundo

pawn Код:
SetTimerEx("SemFlood", 2000, false, "i", playerid);
mais eu nao quero mudar isso quero q quando o Cara tenta flodar escrevendo em 3 ou 4 segundo como ta o 2 o Anti_Flood pega ATIVA .....entendeu.....
Reply
#6

Quote:
Originally Posted by lKoDlFuLLaNNo
Посмотреть сообщение
aqui и o tempo que ele tem entre as frases que ele pode falar no xat que seria de 2 em 2 segundos
pawn Код:
SetTimerEx("SemFlood", 2000, false, "i", playerid);
// 2000 = 2minutos
Nгo, 2000 = 2 segundos !

//-----
pawn Код:
SetTimerEx("SemFlood", 5000, false, "i", playerid);
Aqui ira ter flood ate 5 segundos de entre cada mensagem !
Reply
#7

cara isso eu seiiii eu queria q pegase o;

pawn Код:
SetTimerEx("SemFlood", 2000, false, "i", playerid); //o de 2seg ja tem
SetTimerEx("SemFlood", 3000, false, "i", playerid); //coloca esse sem tira o de 2seg
SetTimerEx("SemFlood", 4000, false, "i", playerid); //e esse sem tira o de 2, 3 segundo
pq o cara la no jogo testo esse de 2 segundo ai pego mais ai eu mandei ele colocar o de 3 em 3segundo nao pego... eu sei alterar mais queria coloca o de 3seg sem tirar o de 2segundo entendeu...
Reply
#8

Mas pouco importa, esse timer serve para resetar a variбvel que verifica se o player mandou X mensagens dentro de Y tempo, teste como eu meti e vai ver que darб certo !
Reply
#9

entao vc quer q eu coloque esse й.

pawn Код:
SetTimerEx("SemFlood", 5000, false, "i", playerid);
Reply
#10

Sim.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)