Advertisement
Niko_Hs

[FS] Anti S0beit Script

Sep 27th, 2011
9,404
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 35.05 KB | None | 0 0
  1. /*------------------------------------------------------------------------------
  2.             ######## ## ######       ###     ######
  3.             ##       ##       ##    ##     ## ##   ##    ##
  4.             ##       ##       ##        ##   ##  ##
  5.             ######   ##       ##           ##     ## ##
  6.             ##       ##       ##           ######### ##
  7.             ##       ##       ##    ##   ##     ## ##    ##
  8.             ######## ########  ######  ####### ##     ##  ######
  9.  
  10.  
  11.                              ########  ##    ##
  12.                             ##     ##  ##  ##
  13.                             ##     ##   ####
  14.                             ########     ##
  15.                             ##     ##    ##
  16.                             ##     ##    ##
  17.                             ########     ##
  18.  
  19.  
  20.         ######## ## #######   ######  ######## ########   #######
  21.         ##       ##       ##     ## ##    ##    ##    ##     ## ##     ##
  22.         ##       ##       ##     ## ##    ##    ##     ## ##     ##
  23.         ######   ##       ##     ## ##    ##    ########  ##     ##
  24.         ##       ##       ##     ## ##    ##    ##   ##   ##     ##
  25.         ##       ##       ##     ## ##    ##    ##    ##    ##  ##     ##
  26.         ######## ########  #######   ######     ##    ##     ##  #######
  27.  
  28.                  Anti-Cheat(ELC_AC)
  29.  
  30.                 PROTECTIONS :
  31.                   Anti-Weapon HACK
  32.                    Anti-Ammo HACK
  33.                 Anti-Ammo Block HACK
  34.                    Anti-Money HACK
  35.                    Anti-Speed HACK
  36.                          Anti-Teleport & Anti-Airbreak
  37.                                Anti-Health HACK
  38.                                Anti-Armour HACK
  39.  
  40.                     BUG :
  41.                              Nothing
  42.  
  43.                   VERSION :
  44.                                 V2.2
  45.  
  46.                                  COMPATIBLE :
  47.                                  SA-MP 0.3b
  48.                                      &
  49.                                  SA-MP 0.3c
  50.  
  51.                   CREDITS :
  52.                   ELOCTRO (SCRIPT)
  53.              SIM (GetTickCount for linux)
  54.  
  55.                       ELC_AC THE BEST PROTECTION
  56.                           !
  57.  
  58.                     \**/
  59. /*/- Anti-Cheat By Eloctro -----------------------------------------------------
  60.  
  61.                 ELC PRODUCTION(FRANCE)
  62.  
  63.              http://http://eloctro.blogspot.com/
  64.  
  65. */
  66. #include <a_samp>
  67. /*----------------------------------------------------------------------------*/
  68. //Anti-Cheat Statut defaut :
  69. #define ANTI_WEAPON_&_AMMO_HACK     1
  70. #define ANTI_AMMO_BLOCK_HACK    1
  71. #define ANTI_MONEY_HACK      1
  72. #define ANTI_SPEED_HACK      1
  73. #define ANTI_TELEPORT/AIBREAK_HACK  1
  74. #define ANTI_HEALTH_HACK        1
  75. #define ANTI_ARMOUR_HACK        1
  76. //Configuration :
  77. #define MAX_SPEED_VEHICLE       380.0 // SPEED VEHICLE MAX(380=default)
  78. #define MAX_VEHICLE_DISTANCE_PER_SECOND  180   // DISTANCE PARCOUR MAX VEHICLE PER SECOND(180=default)
  79. #define MAX_PED_DISTANCE_PER_SECOND      100   // DISTANCE PARCOUR MAX AT PED PER SECOND(100=default)
  80. #define SPRINT_SPEED             30.0 // (30=DEFAULT/BETA)
  81. #define TIRE_RATE           2000  // (1800=default)
  82. #define SET_POS_RATE             4     // RELOAD POSITION PER SECOND
  83. #define TIMER_CHEAT_RATE         2000
  84. #define TIME_GRANULITY         50   // Granulity GetTickCount
  85. #define MAX_HEALTH             100 // Max HEALTH
  86. #define MAX_ARMOUR             100 // Max ARMOUR
  87. //#define NO_TICK_COUNT  //uncomment If GetTickCount() bug(linux?)
  88. //#define INCLUDE_BASE_MODE //uncomment to pass in mod include
  89.  
  90. //Calcul(DON'T TOUCH)----------------------------------------------------------
  91. #define XMAX_VEHICLE_DISTANCE_PER_SECOND MAX_VEHICLE_DISTANCE_PER_SECOND*(TIMER_CHEAT_RATE/1000)
  92. #define XMAX_PED_DISTANCE_PER_SECOND MAX_PED_DISTANCE_PER_SECOND*(TIMER_CHEAT_RATE/1000)
  93. #define XSET_POS_RATE SET_POS_RATE/(TIMER_CHEAT_RATE/1000)
  94. /*----------------------------------------------------------------------------*/
  95. enum aELCp
  96. {
  97.     aMoney,
  98.     aAmmo[12],
  99.     aWeapon[12],
  100.     aTickFire,
  101.     aAmmoFire,
  102.     aWeaponFire,
  103.     Float:aHealth,
  104.     Float:aGainHealth,
  105.     Float:aArmour,
  106.     aTimer,
  107.     Float:aX,
  108.     Float:aY,
  109.     Float:aZ,
  110.     aAntiTeleportHack,
  111.     aAntiWeaponHack,
  112.     aAntiAmmoBlockHack,
  113.     aAntiMoneyHack,
  114.     aAntiSpeedHack,
  115.     aAntiHealthHack,
  116.     aAntiArmourHack,
  117.     aLoadPosition
  118. };
  119. new CheatPlayerInfo[MAX_PLAYERS][aELCp];
  120. #if defined NO_TICK_COUNT
  121. enum aELCs
  122. {
  123.     TickCount,
  124.     TimerTick
  125. };
  126. new CheatServerInfo[aELCs];
  127. #endif
  128. /*----------------------------------------------------------------------------*/
  129. stock Float:GetPlayerSpeedXY(playerid)
  130. {
  131. new Float:SpeedX, Float:SpeedY, Float:SpeedZ;
  132. new Float:Speed;
  133. if(IsPlayerInAnyVehicle(playerid)) GetVehicleVelocity(GetPlayerVehicleID(playerid), SpeedX, SpeedY, SpeedZ);
  134. else GetPlayerVelocity(playerid, SpeedX, SpeedY, SpeedZ);
  135. Speed = floatsqroot(floatadd(floatpower(SpeedX, 2.0), floatpower(SpeedY, 2.0)));
  136. return floatmul(Speed, 200.0);
  137. }
  138. #if defined NO_TICK_COUNT
  139.     #define GetTickCount()            (CheatServerInfo[TickCount])
  140.     forward TimeUpdate();
  141.     public TimeUpdate()
  142.     {
  143.         CheatServerInfo[TickCount] +=TIME_GRANULITY;
  144.         return 1;
  145.     }
  146. #endif
  147. forward OnPlayerCheckCheat(playerid);
  148. forward OnPlayerCheat(playerid, cheatid);
  149. forward ELC_AC_EnablePlayerCheatID(playerid,cheatid,enable);
  150. forward ELC_AC_OnPlayerBuy(playerid,buyprice);
  151. forward OnPlayerCheckFaceWall(playerid,Float:wall_x,Float:wall_y,Float:wall_z,Float:nwall_x,Float:nwall_y,Float:wall_he);
  152. /*----------------------------------------------------------------------------*/
  153. forward ELC_AC_GivePlayerMoney(playerid, money);
  154. public ELC_AC_GivePlayerMoney(playerid, money)
  155. {
  156.     if(CheatPlayerInfo[playerid][aAntiMoneyHack]==1)CheatPlayerInfo[playerid][aAntiMoneyHack]=2;
  157.     CheatPlayerInfo[playerid][aMoney] = CheatPlayerInfo[playerid][aMoney] + money;
  158.     GivePlayerMoney(playerid, money);
  159.     if(CheatPlayerInfo[playerid][aAntiMoneyHack]==2)CheatPlayerInfo[playerid][aAntiMoneyHack]=1;
  160.     return 1;
  161. }
  162. stock initial_GivePlayerMoney(playerid, money)
  163. {
  164.     return GivePlayerMoney(playerid, money);
  165. }
  166. #if defined INCLUDE_BASE_MODE
  167. //ALS_SYSTEME --------------------
  168. #if defined _ALS_GivePlayerMoney
  169.     #undef GivePlayerMoney
  170. #else
  171.     #define _ALS_GivePlayerMoney
  172. #endif
  173. #define GivePlayerMoney ELC_AC_GivePlayerMoney
  174. #endif
  175. //ALS_OFF_SYSTEME ----------------
  176. /*----------------------------------------------------------------------------*/
  177. forward ELC_AC_ResetPlayerMoney(playerid);
  178. public ELC_AC_ResetPlayerMoney(playerid)
  179. {
  180.     CheatPlayerInfo[playerid][aMoney] = 0;
  181.     return ResetPlayerMoney(playerid);
  182. }
  183. stock initial_ResetPlayerMoney(playerid)
  184. {
  185.     return ResetPlayerMoney(playerid);
  186. }
  187. #if defined INCLUDE_BASE_MODE
  188. //ALS_SYSTEME --------------------
  189. #if defined _ALS_ResetPlayerMoney
  190.     #undef ResetPlayerMoney
  191. #else
  192.     #define _ALS_ResetPlayerMoney
  193. #endif
  194. #define ResetPlayerMoney ELC_AC_ResetPlayerMoney
  195. #endif
  196. //ALS_OFF_SYSTEME ----------------
  197. /*----------------------------------------------------------------------------*/
  198. forward ELC_AC_GetPlayerMoney(playerid);
  199. public ELC_AC_GetPlayerMoney(playerid)
  200. {
  201.     return CheatPlayerInfo[playerid][aMoney];
  202. }
  203. stock initial_GetPlayerMoney(playerid)
  204. {
  205.     return GetPlayerMoney(playerid);
  206. }
  207. #if defined INCLUDE_BASE_MODE
  208. //ALS_SYSTEME --------------------
  209. #if defined _ALS_GetPlayerMoney
  210.     #undef GetPlayerMoney
  211. #else
  212.     #define _ALS_GetPlayerMoney
  213. #endif
  214. #define GetPlayerMoney ELC_AC_GetPlayerMoney
  215. #endif
  216. //ALS_OFF_SYSTEME ----------------
  217. /*----------------------------------------------------------------------------*/
  218. forward ELC_AC_SetPlayerPos(playerid, Float:ix, Float:iy, Float:iz);
  219. public ELC_AC_SetPlayerPos(playerid, Float:ix, Float:iy, Float:iz)
  220. {
  221.     if(CheatPlayerInfo[playerid][aAntiTeleportHack]==1)CheatPlayerInfo[playerid][aAntiTeleportHack]=2;
  222.     CheatPlayerInfo[playerid][aLoadPosition]=XSET_POS_RATE;
  223.     SetPlayerPos(playerid, ix, iy, iz);
  224.     if(CheatPlayerInfo[playerid][aAntiTeleportHack]==2)CheatPlayerInfo[playerid][aAntiTeleportHack]=1;
  225.     return 1;
  226. }
  227. stock initial_SetPlayerPos(playerid, Float:ix, Float:iy, Float:iz)
  228. {
  229.     return SetPlayerPos(playerid, ix, iy, iz);
  230. }
  231. #if defined INCLUDE_BASE_MODE
  232. //ALS_SYSTEME --------------------
  233. #if defined _ALS_SetPlayerPos
  234.     #undef SetPlayerPos
  235. #else
  236.     #define _ALS_SetPlayerPos
  237. #endif
  238. #define SetPlayerPos ELC_AC_SetPlayerPos
  239. //ALS_OFF_SYSTEME ----------------
  240. #endif
  241. /*----------------------------------------------------------------------------*/
  242. forward ELC_AC_PutPlayerInVehicle(playerid,vehicleid, seatid);
  243. public ELC_AC_PutPlayerInVehicle(playerid,vehicleid, seatid)
  244. {
  245.     if(CheatPlayerInfo[playerid][aAntiTeleportHack]==1)CheatPlayerInfo[playerid][aAntiTeleportHack]=2;
  246.     CheatPlayerInfo[playerid][aLoadPosition]=XSET_POS_RATE;
  247.     PutPlayerInVehicle(playerid,vehicleid, seatid);
  248.     if(CheatPlayerInfo[playerid][aAntiTeleportHack]==2)CheatPlayerInfo[playerid][aAntiTeleportHack]=1;
  249.     return 1;
  250. }
  251. stock initial_PutPlayerInVehicle(playerid,vehicleid, seatid)
  252. {
  253.     return PutPlayerInVehicle(playerid,vehicleid, seatid);
  254. }
  255. #if defined INCLUDE_BASE_MODE
  256. //ALS_SYSTEME --------------------
  257. #if defined _ALS_PutPlayerInVehicle
  258.     #undef PutPlayerInVehicle
  259. #else
  260.     #define _ALS_PutPlayerInVehicle
  261. #endif
  262. #define PutPlayerInVehicle ELC_AC_PutPlayerInVehicle
  263. //ALS_OFF_SYSTEME ----------------
  264. #endif
  265. /*----------------------------------------------------------------------------*/
  266. forward ELC_AC_TogglePlayerSpectating(playerid, toggle);
  267. public ELC_AC_TogglePlayerSpectating(playerid, toggle)
  268. {
  269.     if(toggle==1)
  270.     {
  271.         CheatPlayerInfo[playerid][aAntiTeleportHack]=0;
  272.         CheatPlayerInfo[playerid][aAntiSpeedHack]=0;
  273.     }
  274.     else
  275.     {
  276.         CheatPlayerInfo[playerid][aAntiTeleportHack]=1;
  277.         CheatPlayerInfo[playerid][aAntiSpeedHack]=1;
  278.         CheatPlayerInfo[playerid][aLoadPosition]=XSET_POS_RATE;
  279.     }
  280.     return TogglePlayerSpectating(playerid, toggle);
  281. }
  282. stock initial_TogglePlayerSpectating(playerid, toggle)
  283. {
  284.     return TogglePlayerSpectating(playerid, toggle);
  285. }
  286. #if defined INCLUDE_BASE_MODE
  287. //ALS_SYSTEME --------------------
  288. #if defined _ALS_TogglePlayerSpectating
  289.     #undef TogglePlayerSpectating
  290. #else
  291.     #define _ALS_TogglePlayerSpectating
  292. #endif
  293. #define TogglePlayerSpectating ELC_AC_TogglePlayerSpectating
  294. //ALS_OFF_SYSTEME ----------------
  295. #endif
  296. //Weapon------------------------------------------------------------------------
  297. /*#define IsNotWeaponNoAmmo(%0) (%0!=0 && %0!=1 && %0!=10)
  298. #define IsNotWeaponVise(%0,%1) (%0>1 && %0!=10 && %0!=6 && %0!=9 && %0!=11 && %0!=12 && %1!=35 && %1!=36 %1!=43)*/
  299. stock IsNotWeaponNoAmmo(WeaponID)
  300. {
  301.     new slot=GetWeaponSlot(WeaponID);
  302.     if(slot!=0 && slot!=1 && slot!=10)return 1;
  303.     return 0;
  304. }
  305. stock IsNotWeaponVise(WeaponID)
  306. {
  307.     new slot=GetWeaponSlot(WeaponID);
  308.     if(slot>1 && slot!=10 && slot!=6 && slot!=9 &&slot!=11 && slot!=12 && slot!=35 && slot!=36 && slot!=43) return 1;
  309.     return 0;
  310. }
  311. stock IsGiveVehicleWeapon(WeaponID)
  312. {
  313.     if(WeaponID==25 || WeaponID==46 || WeaponID==2) return 1;
  314.     return 0;
  315. }
  316. #define IsValidWeapon(%0) (%0>=1 && %0<=18 || %0>=21 && %0<=46)
  317. stock GetWeaponSlot(weaponid)
  318. {
  319.     new slot;
  320.     switch(weaponid)
  321.     {
  322.         case 0,1: slot = 0;
  323.         case 2 .. 9: slot = 1;
  324.         case 10 .. 15: slot = 10;
  325.         case 16 .. 18, 39: slot = 8;
  326.         case 22 .. 24: slot =2;
  327.         case 25 .. 27: slot = 3;
  328.         case 28, 29, 32: slot = 4;
  329.         case 30, 31: slot = 5;
  330.         case 33, 34: slot = 6;
  331.         case 35 .. 38: slot = 7;
  332.         case 40: slot = 12;
  333.         case 41 .. 43: slot = 9;
  334.         case 44 .. 46: slot = 11;
  335.     }
  336.     return slot;
  337. }
  338. /*----------------------------------------------------------------------------*/
  339. forward ELC_AC_GivePlayerWeapon(playerid,Weapon,ammo);
  340. public ELC_AC_GivePlayerWeapon(playerid,Weapon,ammo)
  341. {
  342.     if(CheatPlayerInfo[playerid][aAntiWeaponHack]==1)CheatPlayerInfo[playerid][aAntiWeaponHack]=2;
  343.     new slot=GetWeaponSlot(Weapon);
  344.     if(IsValidWeapon(Weapon))
  345.     {
  346.         CheatPlayerInfo[playerid][aWeapon][slot]=Weapon;
  347.         CheatPlayerInfo[playerid][aAmmo][slot]=ammo+CheatPlayerInfo[playerid][aAmmo][slot];
  348.         GivePlayerWeapon(playerid,Weapon,ammo);
  349.     }
  350.     if(CheatPlayerInfo[playerid][aAntiWeaponHack]==2)CheatPlayerInfo[playerid][aAntiWeaponHack]=1;
  351.     return 1;
  352. }
  353. stock initial_GivePlayerWeapon(playerid,Weapon,ammo)
  354. {
  355.     return GivePlayerWeapon(playerid,Weapon,ammo);
  356. }
  357. #if defined INCLUDE_BASE_MODE
  358. //ALS_SYSTEME --------------------
  359. #if defined _ALS_GivePlayerWeapon
  360.     #undef GivePlayerWeapon
  361. #else
  362.     #define _ALS_GivePlayerWeapon
  363. #endif
  364. #define GivePlayerWeapon ELC_AC_GivePlayerWeapon
  365. //ALS_OFF_SYSTEME ----------------
  366. #endif
  367. /*----------------------------------------------------------------------------*/
  368. forward ELC_AC_SetPlayerAmmo(playerid,weaponslot,ammo);
  369. public ELC_AC_SetPlayerAmmo(playerid,weaponslot,ammo)
  370. {
  371.     if(CheatPlayerInfo[playerid][aAntiWeaponHack]==1)CheatPlayerInfo[playerid][aAntiWeaponHack]=2;
  372.      if(weaponslot>0 && 12>weaponslot)
  373.      {
  374.         CheatPlayerInfo[playerid][aAmmo][weaponslot]=ammo;
  375.         SetPlayerAmmo(playerid,weaponslot,ammo);
  376.     }
  377.     if(CheatPlayerInfo[playerid][aAntiWeaponHack]==2)CheatPlayerInfo[playerid][aAntiWeaponHack]=1;
  378.     return 1;
  379. }
  380. stock initial_SetPlayerAmmo(playerid,weaponslot,ammo)
  381. {
  382.     return SetPlayerAmmo(playerid,weaponslot,ammo);
  383. }
  384. #if defined INCLUDE_BASE_MODE
  385. //ALS_SYSTEME --------------------
  386. #if defined _ALS_SetPlayerAmmo
  387.     #undef SetPlayerAmmo
  388. #else
  389.     #define _ALS_SetPlayerAmmo
  390. #endif
  391. #define SetPlayerAmmo ELC_AC_SetPlayerAmmo
  392. //ALS_OFF_SYSTEME ----------------
  393. #endif
  394. /*----------------------------------------------------------------------------*/
  395. forward ELC_AC_ResetPlayerWeapons(playerid);
  396. public ELC_AC_ResetPlayerWeapons(playerid)
  397. {
  398.     if(CheatPlayerInfo[playerid][aAntiWeaponHack]==1)CheatPlayerInfo[playerid][aAntiWeaponHack]=2;
  399.     for(new i = 0; i <12; i++)
  400.     {
  401.     CheatPlayerInfo[playerid][aWeapon][i]=0;
  402.     CheatPlayerInfo[playerid][aAmmo][i]=0;
  403.     }
  404.     ResetPlayerWeapons(playerid);
  405.     if(CheatPlayerInfo[playerid][aAntiWeaponHack]==2)CheatPlayerInfo[playerid][aAntiWeaponHack]=1;
  406.     return 1;
  407. }
  408. stock initial_ResetPlayerWeapons(playerid)
  409. {
  410.     return ResetPlayerWeapons(playerid);
  411. }
  412. #if defined INCLUDE_BASE_MODE
  413. //ALS_SYSTEME --------------------
  414. #if defined _ALS_ResetPlayerWeapons
  415.     #undef ResetPlayerWeapons
  416. #else
  417.     #define _ALS_ResetPlayerWeapons
  418. #endif
  419. #define ResetPlayerWeapons ELC_AC_ResetPlayerWeapons
  420. //ALS_OFF_SYSTEME ----------------
  421. #endif
  422. /*----------------------------------------------------------------------------*/
  423. forward ELC_AC_SetPlayerHealth(playerid,Float:health);
  424. public ELC_AC_SetPlayerHealth(playerid,Float:health)
  425. {
  426.     if(CheatPlayerInfo[playerid][aAntiHealthHack]==1)CheatPlayerInfo[playerid][aAntiHealthHack]=2;
  427.     if(health>MAX_HEALTH)
  428.     {
  429.         CheatPlayerInfo[playerid][aHealth]=MAX_HEALTH;
  430.         SetPlayerHealth(playerid,MAX_HEALTH);
  431.     }
  432.     else
  433.     {
  434.         CheatPlayerInfo[playerid][aHealth]=health;
  435.         SetPlayerHealth(playerid,health);
  436.     }
  437.     if(CheatPlayerInfo[playerid][aAntiHealthHack]==2)CheatPlayerInfo[playerid][aAntiHealthHack]=1;
  438.     return 1;
  439. }
  440. stock initial_SetPlayerHealth(playerid,Float:health)
  441. {
  442.     return SetPlayerHealth(playerid,health);
  443. }
  444. #if defined INCLUDE_BASE_MODE
  445. //ALS_SYSTEME --------------------
  446. #if defined _ALS_GivePlayerWeapon
  447.     #undef GivePlayerWeapon
  448. #else
  449.     #define _ALS_GivePlayerWeapon
  450. #endif
  451. #define GivePlayerWeapon ELC_AC_GivePlayerWeapon
  452. //ALS_OFF_SYSTEME ----------------
  453. #endif
  454. /*----------------------------------------------------------------------------*/
  455. forward ELC_AC_SetPlayerArmour(playerid,Float:armour);
  456. public ELC_AC_SetPlayerArmour(playerid,Float:armour)
  457. {
  458.     if(CheatPlayerInfo[playerid][aAntiArmourHack]==1)CheatPlayerInfo[playerid][aAntiArmourHack]=2;
  459.     if(armour>MAX_ARMOUR)
  460.     {
  461.         CheatPlayerInfo[playerid][aArmour]=MAX_ARMOUR;
  462.         SetPlayerHealth(playerid,MAX_ARMOUR);
  463.     }
  464.     else
  465.     {
  466.         CheatPlayerInfo[playerid][aArmour]=armour;
  467.         SetPlayerHealth(playerid,armour);
  468.     }
  469.     if(CheatPlayerInfo[playerid][aAntiArmourHack]==2)CheatPlayerInfo[playerid][aAntiArmourHack]=1;
  470.     return 1;
  471. }
  472. stock initial_SetPlayerArmour(playerid,Float:armour)
  473. {
  474.     return SetPlayerArmour(playerid,armour);
  475. }
  476. #if defined INCLUDE_BASE_MODE
  477. //ALS_SYSTEME --------------------
  478. #if defined _ALS_GivePlayerWeapon
  479.     #undef GivePlayerWeapon
  480. #else
  481.     #define _ALS_GivePlayerWeapon
  482. #endif
  483. #define GivePlayerWeapon ELC_AC_GivePlayerWeapon
  484. //ALS_OFF_SYSTEME ----------------
  485. #endif
  486. //Core--------------------------------------------------------------------------
  487. public OnPlayerCheckCheat(playerid)
  488. {
  489.  
  490.     if(CheatPlayerInfo[playerid][aAntiMoneyHack]==1)
  491.     {
  492.         new elc_getmoney=initial_GetPlayerMoney(playerid);
  493.         if(elc_getmoney!=CheatPlayerInfo[playerid][aMoney])
  494.         {
  495.             if (CheatPlayerInfo[playerid][aMoney] > elc_getmoney)
  496.             {
  497.         ELC_AC_OnPlayerBuy(playerid,CheatPlayerInfo[playerid][aMoney]-elc_getmoney);
  498.                 CheatPlayerInfo[playerid][aMoney]=elc_getmoney;
  499.             }
  500.             else
  501.             {
  502.                 initial_ResetPlayerMoney(playerid);
  503.                 initial_GivePlayerMoney(playerid, CheatPlayerInfo[playerid][aMoney]);
  504.                 CallRemoteFunction("OnPlayerCheat", "dd", playerid,1);
  505.             }
  506.         }
  507.     }
  508.     if(CheatPlayerInfo[playerid][aAntiSpeedHack]==1)
  509.     {
  510.         if((GetPlayerSurfingVehicleID(playerid)!=INVALID_VEHICLE_ID || GetPlayerState(playerid) == PLAYER_STATE_DRIVER) && (GetPlayerSpeedXY(playerid) > MAX_SPEED_VEHICLE)) CallRemoteFunction("OnPlayerCheat", "dd", playerid,5);
  511.     }
  512.     if(CheatPlayerInfo[playerid][aAntiTeleportHack]==1)
  513.     {
  514.         if(CheatPlayerInfo[playerid][aLoadPosition]<=0)//Cheat Teleport
  515.         {
  516.             if((GetPlayerSurfingVehicleID(playerid)!=INVALID_VEHICLE_ID || IsPlayerInAnyVehicle(playerid)) && (!IsPlayerInRangeOfPoint(playerid,XMAX_VEHICLE_DISTANCE_PER_SECOND,CheatPlayerInfo[playerid][aX],CheatPlayerInfo[playerid][aY],CheatPlayerInfo[playerid][aZ]))) CallRemoteFunction("OnPlayerCheat", "dd", playerid,6);
  517.             else if(!IsPlayerInRangeOfPoint(playerid,XMAX_PED_DISTANCE_PER_SECOND,CheatPlayerInfo[playerid][aX],CheatPlayerInfo[playerid][aY],CheatPlayerInfo[playerid][aZ])) CallRemoteFunction("OnPlayerCheat", "dd", playerid,6);
  518.         }
  519.         else CheatPlayerInfo[playerid][aLoadPosition]--;
  520.         GetPlayerPos(playerid,CheatPlayerInfo[playerid][aX],CheatPlayerInfo[playerid][aY],CheatPlayerInfo[playerid][aZ]);
  521.     }
  522.     if(CheatPlayerInfo[playerid][aAntiWeaponHack]==1)
  523.     {
  524.  
  525.         //ANTI BLOCK MUNITIONS
  526.         if(CheatPlayerInfo[playerid][aTickFire]!=0 && CheatPlayerInfo[playerid][aAntiAmmoBlockHack]==1)
  527.         {
  528.             if((GetTickCount()-CheatPlayerInfo[playerid][aTickFire]) >= TIRE_RATE)
  529.             {
  530.                 if(CheatPlayerInfo[playerid][aWeaponFire]==GetPlayerWeapon(playerid))
  531.                 {
  532.                     if(CheatPlayerInfo[playerid][aAmmoFire]==GetPlayerAmmo(playerid)) ELC_AC_StartCheckPlayerFaceWall(playerid);
  533.                     CheatPlayerInfo[playerid][aTickFire]=0;
  534.                     CheatPlayerInfo[playerid][aAmmoFire]=0;
  535.                     CheatPlayerInfo[playerid][aWeaponFire]=0;
  536.  
  537.                 }
  538.                 else
  539.                 {
  540.  
  541.                     new keys,ud,lr;
  542.                     GetPlayerKeys(playerid,keys,ud,lr);
  543.                     if(keys==4 && IsNotWeaponVise(GetPlayerWeapon(playerid)))
  544.                     {
  545.                         CheatPlayerInfo[playerid][aTickFire]=GetTickCount();
  546.                         CheatPlayerInfo[playerid][aAmmoFire]=GetPlayerAmmo(playerid);
  547.                         CheatPlayerInfo[playerid][aWeaponFire]=GetPlayerWeapon(playerid);
  548.                     }
  549.                     else if(keys==132 && IsNotWeaponNoAmmo(GetPlayerWeapon(playerid)) && (GetPlayerSpeedXY(playerid) < 1))
  550.                     {
  551.                         CheatPlayerInfo[playerid][aTickFire]=GetTickCount();
  552.                         CheatPlayerInfo[playerid][aAmmoFire]=GetPlayerAmmo(playerid);
  553.                         CheatPlayerInfo[playerid][aWeaponFire]=GetPlayerWeapon(playerid);
  554.                     }
  555.                     else
  556.                     {
  557.                         CheatPlayerInfo[playerid][aTickFire]=0;
  558.                         CheatPlayerInfo[playerid][aAmmoFire]=0;
  559.                         CheatPlayerInfo[playerid][aWeaponFire]=0;
  560.                     }
  561.                 }
  562.             }
  563.         }
  564.         new WA_VAR[3];
  565.         for(new i = 0; i <12; i++)
  566.         {
  567.             WA_VAR[0]=0; WA_VAR[1]=0;
  568.             GetPlayerWeaponData(playerid,i,WA_VAR[0],WA_VAR[1]);
  569.             if((WA_VAR[0]!=CheatPlayerInfo[playerid][aWeapon][i] && WA_VAR[0]!=0))
  570.             {
  571.                 //CHEAT WEAPON
  572.                 if(!IsGiveVehicleWeapon(WA_VAR[0])) CallRemoteFunction("OnPlayerCheat", "dd", playerid,2);
  573.                 WA_VAR[2]=1;
  574.             }
  575.             else if(((CheatPlayerInfo[playerid][aAmmo][i]-WA_VAR[1]) < 0) && IsNotWeaponNoAmmo(WA_VAR[0]) && WA_VAR[0]!=0)
  576.             {
  577.                 //CHEAT AMMO
  578.                 CallRemoteFunction("OnPlayerCheat", "dd", playerid,3);
  579.                 WA_VAR[2]=1;
  580.             }
  581.             else if(CheatPlayerInfo[playerid][aWeapon][i]!=0 && WA_VAR[0]==0)
  582.             {
  583.                 CheatPlayerInfo[playerid][aWeapon][i]=0;
  584.                 CheatPlayerInfo[playerid][aAmmo][i]=0;
  585.             }
  586.             else CheatPlayerInfo[playerid][aAmmo][i]=WA_VAR[1];
  587.         }
  588.         if(WA_VAR[2]==1)
  589.         {
  590.             WA_VAR[2]=GetPlayerWeapon(playerid);
  591.             new WA_SLOT=GetWeaponSlot(WA_VAR[2]);
  592.             if(CheatPlayerInfo[playerid][aWeapon][WA_SLOT]==0 && CheatPlayerInfo[playerid][aAmmo][WA_SLOT]==0)WA_VAR[2]=0;
  593.             initial_ResetPlayerWeapons(playerid);
  594.             for(new i = 0; i <12; i++)
  595.             {
  596.                 if(CheatPlayerInfo[playerid][aWeapon][i]!=0 && CheatPlayerInfo[playerid][aAmmo][i]!=0) initial_GivePlayerWeapon(playerid,CheatPlayerInfo[playerid][aWeapon][i],CheatPlayerInfo[playerid][aAmmo][i]);
  597.             }
  598.             SetPlayerArmedWeapon(playerid,WA_VAR[2]);
  599.         }
  600.     }
  601.     if(CheatPlayerInfo[playerid][aAntiHealthHack]==1)
  602.     {
  603.         new Float:elc_health;
  604.         GetPlayerHealth(playerid,elc_health);
  605.         if(elc_health!=CheatPlayerInfo[playerid][aHealth])
  606.         {
  607.             if(elc_health<=100 && CheatPlayerInfo[playerid][aHealth]==0) CheatPlayerInfo[playerid][aHealth]=elc_health;
  608.             else if(elc_health>CheatPlayerInfo[playerid][aHealth])
  609.             {
  610.                 new string[256];
  611.                 format(string, sizeof string, "HEALTH : %f,HEALTH DUE : %f",elc_health,CheatPlayerInfo[playerid][aHealth]);
  612.         SendClientMessage(playerid,0xFFFFFFFF,string);
  613.                 //Cheat Health
  614.                 initial_SetPlayerHealth(playerid,CheatPlayerInfo[playerid][aHealth]);
  615.                 CallRemoteFunction("OnPlayerCheat", "dd", playerid,7);
  616.             }
  617.             else CheatPlayerInfo[playerid][aHealth]=elc_health;
  618.         }
  619.     }
  620.     if(CheatPlayerInfo[playerid][aAntiArmourHack]==1)
  621.     {
  622.         new Float:elc_armour;
  623.         GetPlayerArmour(playerid,elc_armour);
  624.         if(elc_armour!=CheatPlayerInfo[playerid][aArmour])
  625.         {
  626.             if(elc_armour>CheatPlayerInfo[playerid][aArmour])
  627.             {
  628.                 //Cheat Armour
  629.                 initial_SetPlayerArmour(playerid,CheatPlayerInfo[playerid][aArmour]);
  630.                 CallRemoteFunction("OnPlayerCheat", "dd", playerid,8);
  631.             }
  632.             else CheatPlayerInfo[playerid][aArmour]=elc_armour;
  633.         }
  634.     }
  635.     return 1;
  636. }
  637. /*----------------------------------------------------------------------------*/
  638. stock ELC_AC_StartCheckPlayerFaceWall(playerid)
  639. {
  640.     if(CheatPlayerInfo[playerid][aAntiAmmoBlockHack]==1)CheatPlayerInfo[playerid][aAntiAmmoBlockHack]=2;
  641.     new Float:x,Float:y,Float:z,Float:a,Float:lx,Float:ly,Float:lhealth;
  642.     GetPlayerPos(playerid, x, y ,z);
  643.     GetPlayerFacingAngle(playerid, a);
  644.     GetPlayerHealth(playerid,lhealth);
  645.     lx = (0.5 * floatsin(-a, degrees));
  646.     ly = (0.5 * floatcos(-a, degrees));
  647.     SetPlayerVelocity(playerid,lx,ly,0.0);
  648.     SetTimerEx("OnPlayerCheckFaceWall",500,0,"iffffff",playerid,x+lx,y+ly,z,x,y,lhealth);
  649.     return 0;
  650. }
  651. /*----------------------------------------------------------------------------*/
  652. public OnPlayerCheckFaceWall(playerid,Float:wall_x,Float:wall_y,Float:wall_z,Float:nwall_x,Float:nwall_y,Float:wall_he)
  653. {
  654.     new Float:x,Float:y,Float:z;
  655.     GetPlayerPos(playerid, x, y ,z);
  656.     if(IsPlayerInRangeOfPoint(playerid,0.25,wall_x,wall_y,z))
  657.     {
  658.         //Cheat Block Ammo
  659.         CallRemoteFunction("OnPlayerCheat", "dd", playerid,4);
  660.         initial_ResetPlayerWeapons(playerid);
  661.     }
  662.     SetPlayerHealth(playerid,wall_he);
  663.     initial_SetPlayerPos(playerid, nwall_x,nwall_y,wall_z);
  664.     if(CheatPlayerInfo[playerid][aAntiAmmoBlockHack]==2)CheatPlayerInfo[playerid][aAntiAmmoBlockHack]=1;
  665.     return 1;
  666. }
  667. /*----------------------------------------------------------------------------*/
  668. public ELC_AC_OnPlayerBuy(playerid,buyprice)
  669. {
  670.     if(buyprice==1)
  671.     {
  672.         new Float:elc_health;
  673.         GetPlayerHealth(playerid,elc_health);
  674.         if(elc_health<=CheatPlayerInfo[playerid][aHealth]+35) CheatPlayerInfo[playerid][aGainHealth]=35;//Buy Soda
  675.     }
  676.     return 1;
  677. }
  678. /*----------------------------------------------------------------------------*/
  679. public OnPlayerUpdate(playerid)
  680. {
  681.     new elc_getmoney=initial_GetPlayerMoney(playerid);
  682.     new Float:elc_health; GetPlayerHealth(playerid,elc_health);
  683.     if (CheatPlayerInfo[playerid][aMoney] > elc_getmoney)
  684.     {
  685.         ELC_AC_OnPlayerBuy(playerid,CheatPlayerInfo[playerid][aMoney]-elc_getmoney);
  686.         CheatPlayerInfo[playerid][aMoney]+=elc_getmoney-CheatPlayerInfo[playerid][aMoney];
  687.     }
  688.     if(elc_health!=CheatPlayerInfo[playerid][aHealth])
  689.     {
  690.         if(CheatPlayerInfo[playerid][aGainHealth]+CheatPlayerInfo[playerid][aHealth]>=elc_health && elc_health<=MAX_HEALTH)
  691.         {
  692.         CheatPlayerInfo[playerid][aGainHealth]=0;
  693.         CheatPlayerInfo[playerid][aHealth]=elc_health;
  694.         }
  695.     }
  696.     #if defined INCLUDE_BASE_MODE
  697.     return CallLocalFunction("ELC_AC_OnPlayerUpdate", "i",playerid);
  698.     #else
  699.     return 1;
  700.     #endif
  701. }
  702. /*----------------------------------------------------------------------------*/
  703. #if defined INCLUDE_BASE_MODE
  704. //ALS_SYSTEME --------------------
  705. #if defined _ALS_OnPlayerUpdate
  706.     #undef OnPlayerUpdate
  707. #else
  708.     #define _ALS_OnPlayerUpdate
  709. #endif
  710. #define OnPlayerUpdate ELC_AC_OnPlayerUpdate
  711. forward ELC_AC_OnPlayerUpdate(playerid);
  712. #endif
  713. //ALS_OFF_SYSTEME ----------------
  714. /*----------------------------------------------------------------------------*/
  715. #if defined INCLUDE_BASE_MODE
  716. public OnGameModeInit()
  717. #else
  718. public OnFilterScriptInit()
  719. #endif
  720. {
  721.     #if defined NO_TICK_COUNT
  722.     CheatServerInfo[TimerTick]=SetTimer("TimeUpdate", TIME_GRANULITY, true);
  723.     #endif
  724.     #if defined INCLUDE_BASE_MODE
  725.     return CallLocalFunction("ELC_AC_OnGameModeInit", "");
  726.     #else
  727.     return 1;
  728.     #endif
  729. }
  730. /*----------------------------------------------------------------------------*/
  731. #if defined INCLUDE_BASE_MODE
  732. //ALS_SYSTEME --------------------
  733. #if defined _ALS_OnGameModeInit
  734.     #undef OnGameModeInit
  735. #else
  736.     #define _ALS_OnGameModeInit
  737. #endif
  738. #define OnGameModeInit ELC_AC_OnGameModeInit
  739. forward ELC_AC_OnGameModeInit();
  740. #endif
  741. //ALS_OFF_SYSTEME ----------------
  742. /*----------------------------------------------------------------------------*/
  743. #if defined INCLUDE_BASE_MODE
  744. public OnGameModeExit()
  745. #else
  746. public OnFilterScriptExit()
  747. #endif
  748. {
  749.     #if defined NO_TICK_COUNT
  750.     KillTimer(CheatServerInfo[TimerTick]);
  751.     #endif
  752.     #if defined INCLUDE_BASE_MODE
  753.     return CallLocalFunction("ELC_AC_OnGameModeExit", "");
  754.     #else
  755.     return 1;
  756.     #endif
  757. }
  758. /*----------------------------------------------------------------------------*/
  759. #if defined INCLUDE_BASE_MODE
  760. //ALS_SYSTEME --------------------
  761. #if defined _ALS_OnGameModeExit
  762.     #undef OnGameModeExit
  763. #else
  764.     #define _ALS_OnGameModeExit
  765. #endif
  766. #define OnGameModeExit ELC_AC_OnGameModeExit
  767. forward ELC_AC_OnGameModeExit();
  768. #endif
  769. //ALS_OFF_SYSTEME ----------------
  770. /*----------------------------------------------------------------------------*/
  771. public OnPlayerConnect(playerid)
  772. {
  773.     if (!IsPlayerNPC(playerid))
  774.     {
  775.         CheatPlayerInfo[playerid][aTickFire]=0;
  776.         CheatPlayerInfo[playerid][aAmmoFire]=0;
  777.         CheatPlayerInfo[playerid][aWeaponFire]=0;
  778.         for(new i = 0; i <12; i++)
  779.         {
  780.             CheatPlayerInfo[playerid][aWeapon][i]=0;
  781.             CheatPlayerInfo[playerid][aAmmo][i]=0;
  782.         }
  783.         CheatPlayerInfo[playerid][aLoadPosition]=0;
  784.         CheatPlayerInfo[playerid][aMoney] = 0;
  785.         CheatPlayerInfo[playerid][aArmour]=100;
  786.         CheatPlayerInfo[playerid][aHealth]=100;
  787.         CheatPlayerInfo[playerid][aGainHealth]=0;
  788.         CheatPlayerInfo[playerid][aTimer]=SetTimerEx("OnPlayerCheckCheat", TIMER_CHEAT_RATE, 1, "i", playerid);
  789.         CheatPlayerInfo[playerid][aX] = 0; CheatPlayerInfo[playerid][aY] = 0; CheatPlayerInfo[playerid][aZ] = 0;
  790.         CheatPlayerInfo[playerid][aAntiTeleportHack]=0;
  791.         CheatPlayerInfo[playerid][aAntiWeaponHack]=ANTI_WEAPON_&_AMMO_HACK;
  792.         CheatPlayerInfo[playerid][aAntiAmmoBlockHack]=ANTI_AMMO_BLOCK_HACK;
  793.         CheatPlayerInfo[playerid][aAntiMoneyHack]=ANTI_MONEY_HACK;
  794.         CheatPlayerInfo[playerid][aAntiSpeedHack]=0;
  795.         CheatPlayerInfo[playerid][aAntiArmourHack]=ANTI_ARMOUR_HACK;
  796.         CheatPlayerInfo[playerid][aAntiHealthHack]=ANTI_HEALTH_HACK;
  797.         SendClientMessage(playerid,0xBD0000FF,"[ANTI-CHEAT]Ce serveur est protégé par ELC_AC(By Eloctro)");
  798.     }
  799.     #if defined INCLUDE_BASE_MODE
  800.     return CallLocalFunction("ELC_AC_OnPlayerConnect", "d", playerid);
  801.     #else
  802.     return 1;
  803.     #endif
  804. }
  805. /*----------------------------------------------------------------------------*/
  806. #if defined INCLUDE_BASE_MODE
  807. //ALS_SYSTEME --------------------
  808. #if defined _ALS_OnPlayerConnect
  809.     #undef OnPlayerConnect
  810. #else
  811.     #define _ALS_OnPlayerConnect
  812. #endif
  813. #define OnPlayerConnect ELC_AC_OnPlayerConnect
  814. forward ELC_AC_OnPlayerConnect(playerid);
  815. #endif
  816. //ALS_OFF_SYSTEME ----------------
  817. /*----------------------------------------------------------------------------*/
  818. public OnPlayerSpawn(playerid)
  819. {
  820.     if (!IsPlayerNPC(playerid) && CheatPlayerInfo[playerid][aAntiSpeedHack]==2)
  821.     {
  822.         GetPlayerPos(playerid,CheatPlayerInfo[playerid][aX],CheatPlayerInfo[playerid][aY],CheatPlayerInfo[playerid][aZ]);
  823.         CheatPlayerInfo[playerid][aLoadPosition]=2;
  824.         CheatPlayerInfo[playerid][aAntiTeleportHack]=ANTI_TELEPORT/AIBREAK_HACK;
  825.         CheatPlayerInfo[playerid][aAntiSpeedHack]=ANTI_SPEED_HACK;
  826.         CheatPlayerInfo[playerid][aHealth]=100;
  827.         CheatPlayerInfo[playerid][aArmour]=100;
  828.     }
  829.     #if defined INCLUDE_BASE_MODE
  830.     return CallLocalFunction("ELC_AC_OnPlayerSpawn", "d", playerid);
  831.     #else
  832.     return 1;
  833.     #endif
  834. }
  835. /*----------------------------------------------------------------------------*/
  836. #if defined INCLUDE_BASE_MODE
  837. //ALS_SYSTEME --------------------
  838. #if defined _ALS_OnPlayerSpawn
  839.     #undef OnPlayerSpawn
  840. #else
  841.     #define _ALS_OnPlayerSpawn
  842. #endif
  843. #define OnPlayerSpawn ELC_AC_OnPlayerSpawn
  844. forward ELC_AC_OnPlayerSpawn(playerid);
  845. #endif
  846. //ALS_OFF_SYSTEME ----------------
  847. /*----------------------------------------------------------------------------*/
  848. public OnPlayerDeath(playerid, killerid, reason)
  849. {
  850.     if (!IsPlayerNPC(playerid))
  851.     {
  852.         CheatPlayerInfo[playerid][aAntiTeleportHack]=0;
  853.         CheatPlayerInfo[playerid][aAntiSpeedHack]=0;
  854.     }
  855.     #if defined INCLUDE_BASE_MODE
  856.     return CallLocalFunction("ELC_AC_OnPlayerDeath", "ddd", playerid, killerid, reason);
  857.     #else
  858.     return 1;
  859.     #endif
  860. }
  861. /*----------------------------------------------------------------------------*/
  862. #if defined INCLUDE_BASE_MODE
  863. //ALS_SYSTEME --------------------
  864. #if defined _ALS_OnPlayerDeath
  865.     #undef OnPlayerDeath
  866. #else
  867.     #define _ALS_OnPlayerDeath
  868. #endif
  869. #define OnPlayerDeath ELC_AC_OnPlayerDeath
  870. forward ELC_AC_OnPlayerDeath(playerid, killerid, reason);
  871. #endif
  872. //ALS_OFF_SYSTEME ----------------
  873. /*----------------------------------------------------------------------------*/
  874. public OnPlayerDisconnect(playerid, reason)
  875. {
  876.     CheatPlayerInfo[playerid][aAntiTeleportHack]=0;
  877.     CheatPlayerInfo[playerid][aAntiWeaponHack]=0;
  878.     CheatPlayerInfo[playerid][aAntiAmmoBlockHack]=0;
  879.     CheatPlayerInfo[playerid][aAntiMoneyHack]=0;
  880.     CheatPlayerInfo[playerid][aAntiSpeedHack]=0;
  881.     CheatPlayerInfo[playerid][aAntiArmourHack]=0;
  882.     CheatPlayerInfo[playerid][aAntiHealthHack]=0;
  883.     if (!IsPlayerNPC(playerid))
  884.     {
  885.         KillTimer(CheatPlayerInfo[playerid][aTimer]);
  886.         CheatPlayerInfo[playerid][aTickFire]=0;
  887.         CheatPlayerInfo[playerid][aAmmoFire]=0;
  888.         CheatPlayerInfo[playerid][aWeaponFire]=0;
  889.     }
  890.     CheatPlayerInfo[playerid][aLoadPosition]=0;
  891.     CheatPlayerInfo[playerid][aX] = 0; CheatPlayerInfo[playerid][aY] = 0; CheatPlayerInfo[playerid][aZ] = 0;
  892.     CheatPlayerInfo[playerid][aArmour]=0;
  893.     CheatPlayerInfo[playerid][aHealth]=0;
  894.     CheatPlayerInfo[playerid][aGainHealth]=0;
  895.     #if defined INCLUDE_BASE_MODE
  896.     return CallLocalFunction("ELC_AC_OnPlayerDisconnect", "dd", playerid, reason);
  897.     #else
  898.     return 1;
  899.     #endif
  900. }
  901. /*----------------------------------------------------------------------------*/
  902. #if defined INCLUDE_BASE_MODE
  903. //ALS_SYSTEME --------------------
  904. #if defined _ALS_OnPlayerDisconnect
  905.     #undef OnPlayerDisconnect
  906. #else
  907.     #define _ALS_OnPlayerDisconnect
  908. #endif
  909. #define OnPlayerDisconnect ELC_AC_OnPlayerDisconnect
  910. forward ELC_AC_OnPlayerDisconnect(playerid, reason);
  911. #endif
  912. //ALS_OFF_SYSTEME ----------------
  913. /*----------------------------------------------------------------------------*/
  914. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  915. {
  916.     if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
  917.     {
  918.         if(CheatPlayerInfo[playerid][aAntiWeaponHack]==1 && CheatPlayerInfo[playerid][aAntiAmmoBlockHack]==1)
  919.         {
  920.             if(newkeys==4)
  921.             {
  922.                 new Float:XPOS[3]; GetPlayerPos(playerid,XPOS[0],XPOS[1],XPOS[2]);
  923.                 if(CheatPlayerInfo[playerid][aTickFire]==0 && IsNotWeaponVise(GetPlayerWeapon(playerid)) && CheatPlayerInfo[playerid][aZ]==XPOS[2])
  924.                 {
  925.                     CheatPlayerInfo[playerid][aTickFire]=GetTickCount();
  926.                     CheatPlayerInfo[playerid][aAmmoFire]=GetPlayerAmmo(playerid);
  927.                     CheatPlayerInfo[playerid][aWeaponFire]=GetPlayerWeapon(playerid);
  928.                 }
  929.             }
  930.             else if(newkeys==132)
  931.             {
  932.                 if(CheatPlayerInfo[playerid][aTickFire]==0 && IsNotWeaponNoAmmo(GetPlayerWeapon(playerid)) && (GetPlayerSpeedXY(playerid) < 1))
  933.                 {
  934.                     CheatPlayerInfo[playerid][aTickFire]=GetTickCount();
  935.                     CheatPlayerInfo[playerid][aAmmoFire]=GetPlayerAmmo(playerid);
  936.                     CheatPlayerInfo[playerid][aWeaponFire]=GetPlayerWeapon(playerid);
  937.                 }
  938.             }
  939.             else if(oldkeys==4&&newkeys!=132 || oldkeys==132&&newkeys!=4)
  940.             {
  941.         if(CheatPlayerInfo[playerid][aTickFire]!=0)
  942.         {
  943.             if((GetTickCount()-CheatPlayerInfo[playerid][aTickFire]) >= TIRE_RATE)
  944.                     {
  945.                         new Float:XPOS[3];
  946.                     GetPlayerPos(playerid,XPOS[0],XPOS[1],XPOS[2]);
  947.                         if(CheatPlayerInfo[playerid][aZ]==XPOS[2] && CheatPlayerInfo[playerid][aWeaponFire]==GetPlayerWeapon(playerid)&& CheatPlayerInfo[playerid][aAmmoFire]==GetPlayerAmmo(playerid)) ELC_AC_StartCheckPlayerFaceWall(playerid);
  948.                     }
  949.                     CheatPlayerInfo[playerid][aTickFire]=0;
  950.                     CheatPlayerInfo[playerid][aAmmoFire]=0;
  951.                     CheatPlayerInfo[playerid][aWeaponFire]=0;
  952.         }
  953.             }
  954.         }
  955.     }
  956.     #if defined INCLUDE_BASE_MODE
  957.     return CallLocalFunction("ELC_AC_OnPlayerKeyStateChange", "ddd",playerid, newkeys, oldkeys);
  958.     #else
  959.     return 1;
  960.     #endif
  961. }
  962. /*----------------------------------------------------------------------------*/
  963. #if defined INCLUDE_BASE_MODE
  964. //ALS_SYSTEME --------------------
  965. #if defined _ALS_OnPlayerKeyStateChange
  966.     #undef OnPlayerKeyStateChange
  967. #else
  968.     #define _ALS_OnPlayerKeyStateChange
  969. #endif
  970. #define OnPlayerKeyStateChange ELC_AC_OnPlayerKeyStateChange
  971. forward ELC_AC_OnPlayerKeyStateChange(playerid, newkeys, oldkeys);
  972. #endif
  973. //ALS_OFF_SYSTEME ----------------
  974. /*----------------------------------------------------------------------------*/
  975. public ELC_AC_EnablePlayerCheatID(playerid,cheatid,enable)
  976. {
  977.     if(cheatid==1)//Money
  978.     {
  979.         if(enable==1)
  980.         {
  981.             CheatPlayerInfo[playerid][aMoney]=initial_GetPlayerMoney(playerid);
  982.             CheatPlayerInfo[playerid][aAntiMoneyHack]=1;
  983.         }
  984.         else CheatPlayerInfo[playerid][aAntiMoneyHack]=0;
  985.     }
  986.     else if(cheatid==2)//Weapon
  987.     {
  988.         if(enable==1)
  989.         {
  990.             for(new i = 0; i <12; i++)
  991.             {
  992.                 GetPlayerWeaponData(playerid,i,CheatPlayerInfo[playerid][aWeapon][i],CheatPlayerInfo[playerid][aAmmo][i]);
  993.             }
  994.             CheatPlayerInfo[playerid][aAntiWeaponHack]=1;
  995.         }
  996.         else CheatPlayerInfo[playerid][aAntiWeaponHack]=0;
  997.     }
  998.     else if(cheatid==3)//AirBreak/SpeedHack
  999.     {
  1000.         if(enable==1) CheatPlayerInfo[playerid][aAntiSpeedHack]=1;
  1001.         else CheatPlayerInfo[playerid][aAntiSpeedHack]=0;
  1002.     }
  1003.     else if(cheatid==4)//Anti-Teleport
  1004.     {
  1005.         if(enable==1)
  1006.         {
  1007.             GetPlayerPos(playerid,CheatPlayerInfo[playerid][aX],CheatPlayerInfo[playerid][aY],CheatPlayerInfo[playerid][aZ]);
  1008.             CheatPlayerInfo[playerid][aAntiTeleportHack]=1;
  1009.         }
  1010.         else CheatPlayerInfo[playerid][aAntiTeleportHack]=0;
  1011.     }
  1012.     else if(cheatid==5)//Anti-Ammo_Block
  1013.     {
  1014.         if(enable==1)
  1015.         {
  1016.             CheatPlayerInfo[playerid][aTickFire]=0;
  1017.             CheatPlayerInfo[playerid][aAmmoFire]=0;
  1018.             CheatPlayerInfo[playerid][aWeaponFire]=0;
  1019.             CheatPlayerInfo[playerid][aAntiAmmoBlockHack]=1;
  1020.         }
  1021.         else CheatPlayerInfo[playerid][aAntiAmmoBlockHack]=0;
  1022.     }
  1023.  
  1024.     return 1;
  1025. }
  1026. /*----------------------------------------------------------------------------*/
  1027. #define EnablePlayerCheatID ELC_AC_EnablePlayerCheatID
  1028. /*----------------------------------------------------------------------------*/
  1029.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement