[Ajuda] Gente Alguem me Ajuda com esse Fs?
#1

Galera To com esse FS de Anti-IP Anti-Nick e Anti-Flood

Erro:
pawn Код:
C:\Documents and Settings\Fernando\Desktop\protect.pwn(75) : error 010: invalid function or declaration
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


1 Error.
Linha do Erro 75:
pawn Код:
if(strfind(Nome, "[", true) == -1 || strfind(Nome, "]", true) == -1))
Reply
#2

Poste o code completo.. ou a metade..
Reply
#3

Estб й a public OnPlayerConnect

pawn Код:
public OnPlayerConnect(playerid)
{
    new ip[16];
    GetPlayerIp(playerid, ip, 16);
    for(new i = 0; i < sizeof PlayerIP; i++)
    {
        if(strfind(ip, PlayerIP[i][IP], true) != -1)
        {
            if(strlen(ip) == strlen(PlayerIP[i][IP]))
            {
                if(PlayerIP[i][Option] == Banir)
                {
                    SendClientMessage(playerid, 0xFFFFFFFF, "** Vocк foi Banido(a) Pelo Sistema Anti-Hacker By: Caio_Freeze.");
                    Ban(playerid);
                }
                else if(PlayerIP[i][Option] == Kickar)
                {
                    SendClientMessage(playerid, 0xFFFFFFFF, "** Vocк foi Kickado(a) Pelo Sistema Anti-Hacker By: Caio_Freeze.");
                    Kick(playerid);
                }
                break;
            }
        }
    }
    FloodAlert[playerid] = 0; FloodTimer[playerid] = 0;
    SendClientMessage(playerid, ColorFlood, "[Anti-Flood] Este server Possui Anti-Flood!!");
    return 1;
}
if(strfind(Nome, "[", true) == -1 || strfind(Nome, "]", true) == -1))
    {
        SendClientMessage(playerid, -1, "Seu nick nгo pode contar colchetes ( [ ] ) ou underline ( _ )");
        Kick(playerid);
    }
stock Nome(playerid)
{
    new Nome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Nome, sizeof(Nome));
    return Nome;
}
Reply
#4

Tentar usar assim:
pawn Код:
if(strfind(Nome(playerid), "[", true) == -1 || strfind(Nome(playerid), "]", true) == -1)
Reply
#5

Substitua isso:

pawn Код:
if(strfind(Nome, "[", true) == -1 || strfind(Nome, "]", true) == -1))
    {
        SendClientMessage(playerid, -1, "Seu nick nгo pode contar colchetes ( [ ] ) ou underline ( _ )");
        Kick(playerid);
    }
por isso:

pawn Код:
new Nickname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Nickname[playerid], MAX_PLAYER_NAME);
if(strfind(Nickname[playerid], "[", true) != -1 || strfind(Nickname[playerid], "]", true) != -1)
{
    SendClientMessage(playerid, -1, "Seu Nick nгo deve conter Conchetes");
    Kick(playerid);
}
Editei ali encima;...
Reply
#6

Quote:
Originally Posted by |_MeGaTroN_|
Посмотреть сообщение
Substitua isso:

pawn Код:
if(strfind(Nome, "[", true) == -1 || strfind(Nome, "]", true) == -1))
    {
        SendClientMessage(playerid, -1, "Seu nick nгo pode contar colchetes ( [ ] ) ou underline ( _ )");
        Kick(playerid);
    }
por isso:

pawn Код:
new Nickname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Nickname[playerid], MAX_PLAYER_NAME);
if(strfind(Nickname[playerid], "[", true) != -1 || strfind(Nickname[playerid], "]", true) != -1)
{
    SendClientMessage(playerid, -1, "Seu Nick nгo deve conter Conchetes");
    Kick(playerid);
}
Agora apareceu esses 2 erros

pawn Код:
C:\Documents and Settings\Fernando\Desktop\protect.pwn(75) : error 021: symbol already defined: "GetPlayerName"
C:\Documents and Settings\Fernando\Desktop\protect.pwn(76) : error 010: invalid function or declaration
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


2 Errors.
Reply
#7

isso:
pawn Код:
if(strfind(Nome, "[", true) == -1 || strfind(Nome, "]", true) == -1))
Por isso:

pawn Код:
if(strfind(Nome[playerid], "[", true) != -1 || strfind(Nome[playerid], "]", true) != -1)
Reply
#8

usa assim
pawn Код:
if(strfind(Nome(playerid), "[", true) != -1 || strfind(Nome(playerid), "]", true) != -1)
Reply
#9

Quote:
Originally Posted by |_MeGaTroN_|
Посмотреть сообщение
isso:
pawn Код:
if(strfind(Nome, "[", true) == -1 || strfind(Nome, "]", true) == -1))
Por isso:

pawn Код:
if(strfind(Nome[playerid], "[", true) != -1 || strfind(Nome[playerid], "]", true) != -1)
Tentei mai s apareceu isso:
pawn Код:
C:\Documents and Settings\Fernando\Desktop\protect.pwn(76) : error 021: symbol already defined: "GetPlayerName"
C:\Documents and Settings\Fernando\Desktop\protect.pwn(77) : error 010: invalid function or declaration
C:\Documents and Settings\Fernando\Desktop\protect.pwn(167) : warning 203: symbol is never used: "Nickname"
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


2 Errors.
Aqui Esstб o Fs Inteiro
pawn Код:
#include <a_samp>
#include <utils>
#include <gl_common>

#define ColorFlood 0x24B1DBAA
#define TimerFlood 3500
#define AlertFlood 4
#define Banir   0
#define Kickar  1
#define COLOR_AZUL 0x0019FFFF
#define MSGPLAYER SendClientMessage

enum IPs
{
    IP[16],
    Option
};

new PlayerIP[][IPs] =
{
    {"201.50.20.80", Kickar},//Boob_PerfecT
    {"200.138.69.245", Kickar},//Spider_Man
    {"192.168.1.4", Kickar},//Sammy_Winchester
    {"5.83.150.194", Kickar}//Killer_Matador
};

new FloodAlert[MAX_PLAYERS],
    FloodTimer[MAX_PLAYERS];
forward RemoveFlood(playerid);

public OnFilterScriptInit()
{
    print(",    Filter Script    .");
    print("| Sistema Anti Flood Anti-IP|");
    print("`    By: Caio_Freeze    ґ");
    return 1;
}

public OnFilterScriptExit()
{
    print(",    Filter Script    .");
    print("| Sistema Anti Flood Anti-IP |");
    print("`    By: Caio_Freeze    ґ");
    return 1;
}

public OnPlayerConnect(playerid)
{
    new ip[16];
    GetPlayerIp(playerid, ip, 16);
    for(new i = 0; i < sizeof PlayerIP; i++)
    {
        if(strfind(ip, PlayerIP[i][IP], true) != -1)
        {
            if(strlen(ip) == strlen(PlayerIP[i][IP]))
            {
                if(PlayerIP[i][Option] == Banir)
                {
                    SendClientMessage(playerid, 0xFFFFFFFF, "** Vocк foi Banido(a) Pelo Sistema Anti-Hacker By: Caio_Freeze.");
                    Ban(playerid);
                }
                else if(PlayerIP[i][Option] == Kickar)
                {
                    SendClientMessage(playerid, 0xFFFFFFFF, "** Vocк foi Kickado(a) Pelo Sistema Anti-Hacker By: Caio_Freeze.");
                    Kick(playerid);
                }
                break;
            }
        }
    }
    FloodAlert[playerid] = 0; FloodTimer[playerid] = 0;
    SendClientMessage(playerid, ColorFlood, "[Anti-Flood] Este server Possui Anti-Flood!!");
    return 1;
}
new Nickname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Nickname[playerid], MAX_PLAYER_NAME);
if(strfind(Nickname[playerid], "[", true) != -1 || strfind(Nickname[playerid], "]", true) != -1)
{
    SendClientMessage(playerid, -1, "Seu Nick nгo deve conter Conchetes");
    Kick(playerid);
}
stock Nome(playerid)
{
    new Nome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Nome, sizeof(Nome));
    return Nome;
}

public OnPlayerText(playerid, text[])
{
    new string[126];
    KillTimer(FloodTimer[playerid]);
    FloodTimer[playerid] = SetTimerEx("RemoveFlood", TimerFlood, 0, "i", playerid);
    FloodAlert[playerid] ++;
    if(FloodAlert[playerid] > 1 && FloodAlert[playerid] < AlertFlood-1)
    {
        format(string, sizeof(string), "[Anti-Flood] Vocк tem {FFFF00}%d/%d{24B1DB} avisos.", FloodAlert[playerid], AlertFlood);
        SendClientMessage(playerid, ColorFlood, string);
    }
    if(FloodAlert[playerid] == AlertFlood-1)
    {
        format(string, sizeof(string), "[Anti-Flood] Vocк tem {FFFF00}%d/%d{24B1DB} avisos. Mais um e vocк serб Kickado.", FloodAlert[playerid], AlertFlood);
        SendClientMessage(playerid, ColorFlood, string);
    }
    if(FloodAlert[playerid] == AlertFlood)
    {
        format(string, sizeof(string), "[Anti-Flood] Vocк tem {FFFF00}%d/%d{24B1DB} avisos. Vocк foi Kickado.", FloodAlert[playerid], AlertFlood);
        SendClientMessage(playerid, ColorFlood, string);
        Kick(playerid);
        new pname[MAX_PLAYER_NAME]; GetPlayerName(playerid, pname, sizeof(pname));
        format(string, sizeof(string), "[Anti-Flood] {FFFF00}%s{24B1DB} foi kickado por Flood.", pname);
        SendClientMessageToAll(ColorFlood, string);
        return 0;
    }
    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
    // New
    new comando[126],
        string[256],
        index,
        pname[MAX_PLAYER_NAME];

    // Comando
    comando = strtok(cmdtext, index);
    if(!strcmp("/resetarflood", comando, true))
    {
        // Nгo й Admin Rcon
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, ColorFlood, "[Anti-Flood] Vocк nгo й Admin RCON.");

        // New (Resposta)
        new resposta[MAX_PLAYER_NAME];
        resposta = strtok(cmdtext, index);

        // Sem Resposta
        if(!strlen(resposta)) return SendClientMessage(playerid, ColorFlood, "[Anti-Flood] /ResetarFlood [PlayerID/NOME]");

        // Definir Resposta Como Jogador
        new player = ReturnUser(resposta);

        // sizeof Nгo Conectado
        if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, ColorFlood, "[Anti-Flood] Jogador Nгo Conectado.");

        // Funзхes Do Player
        GetPlayerName(playerid, pname, sizeof(pname));
        format(string, sizeof(string), "[Anti-Flood] {FFFF00}%s{24B1DB} resetou o seu Flood.", pname);
        SendClientMessage(player, ColorFlood, string);
        FloodAlert[player] = 0;

        // Funзхes Do PlayerID
        GetPlayerName(player, pname, sizeof(pname));
        format(string, sizeof(string), "[Anti-Flood] Vocк resetou o Flood de {FFFF00}%s{24B1DB}.", pname);
        SendClientMessage(playerid, ColorFlood, string);
        return 1;
    }
    return 0;
}

public RemoveFlood(playerid)
{
    KillTimer(FloodTimer[playerid]);
    FloodAlert[playerid] = 0;
    return 1;
}
Reply
#10

ALGUEM ME AJUDA EU DOU REP +++++
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)