Pages

Ads 468x60px


[FilterScript] Anti Flood Basico para o Chat

Bem , como tou muito tempo sem fazer scripts, resolvi voltar a ativa esse ano (2012)

Então venho aqui trazer um basico anti flood para vocês, mais bem simples mesmo então se tiver algo de errado me corrija, aguardem novos projetos !

Postei 2 Códigos o primeiro : Muta o Jogador.
o Segundo : Kicka o Jogador.

Então fica de preferencia.

Como funciona o que muta o jogador?

Joao fala uma frase .
Joao repete a frase apos 1 segundo.
Joao repete a frase mais uma vez em um segundo ( A Hora que ele vai receber o aviso . )
Joao repete a frase novamente e ele é mutado.

Como funciona o que kicka o jogador?

Joao fala uma frase .
Joao repete a frase apos 1 segundo.
Joao repete a frase mais uma vez em um segundo ( A Hora que ele vai receber o aviso . )
Joao repete a frase novamente e ele é kickado.


Código 1 - Mutando o Jogador
pawn Code:
#include <a_samp> forward Flood(playerid); forward Flood2(playerid); new AFlood[MAX_PLAYERS],nMsg[MAX_PLAYERS][128],Mute[MAX_PLAYERS]; public Flood(playerid) AFlood[playerid] = 0; public Flood2(playerid){Mute[playerid] = 0, AFlood[playerid] = 0;SendClientMessage(playerid, 0xFF0000, "( ANTI - FLOOD ) Você já pode usar o chat novamente..");} public OnFilterScriptInit(){print("Anti - Flood Carregado");return 1;} public OnFilterScriptExit(){print("Anti - Flood Descarregado");return 1;} public OnPlayerConnect(playerid){Mute[playerid] = 0,AFlood[playerid] = 0;return 1;} public OnPlayerText(playerid, text[]) {     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;     }     return 0; }

Código 2 - Kickando o Jogador
pawn Code:
#include <a_samp> forward Flood(playerid); new AFlood[MAX_PLAYERS],nMsg[MAX_PLAYERS][128]; public Flood(playerid) AFlood[playerid] = 0; public OnFilterScriptInit(){print("Anti - Flood Carregado");return 1;} public OnFilterScriptExit(){print("Anti - Flood Descarregado");return 1;} public OnPlayerConnect(playerid){AFlood[playerid] = 0;return 1;} public OnPlayerText(playerid, text[]) {     if(strlen(text) == strlen(nMsg[playerid]) && !strcmp(nMsg[playerid], text,  false)){SendClientMessage(playerid, -1, "( ANTI - FLOOD ) Não repita a mesma mensagem!");return 0;}     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 kickado..");     else if(AFlood[playerid] == 4)     {         SendClientMessage(playerid, 0xFF0000AA, "( ANTI - FLOOD ) Você foi kickado por fazer flood..");         Kick(playerid);         return 0;     }     return 0; }