30.05.2014, 09:57
(
Last edited by [NoV]LaZ; 30/05/2014 at 01:01 PM.
Reason: noob
)
Nevoie de Filescript anti-money hack sa nu isi de.a bani
#include < a_samp >
new _m_ac_money [ MAX_PLAYERS ];
forward _m_ac_MoneyCheck ( );
stock _m_ac_GivePlayerMoney ( playerid, money )
{
if ( !IsPlayerConnected ( playerid ) ) return 0;
_m_ac_money [ playerid ] += money;
return GivePlayerMoney ( playerid, money );
}
stock _m_ac_GetPlayerMoney ( playerid )
{
if ( !IsPlayerConnected ( playerid ) ) return 0;
return _m_ac_money [ playerid ];
}
stock _m_ac_ResetPlayerMoney ( playerid )
{
if ( !IsPlayerConnected ( playerid ) ) return 0;
_m_ac_money [ playerid ] = 0;
return ResetPlayerMoney ( playerid );
}
public OnGameModeInit ( )
{
SetTimer ( "_m_ac_MoneyCheck", 1000, true );
#if defined _m_ac_OnGameModeInit
return _m_ac_OnGameModeInit ( );
#else
return 1;
#endif
}
public OnPlayerConnect ( playerid )
{
_m_ac_money [ playerid ] = 0;
#if defined _m_ac_OnPlayerConnect
return _m_ac_OnPlayerConnect ( playerid );
#else
return 1;
#endif
}
public _m_ac_MoneyCheck ( )
{
for ( new i; i != MAX_PLAYERS; ++i )
{
if ( !IsPlayerConnected ( i ) ) continue;
if ( GetPlayerMoney ( i ) != _m_ac_money [ i ] )
{
ResetPlayerMoney ( i );
GivePlayerMoney ( i, _m_ac_money [ i ] );
}
}
return 1;
}
#if defined _ALS_GivePlayerMoney
#undef GivePlayerMoney
#else
#define _ALS_GivePlayerMoney
#endif
#define GivePlayerMoney _m_ac_GivePlayerMoney
#if defined _ALS_GetPlayerMoney
#undef GetPlayerMoney
#else
#define _ALS_GetPlayerMoney
#endif
#define GetPlayerMoney _m_ac_GetPlayerMoney
#if defined _ALS_ResetPlayerMoney
#undef ResetPlayerMoney
#else
#define _ALS_ResetPlayerMoney
#endif
#define ResetPlayerMoney _m_ac_ResetPlayerMoney
#if defined _ALS_OnGameModeInit
#undef OnGameModeInit
#else
#define _ALS_OnGameModeInit
#endif
#define OnGameModeInit _m_ac_OnGameModeInit
#if defined _m_ac_OnGameModeInit
forward _m_ac_OnGameModeInit ( );
#endif
#if defined _ALS_OnPlayerConnect
#undef OnPlayerConnect
#else
#define _ALS_OnPlayerConnect
#endif
#define OnPlayerConnect _m_ac_OnPlayerConnect
#if defined _m_ac_OnPlayerConnect
forward _m_ac_OnPlayerConnect ( playerid );
#endif
#include <a_samp> #define Maximal_Players 500 #define Cheat_Type_Money 0 #define Cheat_Type_Weapons 1 #define Cheat_Type_Player_Speed 2 #define Cheat_Type_Vehicle_Speed 3 new AntiCheatDetectTimer; enum PlayerInfo { PlayerMoney, PlayerWeapon[13], PlayerAmmunition[13] }; new Player[Maximal_Players][PlayerInfo]; public OnFilterScriptInit() { AntiCheatDetectTimer = SetTimer("AntiCheatDetect",1000,1); return 1; } public OnFilterScriptExit() { KillTimer(AntiCheatDetectTimer); return 1; } public OnPlayerConnect(playerid) { Player[playerid][PlayerMoney] = 0; for(new W = 0; W < 12; W++) { Player[playerid][PlayerWeapon][W] = 0; Player[playerid][PlayerAmmunition][W] = 0; } return 1; } forward AntiCheat(PlayerId,Cheat_Type,WeaponId); public AntiCheat(PlayerId,Cheat_Type,WeaponId) { if(Cheat_Type == Cheat_Type_Money) SetMoney(PlayerId,Player[PlayerId][PlayerMoney]); if(Cheat_Type == Cheat_Type_Weapons) ResetWeapon(PlayerId,WeaponId); if(Cheat_Type == Cheat_Type_Player_Speed) SetPlayerHealth(PlayerId,0); if(Cheat_Type == Cheat_Type_Vehicle_Speed) DestroyVehicle(GetPlayerVehicleID(PlayerId)); return 1; } stock GetMoney(PlayerId) { if(!IsPlayerConnected(PlayerId)) return 0; return Player[PlayerId][PlayerMoney]; } stock GiveMoney(PlayerId,Amount) { if(!IsPlayerConnected(PlayerId)) return 0; if(Amount == 0) return 0; Player[PlayerId][PlayerMoney] += Amount; GivePlayerMoney(PlayerId,Amount); return 1; } stock SetMoney(PlayerId,Amount) { if(!IsPlayerConnected(PlayerId)) return 0; Player[PlayerId][PlayerMoney] = Amount; ResetPlayerMoney(PlayerId); GivePlayerMoney(PlayerId,Player[PlayerId][PlayerMoney]); return 1; } stock ResetMoney(PlayerId) { if(!IsPlayerConnected(PlayerId)) return 0; Player[PlayerId][PlayerMoney] = 0; ResetPlayerMoney(PlayerId); return 1; } stock GiveWeapon(PlayerId,WeaponId,Ammunition) { if(!IsPlayerConnected(PlayerId)) return 0; if(WeaponId < 0 || WeaponId == 19 || WeaponId == 20 || WeaponId == 21 || WeaponId > 46) return 0; if(Ammunition == 0) return 0; for(new W = 0; W < 12; W++) { GetPlayerWeaponData(PlayerId,W,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]); } Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)] = WeaponId; Player[PlayerId][PlayerAmmunition][GetWeaponSlot(WeaponId)] = Ammunition; SetPlayerAmmo(PlayerId,Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)],0); GivePlayerWeapon(PlayerId,WeaponId,Ammunition); SetPlayerArmedWeapon(PlayerId,WeaponId); return 1; } stock ResetWeapon(PlayerId,WeaponId) { if(!IsPlayerConnected(PlayerId)) return 0; if(WeaponId < 0 || WeaponId == 19 || WeaponId == 20 || WeaponId == 21 || WeaponId > 46) return 0; for(new W = 0; W < 12; W++) { GetPlayerWeaponData(PlayerId,W,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]); } Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)] = 0; Player[PlayerId][PlayerAmmunition][GetWeaponSlot(WeaponId)] = 0; ResetPlayerWeapons(PlayerId); for(new W = 0; W < 12; W++) { GivePlayerWeapon(PlayerId,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]); } SetPlayerArmedWeapon(PlayerId,0); return 1; } stock ResetWeapons(PlayerId) { if(!IsPlayerConnected(PlayerId)) return 0; for(new W = 0; W < 12; W++) { Player[PlayerId][PlayerWeapon][W] = 0; Player[PlayerId][PlayerAmmunition][W] = 0; } ResetPlayerWeapons(PlayerId); return 1; } stock GetWeaponSlot(WeaponId) { switch(WeaponId) { case 0,1: return 0; case 2..9: return 1; case 10..15: return 10; case 16..18,39: return 8; case 22..24: return 2; case 25..27: return 3; case 28,29,32: return 4; case 30,31: return 5; case 33,34: return 6; case 35..38: return 7; case 40: return 12; case 41..43: return 9; case 44..46: return 11; } return 0; } forward AntiCheatDetect(); public AntiCheatDetect() { for(new P = 0; P < Maximal_Players; P++) { if(IsPlayerConnected(P)) { if(GetPlayerMoney(P) != GetMoney(P)) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Money); if(Player[P][PlayerWeapon][GetWeaponSlot(GetPlayerWeapon(P))] != GetPlayerWeapon(P)) CallLocalFunction("AntiCheat","ddd",P,Cheat_Type_Weapons,GetPlayerWeapon(P)); if(GetPlayerState(P) == PLAYER_STATE_ONFOOT) { new Float:X; new Float:Y; new Float:Z; GetPlayerVelocity(P,X,Y,Z); if(floatround(X) > 1 || floatround(Y) > 1 || floatround(Z) > 1) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Player_Speed); } if(GetPlayerState(P) == PLAYER_STATE_DRIVER) { new Float:X; new Float:Y; new Float:Z; GetVehicleVelocity(GetPlayerVehicleID(P),X,Y,Z); if(floatround(X) > 1 || floatround(Y) > 1 || floatround(Z) > 3 || floatround(X) < -1 || floatround(Y) < -1 || floatround(Z) < -3) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Vehicle_Speed); } } } return 1; }
#include <a_samp> #define Maximal_Players 500 #define Cheat_Type_Money 0 #define Cheat_Type_Weapons 1 #define Cheat_Type_Player_Speed 2 #define Cheat_Type_Vehicle_Speed 3 new AntiCheatDetectTimer; enum PlayerInfo { PlayerMoney, PlayerWeapon[13], PlayerAmmunition[13] }; new Player[Maximal_Players][PlayerInfo]; public OnFilterScriptInit() { AntiCheatDetectTimer = SetTimer("AntiCheatDetect",1000,1); return 1; } public OnFilterScriptExit() { KillTimer(AntiCheatDetectTimer); return 1; } public OnPlayerConnect(playerid) { Player[playerid][PlayerMoney] = 0; for(new W = 0; W < 12; W++) { Player[playerid][PlayerWeapon][W] = 0; Player[playerid][PlayerAmmunition][W] = 0; } return 1; } forward AntiCheat(PlayerId,Cheat_Type,WeaponId); public AntiCheat(PlayerId,Cheat_Type,WeaponId) { if(Cheat_Type == Cheat_Type_Money) SetMoney(PlayerId,Player[PlayerId][PlayerMoney]); if(Cheat_Type == Cheat_Type_Weapons) ResetWeapon(PlayerId,WeaponId); if(Cheat_Type == Cheat_Type_Player_Speed) SetPlayerHealth(PlayerId,0); if(Cheat_Type == Cheat_Type_Vehicle_Speed) DestroyVehicle(GetPlayerVehicleID(PlayerId)); return 1; } stock GetMoney(PlayerId) { if(!IsPlayerConnected(PlayerId)) return 0; return Player[PlayerId][PlayerMoney]; } stock GiveMoney(PlayerId,Amount) { if(!IsPlayerConnected(PlayerId)) return 0; if(Amount == 0) return 0; Player[PlayerId][PlayerMoney] += Amount; GivePlayerMoney(PlayerId,Amount); return 1; } stock SetMoney(PlayerId,Amount) { if(!IsPlayerConnected(PlayerId)) return 0; Player[PlayerId][PlayerMoney] = Amount; ResetPlayerMoney(PlayerId); GivePlayerMoney(PlayerId,Player[PlayerId][PlayerMoney]); return 1; } stock ResetMoney(PlayerId) { if(!IsPlayerConnected(PlayerId)) return 0; Player[PlayerId][PlayerMoney] = 0; ResetPlayerMoney(PlayerId); return 1; } stock GiveWeapon(PlayerId,WeaponId,Ammunition) { if(!IsPlayerConnected(PlayerId)) return 0; if(WeaponId < 0 || WeaponId == 19 || WeaponId == 20 || WeaponId == 21 || WeaponId > 46) return 0; if(Ammunition == 0) return 0; for(new W = 0; W < 12; W++) { GetPlayerWeaponData(PlayerId,W,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]); } Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)] = WeaponId; Player[PlayerId][PlayerAmmunition][GetWeaponSlot(WeaponId)] = Ammunition; SetPlayerAmmo(PlayerId,Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)],0); GivePlayerWeapon(PlayerId,WeaponId,Ammunition); SetPlayerArmedWeapon(PlayerId,WeaponId); return 1; } stock ResetWeapon(PlayerId,WeaponId) { if(!IsPlayerConnected(PlayerId)) return 0; if(WeaponId < 0 || WeaponId == 19 || WeaponId == 20 || WeaponId == 21 || WeaponId > 46) return 0; for(new W = 0; W < 12; W++) { GetPlayerWeaponData(PlayerId,W,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]); } Player[PlayerId][PlayerWeapon][GetWeaponSlot(WeaponId)] = 0; Player[PlayerId][PlayerAmmunition][GetWeaponSlot(WeaponId)] = 0; ResetPlayerWeapons(PlayerId); for(new W = 0; W < 12; W++) { GivePlayerWeapon(PlayerId,Player[PlayerId][PlayerWeapon][W],Player[PlayerId][PlayerAmmunition][W]); } SetPlayerArmedWeapon(PlayerId,0); return 1; } stock ResetWeapons(PlayerId) { if(!IsPlayerConnected(PlayerId)) return 0; for(new W = 0; W < 12; W++) { Player[PlayerId][PlayerWeapon][W] = 0; Player[PlayerId][PlayerAmmunition][W] = 0; } ResetPlayerWeapons(PlayerId); return 1; } stock GetWeaponSlot(WeaponId) { switch(WeaponId) { case 0,1: return 0; case 2..9: return 1; case 10..15: return 10; case 16..18,39: return 8; case 22..24: return 2; case 25..27: return 3; case 28,29,32: return 4; case 30,31: return 5; case 33,34: return 6; case 35..38: return 7; case 40: return 12; case 41..43: return 9; case 44..46: return 11; } return 0; } forward AntiCheatDetect(); public AntiCheatDetect() { for(new P = 0; P < Maximal_Players; P++) { if(IsPlayerConnected(P)) { if(GetPlayerMoney(P) != GetMoney(P)) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Money); if(Player[P][PlayerWeapon][GetWeaponSlot(GetPlayerWeapon(P))] != GetPlayerWeapon(P)) CallLocalFunction("AntiCheat","ddd",P,Cheat_Type_Weapons,GetPlayerWeapon(P)); if(GetPlayerState(P) == PLAYER_STATE_ONFOOT) { new Float:X; new Float:Y; new Float:Z; GetPlayerVelocity(P,X,Y,Z); if(floatround(X) > 1 || floatround(Y) > 1 || floatround(Z) > 1) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Player_Speed); } if(GetPlayerState(P) == PLAYER_STATE_DRIVER) { new Float:X; new Float:Y; new Float:Z; GetVehicleVelocity(GetPlayerVehicleID(P),X,Y,Z); if(floatround(X) > 1 || floatround(Y) > 1 || floatround(Z) > 3 || floatround(X) < -1 || floatround(Y) < -1 || floatround(Z) < -3) CallLocalFunction("AntiCheat","dd",P,Cheat_Type_Vehicle_Speed); } } } return 1; }