SA-MP Forums Archive
[Ajuda] Fs Ant-Hacker Rep + - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Fs Ant-Hacker Rep + (/showthread.php?tid=317908)



[Ajuda] Fs Ant-Hacker Rep + - Caio_Freeze - 12.02.2012

Bom Estou com este script pq eu acho ele bom... mais to com um peqno problema ele possui ant-God Hacker

e meu sv й RPG e quando eu entro em modo /sa (Modo Admin) eu so banido pq o o modo /sa a vida e o colote do admin fica infinita e ant-god hacker ve como god mod hacker entao eu queria saber se tem algum codigo q possibilita so o admin ter vida infinita...

Aqui Estб o Codigo do Fs

Код:
/*
===========================Sitemas==============================================
						Anti-WeaponHacker
						MaxPing
						SpeedHacker
						Tuning Hacker
						Anti-Divulgador
						Anti-Palavrхes
						Anti-God Hacker
						Anti-Colete Hacker
						Anti-Flooder
						Anti-DriveBy
						Anti-GodModCar
						Anti-Bot
						Sistema de LOG de KICK
						Pega Ip dos players conectados e salva
						Sistema Anti-Esc /playeresc
						Sistema de Vida infinita /playerxite
						Sistema Anti-AirBreak /airbreak

================================================================================
*/
#include <a_samp>
#include <SII>
#include <foreach>
#include <dini>
#include <a_http>
//==============================================================================
#define FILTERSCRIPT
//==============================================================================
#define PROTECT_CHAT(%2,%3,%4); \
	AntiPublic(playerid,text); \
		if(MaxString(text,%2)) return SendClientMessage(playerid,%3,%4); \
		StringMinuscula(text); \
		if(AntiBadWord(text)) return false;
#define fcmd(%1,%2) \
            forward fcmd_%1(%2);    \
                public fcmd_%1(%2)
#define MaxFrequence (025)
#define MaxParameter (064)
#define MaxFunctions (032)
#define MaxLenString (128)
//==============================================================================

//==============================================================================
new
    sIndex = 0,
    iLenPart = 0,
    iPosPart = 0,
    iStrMid = 0,
    iLenght = 0,
    cmds[ MaxFunctions ]
;
//==============================================================================
forward
	VelocidadeCarro();
forward
	Hacks();
forward
	VerEsc(playerid);
forward
	AirBreak(pid);
/*
forward
      Atualizar(index, response_code, data[]);
*/
//==============================================================================
new
	Arma[12] = 99,
	MaxPing,
	AntDB,
	AntGodCar,
	VELOCIDADEMAX,
	Tuning,
	AntGod,
    AntFlood,
 	Float: vAngle,
 	String[128],
 	name[MAX_PLAYER_NAME],
 	Float:poskm[3],
 	String2[128],
 	cs,
 	cont = 0,
 	Float:Posx[MAX_PLAYERS],
 	Float:Posy[MAX_PLAYERS],
 	Float:Posz [MAX_PLAYERS]
;
new dataa[125];
new Ano, Mes, Dia;
new Botss[][MAX_PLAYER_NAME] =
{
"com1","com2","com3","com4","com5","com6","com7","com8","com9","lpt1","lpt2","lpt3","lpt4","lpt5","lpt6","lpt7","lpt8","lpt9","Carl","Rocky","Sony","clock$","prn","nul","con",
"Azucar","CON","con","con1","aux","aux1","prn","PRN","AUX","RoamPT"
};
//==============================================================================
new
	Word[][] =
{
	/*"puta",
	"fdp",
	"piranha",
	"vagabundo",
	"broxa",
	"porra",
	"merdao",
	"putinha",
	"prosti",
	"idiota",
	"suruba",
	"penis",
	"chupa",
	"pau",
	"viad",
	"perere",
	"mae",
	"bucet",
	"cu",
	"bicha.",
	"bixa",
	"gay",
	"desgra",
	"RoamPT"*/
	"BPP",
	"BPP OWNA",
	"bpp",
	"bpp owna",
	"BRP",
	"BRP OWNA",
	"brp",
	"brp owna",
	"Brp Owna"
};
//==============================================================================
new
	Sites[10][] =
{
	/*".net",
	".ch",
	".com",
	".br",
	"art.br",
	".ru",
	".zip",
	".blogspot",
	".forumeiros",
	".info",
	".org",
	".edu",
	".jus",
	"wiki.",
	"vlog.br",
	"adm.br",
	"co.cc",
	".tk",
	"www.",
	"http",
	".us",
	".tv"*/
	".com.br",
	".net",
	".org",
	".info",
	".org.br",
	".com",
	"http://",
	"https://",
	".br",
	"co.cc"
};
forward
	  LoadArquivos();
public
	 LoadArquivos()
{
	INI_Open("/AntHacker/Armas.ini");
	Arma[0] = INI_ReadInt("Arma1");
    Arma[1] = INI_ReadInt("Arma2");
	Arma[2] = INI_ReadInt("Arma3");
	Arma[3] = INI_ReadInt("Arma4");
	Arma[4] = INI_ReadInt("Arma5");
	Arma[5] = INI_ReadInt("Arma6");
 	Arma[6] = INI_ReadInt("Arma7");
 	Arma[7] = INI_ReadInt("Arma8");
 	Arma[8] = INI_ReadInt("Arma9");
 	Arma[9] = INI_ReadInt("Arma10");
 	Arma[10] = INI_ReadInt("Arma11");
 	Arma[11] = INI_ReadInt("Arma12");
 	
	INI_Close();
	//============================
	INI_Open("/AntHacker/config.ini");
	Tuning = INI_ReadInt("TuningHacker");
	AntGod = INI_ReadInt("AntGod");
	AntFlood = INI_ReadInt("AntFlood");
	AntDB = INI_ReadInt("AntDB");
	AntGodCar = INI_ReadInt("AntGodCar");
	VELOCIDADEMAX = INI_ReadInt("VelocidadeMaxima");
	MaxPing = INI_ReadInt("ping");
	INI_Close();
	//============================
	return 1;
}
//==============================================================================

//==============================================================================
public
	VelocidadeCarro()
{
	foreach(Player, i)
	{
		if(IsPlayerInAnyVehicle(i))
		{
			if(GetSpeed(i, 1) > VELOCIDADEMAX)
			{
				SetVehicleSpeed(GetPlayerVehicleID(i),0,1);
				format(String, sizeof(String), "[AntiHacker] %s foi kikado por usar Speed Hacker",PlayerNome(i));
		        SendClientMessageToAll(0xAA3333AA, String);
		        format(dataa,125,"[%d/%d/%d]",Dia,Mes,Ano);
		        dini_Set("AntHacker/Kick.log",dataa,String);
				Kick(i);
			}
		}
	}
	return 1;
}
//==============================================================================
/*
public
     Atualizar(index, response_code, data[])
{
    new
        buffer[128];
    if(response_code == 200)
    {
        format(buffer, sizeof(buffer), "[Anti-Hacker] VERRSГO ATUAL:1.1 || VERSГO MAIS NOVA: %s");
        SendClientMessage(index, 0xFFFFFFFF, buffer);
    }
}*/
//==============================================================================
public
	Hacks()
{
    LoadArquivos();
	getdate(Ano, Mes, Dia);
	format(dataa,125,"[%d/%d/%d]",Dia,Mes,Ano);
    foreach(Player, i)
    {
        new Float:AntiGod;
        GetPlayerHealth(i,AntiGod);
        new Float:AntiGodCar;
        GetVehicleHealth(i,AntiGodCar);
        for(new A = 0; A < sizeof(Arma); A++){
			if(GetPlayerWeapon(i) == Arma[A])
			{
				format(String, sizeof(String), "[Anti-Hacker] %s foi Kikado por portar arma ilegal",PlayerNome(i));
				SendClientMessageToAll(0xAA3333AA, String);
				dini_Set("AntHacker/Kick.log",dataa,String);
				Kick(i);
			}
		}
		if (AntGodCar >= 1)
        {
		if(AntiGodCar >=1001)
		{
            format(String, sizeof(String), "[Anti-Hacker] %s foi Kikado por usar Car God Mod ",PlayerNome(i));
			SendClientMessageToAll(0xAA3333AA, String);
			dini_Set("AntHacker/Kick.log",dataa,String);
            Kick(i);
		}
		}
		if (AntGod >= 1)
        {
        if (AntiGod > 101.0)
        {
            format(String, sizeof(String), "[Anti-Hacker] %s foi Kikado por usar God Mod ",PlayerNome(i));
			SendClientMessageToAll(0xAA3333AA, String);
            Kick(i);
			dini_Set("AntHacker/Kick.log",dataa,String);
        }
	    }
   		if(GetPlayerPing(i) >= MaxPing){
		format(String, sizeof(String), "[Anti-Hacker] %s foi kikado por passar do limite de ping (LIMITE: %d)",PlayerNome(i),MaxPing);
		SendClientMessageToAll(0xAA3333AA, String);
		dini_Set("AntHacker/Kick.log",dataa,String);
		Kick(i);}
	    }
    return 1;
}
public OnPlayerConnect(playerid)
{
    new PlayerIP[20];
    GetPlayerIp(playerid, PlayerIP, sizeof(PlayerIP));
    format(String,125,"(Entrou) Player: %s IP: %s",PlayerNome(playerid),PlayerIP);
	getdate(Ano, Mes, Dia);
	format(dataa,125,"[%d/%d/%d]",Dia,Mes,Ano);
	dini_Set("AntHacker/IP.log",dataa,String);
	for(new i; i<sizeof(Botss); i++)
	{
		if(strcmp(Botss[i],PlayerNome(playerid),true)==0)
		{
			Ban(playerid);
			return 1;
		}
	}
	return 1;
}
//========================================================================
//==============================================================================
static TempoChat[MAX_PLAYERS];
stock PlayerFlood(playerid){if(GetTickCount() - TempoChat[playerid] < 3000)return 1;return 0;}
//==============================================================================
public
     OnPlayerText(playerid, text[])
{
	if(AntFlood >= 1){if(PlayerFlood(playerid)){SendClientMessageToAll(0xAA3333AA, "Sem Flood !");return 1;}}
	TempoChat[playerid] = GetTickCount();
	return true;
}
//==============================================================================
stock PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
    if(IsPlayerConnected(playerid))
	{
		new Float:oldposx, Float:oldposy, Float:oldposz;
		new Float:tempposx, Float:tempposy, Float:tempposz;
		GetPlayerPos(playerid, oldposx, oldposy, oldposz);
		tempposx = (oldposx -x);
		tempposy = (oldposy -y);
		tempposz = (oldposz -z);
		if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
		{
			return 1;
		}
	}
	return 0;
}
//==============================================================================
stock
	SetVehicleSpeed(vehicleid, Float: speed, mode = 1)
{
    GetVehicleZAngle(vehicleid, vAngle);
    speed = ((!mode) ? (speed / 105.0) : (speed / 170.0));
    return SetVehicleVelocity(vehicleid, speed * floatsin(-vAngle, degrees), speed * floatcos(-vAngle, degrees), 0.0);
}
//==============================================================================
stock
	GetSpeed(playerid, mode = 1)
{
    GetVehicleVelocity(GetPlayerVehicleID(playerid), poskm[0], poskm[1], poskm[2]);
    return IsPlayerInAnyVehicle(playerid) ? floatround(((floatsqroot(((poskm[0] * poskm[0]) + (poskm[1] * poskm[1]) + (poskm[2] * poskm[2]))) * (!mode ? 105.0 : 170.0))) * 1) : 0;
}
//==============================================================================
stock
	AntiBadWord(text[])
{
	format(String2,66,text);
    for(new st=0,j=strlen(text);st<=j;++st)
    {
        if(String2[st] == '4')
			String2[st] = 'a';

        if(String2[st] == '3')
			String2[st] = 'e';

		if(String2[st] == '5')
			String2[st] = 's';

		if(String2[st] == '8')
			String2[st] = 'b';

		if(String2[st] == '7')
			String2[st] = 't';

		if(String2[st] == '0')
			String2[st] = 'o';

		if(String2[st] == '1')
			String2[st] = 'i';
    }
    for(new st=0,j=22;st<=j;++st)
    {
        if((String2[st]>='a' && String2[st]<='z') || (String2[st]>='A' && String2[st]<='Z'))
        {
	        if(! cs || ( cs && String2[ cs - 1 ] != String2[st]))
			{
                String2[ cs ] = String2[st];
                cs++;
            }
		}
        if( cs >= String2[st])
	        break;
    }
    for(new s = 0 ; s <= sizeof Word;++ s)
		if(strfind(String2,Word[s],true)!=-1)
			return true;
    return false;
}
//==============================================================================
public OnPlayerDeath(playerid, killerid, reason)
{
    if(IsPlayerInAnyVehicle(killerid))
    {
	    if(AntDB >=1){
	    format(String, sizeof(String), "[Anti-Hacker] %s foi Kikado por Drive-By",PlayerNome(killerid));
	    SendClientMessageToAll(0xAA3333AA, String);
	    Kick(killerid);
    	}
    }
    return 1;
}
//==============================================================================
stock
	AntiSites(text[])
{
	format(String2,66,text);
    for(new s = 0 ; s <= 23; ++ s)
		if(strfind(String2,Sites[s],true)!=-1)
			return true;
    return false;
}
//==============================================================================
stock
	MaxString(text[],max)
    	return ((strlen(text) > max) ? true : false);
//==============================================================================
stock
	AntiPublic(playerid,text[])
{
    for (new i = 0 ; i <= strlen(text); i++)
		if ((text[ i ] >= 47) && (text[ i ] <= 58))
			cont++;
    if (cont >= 8 && cont <= 16)
    {
        for (new xs = 0; xs <= strlen(text); xs++)
        {
			if((text[ xs ] == 46) || (text[ xs ] == 58))
			{
            	Kick(playerid);
            	cont = 0;
            	return false;
        	}

		}
	}
	cont = 0;
    return true;
}
//==============================================================================
stock
	StringMinuscula(text[])
{
    for (new LowerC = 0; LowerC <= strlen(text); LowerC ++)
        if (text[ LowerC ] > 64 && text[ LowerC ] < 91 ) text[ LowerC ] += 32;
    return true;
}
//==============================================================================
stock
	PlayerNome(playerid)
{
	GetPlayerName(playerid, name, MAX_PLAYER_NAME);
	return name;
}
//==============================================================================
public
     OnVehicleMod(playerid,vehicleid,componentid)
    {
        foreach(Player, i)
		{
		  if(Tuning >= 1)
		  {
            if(GetPlayerInterior(i) == 0) {
                format(String, sizeof(String), "[Anti-Hacker] %s foi Kikado por Usar Tuning Hacker",PlayerNome(i));
                SendClientMessageToAll(0xAA3333AA, String);
                Kick(i);
            }
        }
	}
        return 1;
    }
//==============================================================================
public VerEsc(playerid){
	new Float:xx,Float:yy,Float:zz;
	GetPlayerPos(playerid,xx,yy,zz);
	
	if(xx == Posx[playerid] && yy == Posy[playerid] && zz == Posz [playerid]){
		format(String, sizeof(String), "[Anti-Hacker] %s foi Kikado por esta de 'ESC'",PlayerNome(playerid));
    	SendClientMessageToAll(0xAA3333AA, String);
        dini_Set("AntHacker/Kick.log",dataa,String);
        Kick(playerid);
	}
	else
	{
	
	}
	
	return true;
}
//==============================================================================
public OnPlayerCommandText(playerid,cmdtext[])
{
    //Here you can write cmds witout params!
    return DelimiterCommand(playerid,cmdtext);
}
//==============================================================================
new iParams[ MaxFrequence ][ MaxParameter ],iTotalParams[MaxLenString];
//==============================================================================
stock
    DelimiterCommand(playerid,sStringSource[])
{
    iLenght = strlen(sStringSource);
    sIndex = 0;
    iLenPart = 0;
    iPosPart = 0;
    iStrMid = 0;
    for(new aIndex = 1; aIndex < MaxFrequence; ++aIndex) iParams[aIndex][0] = '\0';
    iTotalParams[0] = '\0';
    while(sIndex <= iLenght)
    {

        if(sStringSource[sIndex] == ' ' && sStringSource[sIndex - 1] != ' ' || sIndex == iLenght)
        {
            iStrMid = strmid(iParams[iPosPart], sStringSource, iLenPart, sIndex, 128);
            iParams[iPosPart][iStrMid] = 0,iLenPart = (sIndex + 1), ++iPosPart;
            if(iPosPart == 1)
                format(iTotalParams,MaxLenString, "%s",sStringSource[sIndex]);
        }
        ++sIndex;
    }
    format(cmds, sizeof cmds,"fcmd_%s",iParams[0][1]);
    return CallLocalFunction(cmds,"i",playerid);
}
//==============================================================================
fcmd(playeresc,playerid)
{
	new pid;
 	pid = strval ( iParams [0] );
	if(!pid) return  SendClientMessage( playerid , 0xAA3333AA, "[Anti-Hacker] Use /playeresc [id]" );
	if( !IsPlayerConnected ( pid ) ) return SendClientMessage( playerid , 0xAA3333AA, "[Anti-Hacker] ID OFF" );
    if(playerid == pid ) return true;
	GetPlayerPos( pid , Posx [ pid ] , Posy [ pid ] , Posz [ pid ] );
	SetTimerEx( "VerEsc" , 15*1000 , false, "d" , pid );
	SendClientMessage( pid , 0xAA3333AA , "[Anti-Hacker] Vocк esta em processo de Anti-Esc Mova-se");
	SendClientMessage( playerid , 0xAA3333AA , "[Anti-Hacker] Aguarde 15s" );
	return true;
}
//==============================================================================
fcmd(playerxite,playerid)
{
	new pid;
    pid = strval ( iParams [ 0 ] );
    if( !pid ) return  SendClientMessage ( playerid , 0xAA3333AA, "[Anti-Hacker] Use /playerxite [id]" );
	if( !IsPlayerConnected ( pid ) ) return SendClientMessage( playerid , 0xAA3333AA, "[Anti-Hacker] ID OFF" );
    new Float:Sangue [ 2 ];
    GetPlayerHealth ( pid , Sangue [ 0 ] );
	GetPlayerPos ( pid , Posx [ pid ] , Posy [ pid ], Posz [ pid ] );
	SetPlayerPos ( pid , Posx [ pid ] +5 ,Posy [ pid ] +6 ,Posz [ pid ] +5 );
    GetPlayerHealth ( pid , Sangue[1]);
    if( Sangue [ 0 ] < Sangue [ 1 ] ) {
  		format ( String , sizeof ( String ) , "[Anti-Hacker] %s foi Kikado por esta de 'Xite/God'",PlayerNome(pid));
    	SendClientMessageToAll ( 0xAA3333AA , String );
        dini_Set ( "AntHacker/Kick.log" , dataa , String );
        Kick ( pid );
    }
    else
    {
        SendClientMessage( playerid , 0xAA3333AA, "[Anti-Hacker] O Player Nгo estava de xite e vocк vai ser punido");
		SetPlayerHealth( playerid , 0 );
    }
	return true;
}
//==============================================================================
new MyID;
fcmd(airbreak,playerid)
{
	new pid;
    pid = strval ( iParams [ 0 ] );
    if( !pid ) return  SendClientMessage( playerid , 0xAA3333AA, "[Anti-Hacker] Use /airbreak [id]" );
    if( !IsPlayerConnected ( pid ) ) return SendClientMessage( playerid , 0xAA3333AA, "[Anti-Hacker] ID OFF" );
	TogglePlayerControllable(pid, 0);
	SetPlayerPos ( pid , 1699.2, 1435.1, 10.7 );
	SetTimerEx ( "AirBreak" , 2*1000 , false, "d" , pid );
	MyID = playerid;
	SendClientMessage( playerid , 0xAA3333AA, "[Anti-Hacker] Aguarde" );
	return true;
}
//==============================================================================
public AirBreak(pid){
	GetPlayerPos ( pid , Posx [ pid ] , Posy [ pid ], Posz [ pid ] );
	if(PlayerToPoint( 2.0 , pid , Posx [ pid ] , Posy [ pid ], Posz [ pid ] )){
	    SendClientMessage( MyID , 0xAA3333AA, "[Anti-Hacker] Player nгo estava de Airbreak" );
        TogglePlayerControllable( pid , 1 );
	}
	else
	{
		format ( String , sizeof ( String ) , "[Anti-Hacker] %s foi Kikado por esta de 'AirBreak'", PlayerNome( pid ) );
    	SendClientMessageToAll ( 0xAA3333AA , String );
        dini_Set ( "AntHacker/Kick.log" , dataa , String );
        Kick ( pid );
	}
	return true;
}
//==============================================================================


Obrigado desde ja Quem me Ajuda dou Rep +


Re: [Ajuda] Fs Ant-Hacker Rep + - Cotoco Topic - 12.02.2012

coloca uma if assim

if(!//variavel de admin seu na parte onde bane por god

pra empedir isso


Re: [Ajuda] Fs Ant-Hacker Rep + - Lуs - 12.02.2012

Quote:
Originally Posted by Cotoco Topic
Посмотреть сообщение
coloca uma if assim

if(!//variavel de admin seu na parte onde bane por god

pra empedir isso
Isso sу vai acontecer se o FS estiver no GM dele.


Amigo, se vocк quer fazer isso, terб que colocar o FS no seu GM.


Re: [Ajuda] Fs Ant-Hacker Rep + - Delete_ - 13.02.2012

Se nгo quiser adicionar o fs no gm, desabilita o anti god mod, '-'


Re: [Ajuda] Fs Ant-Hacker Rep + - Caio_Freeze - 13.02.2012

Quote:
Originally Posted by delete
Посмотреть сообщение
Se nгo quiser adicionar o fs no gm, desabilita o anti god mod, '-'
mais eu n quero desabilita o god mod

alguem poderia me fala a onde eu vejo a variavel ?


Re: [Ajuda] Fs Ant-Hacker Rep + - Shelby - 13.02.2012

Troque a variбvel do gamemode para PVars, assim poderб utilizar no fs.

Mas se o anti-godmode й para banir "hackers" que aumentem a vida, й inutil. Os hacks impedem que a vida diminua, ele nгo а aumenta.