daily pastebin goal
17%
SHARE
TWEET

ELC_AC 4.4(final)

a guest Mar 2nd, 2014 3,845 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  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.                                                   Anti-VEHICLE TELEPORT HACK
  40.                                                     Anti-Crasher
  41.  
  42.                                     BUG :
  43.                                                   Nothing
  44.  
  45.                                   VERSION :
  46.                                                             V4.4
  47.  
  48.                                                              COMPATIBLE :
  49.                                                              SA-MP 0.3z
  50.  
  51.                                   CREDITS :
  52.                               ELOCTRO (SCRIPT)
  53.                        SIM (GetTickCount for linux)
  54.                             Donya(Anti-Crasher)
  55.                        Mineralo(OnPlayerCheat Update)
  56.  
  57.                                           ELC_AC THE BEST PROTECTION
  58.                                               !
  59.  
  60.                                     \**/
  61. /*/- Anti-Cheat By Eloctro -----------------------------------------------------
  62.  
  63.                             ELC PRODUCTION(FRANCE)
  64.  
  65.                           http://elcprod.bb-fr.com/
  66. */
  67. #if defined _elc_ac_included
  68.         #endinput
  69. #endif
  70. #define _elc_ac_included
  71.  
  72. #if defined _elc_ac_compill
  73. #error You must add ELC_CONNECTOR or ELC_BASE but not add both
  74. #endif
  75. #define _elc_ac_compill
  76. /*----------------------------------------------------------------------------*/
  77. #include <a_samp>
  78. /*----------------------------------------------------------------------------*/
  79. //Anti-Cheat Statut defaut :
  80. #define ANTI_WEAPON_&_AMMO_HACK     1
  81. #define ANTI_AMMO_BLOCK_HACK        1
  82. #define ANTI_MONEY_HACK             1
  83. #define ANTI_SPEED_HACK             1
  84. #define ANTI_TELEPORT/AIBREAK_HACK  1
  85. #define ANTI_HEALTH_HACK            0//Not fix
  86. #define ANTI_ARMOUR_HACK            0//Not fix
  87. #define ANTI_VEHICLE-TELEPORT_HACK  2//1->Normal Protection,2->Hight Proection
  88. //Configuration :
  89. #define MAX_SPEED_VEHICLE                   380.0 // SPEED VEHICLE MAX(380=default)
  90. #define MAX_VEHICLE_DISTANCE_PER_SECOND     180   // DISTANCE PARCOUR MAX VEHICLE PER SECOND(180=default)
  91. #define MAX_PED_DISTANCE_PER_SECOND         100   // DISTANCE PARCOUR MAX AT PED PER SECOND(100=default)
  92. #define SPRINT_SPEED                        30.0  // (30=DEFAULT)
  93. #define TIMER_CHEAT_RATE                    3500  // (3500=DEFAULT)
  94. #define TIME_GRANULITY                      50    // Granulity GetTickCount
  95. #define DELAY_LOAD_AFTER_SPAWN              5000
  96. #define MAX_DELAY_SEND_STATS                2000
  97. #define MAX_DELAY_WAIT_AFTER_SPAWN          3000
  98. #define MAX_VEHICLE_DISTANCE_UCM            10
  99. #define MAX_WEAPON_SHOT_FOR_CHECK           5
  100. //STATUS MODE :
  101. //#define NO_TICK_COUNT  //uncomment If GetTickCount() bug(linux?)
  102. #define INCLUDE_BASE_MODE //uncomment to pass in mod include
  103. #define MODE_DELAY_SEND_STATS //uncomment if the sending of stats is a bit slow(RECOMMANDED)
  104. #define DISABLE_MONEY_DEATHLOSE //uncomment if you disable the lose of 100$ after death
  105. //Calcul(DON'T TOUCH)----------------------------------------------------------
  106. #define XMAX_VEHICLE_DISTANCE_PER_SECOND MAX_VEHICLE_DISTANCE_PER_SECOND*(TIMER_CHEAT_RATE/1000)
  107. #define XMAX_PED_DISTANCE_PER_SECOND MAX_PED_DISTANCE_PER_SECOND*(TIMER_CHEAT_RATE/1000)
  108. #define SaveTime(%0,%1) %0=%1+MAX_DELAY_SEND_STATS
  109. #define IsPassTime(%0,%1,%2) (%1<%2&&CheatPlayerInfo[%0][elc_LastUpdate]!=0&&CheatPlayerInfo[%0][elc_LastUpdate]<%2)//Time Action ,Time Now
  110. #define IsPlayerCheatPos(%0) (((GetPlayerSurfingVehicleID(%0)!=INVALID_VEHICLE_ID || IsPlayerInAnyVehicle(%0)) && !IsPlayerInRangeOfPoint(%0,XMAX_VEHICLE_DISTANCE_PER_SECOND,CheatPlayerInfo[%0][elc_posx],CheatPlayerInfo[%0][elc_posy],CheatPlayerInfo[%0][elc_posz]))||!IsPlayerInRangeOfPoint(%0,XMAX_PED_DISTANCE_PER_SECOND,CheatPlayerInfo[%0][elc_posx],CheatPlayerInfo[%0][elc_posy],CheatPlayerInfo[%0][elc_posz]))
  111. #define LastPlayerUpdate(%0) (CheatPlayerInfo[%0][elc_LastUpdate]-GetTickCount())
  112.  
  113. #define IsPlayerCheatAllowTelPos(%0) (((GetPlayerSurfingVehicleID(%0)!=INVALID_VEHICLE_ID || IsPlayerInAnyVehicle(%0)) && !IsPlayerInRangeOfPoint(%0,XMAX_VEHICLE_DISTANCE_PER_SECOND,CheatPlayerInfo[%0][elc_AllowTelX],CheatPlayerInfo[%0][elc_AllowTelY],CheatPlayerInfo[%0][elc_AllowTelZ]))|| \
  114. !IsPlayerInRangeOfPoint(%0,XMAX_PED_DISTANCE_PER_SECOND,CheatPlayerInfo[%0][elc_AllowTelX],CheatPlayerInfo[%0][elc_AllowTelY],CheatPlayerInfo[%0][elc_AllowTelZ]))
  115.  
  116. #define IsPlayerUpdatePos(%0) !IsPlayerInRangeOfPoint(%0,0.5,CheatPlayerInfo[%0][elc_posx],CheatPlayerInfo[%0][elc_posy],CheatPlayerInfo[%0][elc_posz])
  117.  
  118. #define ELC_AC_IsCreatedVehicle(%0) (GetVehicleModel(%0)!=0)
  119. /*----------------------------------------------------------------------------*/
  120. enum aELCp
  121. {
  122.         elc_money,
  123.         elc_ammo[13],
  124.         elc_weapon[13],
  125.         elc_tickfire,
  126.         elc_ammoFire,
  127.         elc_weaponFire,
  128.         Float:elc_health,
  129.         Float:elc_armour,
  130.         elc_timer,
  131.         Float:elc_posx,
  132.         Float:elc_posy,
  133.         Float:elc_posz,
  134.         elc_interior,
  135.         elc_virtualworld,
  136.         Float:elc_AllowTelX,
  137.         Float:elc_AllowTelY,
  138.         Float:elc_AllowTelZ,
  139.         elc_AntiTeleportHack,
  140.         elc_AntiWeaponHack,
  141.         elc_AntiAmmoBlockHack,
  142.         elc_AntiMoneyHack,
  143.         elc_AntiSpeedHack,
  144.         elc_AntiHealthHack,
  145.         elc_AntiArmourHack,
  146.         elc_AntiVehicleTelportHack,
  147. #if defined MODE_DELAY_SEND_STATS
  148.         elc_GiveWeaponTime,
  149.         elc_GiveMoneyTime,
  150.         elc_GiveHealthTime,
  151.         elc_GiveArmourTime,
  152. #endif
  153.         elc_SetPositionTime,
  154.         elc_PlayerEnterTime,
  155.         elc_PlayerEnterVeh,
  156.         elc_PossibleVehicleHack,
  157.         elc_LastUpdate,
  158.         elc_TimeSpawn
  159. };
  160.  
  161. new CheatPlayerInfo[MAX_PLAYERS][aELCp];
  162. enum aELCv
  163. {
  164.         Float:elc_vHealth,
  165.         Float:elc_vX,
  166.         Float:elc_vY,
  167.         Float:elc_vZ,
  168.         Float:elc_vAngle,
  169.         elc_vSetPositionTime,
  170.         elc_vPossiblePlayerHack,
  171.         elc_vPossibleHackTime,
  172.         elc_vStatut
  173. };
  174. new CheatVehicleInfo[MAX_VEHICLES][aELCv];
  175. #if defined NO_TICK_COUNT
  176. enum aELCs
  177. {
  178.         elc_TickCount,
  179.         elc_TimerTick
  180. };
  181. new CheatServerInfo[aELCs];
  182. #endif
  183. /*----------------------------------------------------------------------------*/
  184. stock Float:elc_GetPlayerSpeedXY(playerid)
  185. {
  186. new Float:elc_SpeedX, Float:elc_SpeedY, Float:elc_SpeedZ;
  187. new Float:elc_Speed;
  188. if(IsPlayerInAnyVehicle(playerid)) GetVehicleVelocity(GetPlayerVehicleID(playerid), elc_SpeedX, elc_SpeedY, elc_SpeedZ);
  189. else GetPlayerVelocity(playerid, elc_SpeedX, elc_SpeedY, elc_SpeedZ);
  190. elc_Speed = floatsqroot(floatadd(floatpower(elc_SpeedX, 2.0), floatpower(elc_SpeedY, 2.0)));
  191. return floatmul(elc_Speed, 200.0);
  192. }
  193. /*----------------------------------------------------------------------------*/
  194. stock Float:elc_GetVehicleSpeedXY(vehicleid)
  195. {
  196. new Float:elc_SpeedX, Float:elc_SpeedY, Float:elc_SpeedZ;
  197. new Float:elc_Speed;
  198. GetVehicleVelocity(vehicleid, elc_SpeedX, elc_SpeedY, elc_SpeedZ);
  199. elc_Speed = floatsqroot(floatadd(floatpower(elc_SpeedX, 2.0), floatpower(elc_SpeedY, 2.0)));
  200. return floatmul(elc_Speed, 200.0);
  201. }
  202. /*----------------------------------------------------------------------------*/
  203. #if defined NO_TICK_COUNT
  204.         #define GetTickCount()                          (CheatServerInfo[TickCount])
  205.         forward TimeUpdate();
  206.         public TimeUpdate()
  207.         {
  208.                 CheatServerInfo[elc_TickCount] +=TIME_GRANULITY;
  209.                 return 1;
  210.         }
  211. #endif
  212. forward OnPlayerCheckCheat(playerid);
  213. forward OnPlayerCheat(playerid, cheatid, source[]);
  214. forward ELC_AC_EnablePlayerCheatID(playerid,cheatid,enable);
  215. forward RemovePlayerWeapon(playerid, weaponid);
  216. /*----------------------------------------------------------------------------*/
  217. forward ELC_AC_GivePlayerMoney(playerid, money);
  218. public ELC_AC_GivePlayerMoney(playerid, money)
  219. {
  220.     if(CheatPlayerInfo[playerid][elc_AntiMoneyHack]==1)CheatPlayerInfo[playerid][elc_AntiMoneyHack]=2;
  221.         CheatPlayerInfo[playerid][elc_money] += money;
  222.         GivePlayerMoney(playerid, money);
  223.         #if defined MODE_DELAY_SEND_STATS
  224.         SaveTime(CheatPlayerInfo[playerid][elc_GiveMoneyTime],GetTickCount());
  225.         #endif
  226.         if(CheatPlayerInfo[playerid][elc_AntiMoneyHack]==2)CheatPlayerInfo[playerid][elc_AntiMoneyHack]=1;
  227.         return 1;
  228. }
  229. stock initial_GivePlayerMoney(playerid, money)
  230. {
  231.         return GivePlayerMoney(playerid, money);
  232. }
  233. #if defined INCLUDE_BASE_MODE
  234. //ALS_SYSTEME --------------------
  235. #if defined _ALS_GivePlayerMoney
  236.     #undef GivePlayerMoney
  237. #else
  238.     #define _ALS_GivePlayerMoney
  239. #endif
  240. #define GivePlayerMoney ELC_AC_GivePlayerMoney
  241. #endif
  242. //ALS_OFF_SYSTEME ----------------
  243. /*----------------------------------------------------------------------------*/
  244. forward ELC_AC_ResetPlayerMoney(playerid);
  245. public ELC_AC_ResetPlayerMoney(playerid)
  246. {
  247.         if(CheatPlayerInfo[playerid][elc_AntiMoneyHack]==1)CheatPlayerInfo[playerid][elc_AntiMoneyHack]=2;
  248.         ResetPlayerMoney(playerid);
  249.         CheatPlayerInfo[playerid][elc_money] = 0;
  250.         #if defined MODE_DELAY_SEND_STATS
  251.         SaveTime(CheatPlayerInfo[playerid][elc_GiveMoneyTime],GetTickCount());
  252.         #endif
  253.         if(CheatPlayerInfo[playerid][elc_AntiMoneyHack]==2)CheatPlayerInfo[playerid][elc_AntiMoneyHack]=1;
  254.         return 1;
  255. }
  256. stock initial_ResetPlayerMoney(playerid)
  257. {
  258.         return ResetPlayerMoney(playerid);
  259. }
  260. #if defined INCLUDE_BASE_MODE
  261. //ALS_SYSTEME --------------------
  262. #if defined _ALS_ResetPlayerMoney
  263.     #undef ResetPlayerMoney
  264. #else
  265.     #define _ALS_ResetPlayerMoney
  266. #endif
  267. #define ResetPlayerMoney ELC_AC_ResetPlayerMoney
  268. #endif
  269. //ALS_OFF_SYSTEME ----------------
  270. /*----------------------------------------------------------------------------*/
  271. forward ELC_AC_GetPlayerMoney(playerid);
  272. public ELC_AC_GetPlayerMoney(playerid)
  273. {
  274.         new elc_gpm=GetPlayerMoney(playerid);
  275.         if(GetPlayerMoney(playerid)<CheatPlayerInfo[playerid][elc_money]) return elc_gpm;
  276.         return CheatPlayerInfo[playerid][elc_money];
  277. }
  278. stock initial_GetPlayerMoney(playerid)
  279. {
  280.         return GetPlayerMoney(playerid);
  281. }
  282. #if defined INCLUDE_BASE_MODE
  283. //ALS_SYSTEME --------------------
  284. #if defined _ALS_GetPlayerMoney
  285.     #undef GetPlayerMoney
  286. #else
  287.     #define _ALS_GetPlayerMoney
  288. #endif
  289. #define GetPlayerMoney ELC_AC_GetPlayerMoney
  290. #endif
  291. //ALS_OFF_SYSTEME ----------------
  292. /*----------------------------------------------------------------------------*/
  293. forward ELC_AC_SetPlayerPos(playerid, Float:ix, Float:iy, Float:iz);
  294. public ELC_AC_SetPlayerPos(playerid, Float:ix, Float:iy, Float:iz)
  295. {
  296.     if(CheatPlayerInfo[playerid][elc_AntiTeleportHack]==1)CheatPlayerInfo[playerid][elc_AntiTeleportHack]=2;
  297.     CheatPlayerInfo[playerid][elc_PlayerEnterTime]=0;
  298.         CheatPlayerInfo[playerid][elc_AllowTelX]=ix; CheatPlayerInfo[playerid][elc_AllowTelY]=iy; CheatPlayerInfo[playerid][elc_AllowTelZ]=iz;
  299.         SetPlayerPos(playerid, ix, iy, iz);
  300.     if(CheatPlayerInfo[playerid][elc_AntiTeleportHack]==2)CheatPlayerInfo[playerid][elc_AntiTeleportHack]=1;
  301.         return 1;
  302. }
  303. stock initial_SetPlayerPos(playerid, Float:ix, Float:iy, Float:iz)
  304. {
  305.         return SetPlayerPos(playerid, ix, iy, iz);
  306. }
  307. #if defined INCLUDE_BASE_MODE
  308. //ALS_SYSTEME --------------------
  309. #if defined _ALS_SetPlayerPos
  310.     #undef SetPlayerPos
  311. #else
  312.     #define _ALS_SetPlayerPos
  313. #endif
  314. #define SetPlayerPos ELC_AC_SetPlayerPos
  315. //ALS_OFF_SYSTEME ----------------
  316. #endif
  317. /*----------------------------------------------------------------------------*/
  318. forward ELC_AC_PutPlayerInVehicle(playerid,vehicleid, seatid);
  319. public ELC_AC_PutPlayerInVehicle(playerid,vehicleid, seatid)
  320. {
  321.     if(CheatPlayerInfo[playerid][elc_AntiTeleportHack]==1)CheatPlayerInfo[playerid][elc_AntiTeleportHack]=2;
  322.     CheatPlayerInfo[playerid][elc_PlayerEnterTime]=0;
  323.     CheatPlayerInfo[playerid][elc_PlayerEnterVeh]=vehicleid;
  324.     GetVehiclePos(vehicleid,CheatPlayerInfo[playerid][elc_AllowTelX],CheatPlayerInfo[playerid][elc_AllowTelY],CheatPlayerInfo[playerid][elc_AllowTelZ]);
  325.     GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  326.         SaveTime(CheatPlayerInfo[playerid][elc_SetPositionTime],GetTickCount());
  327.         PutPlayerInVehicle(playerid,vehicleid, seatid);
  328.         if(CheatPlayerInfo[playerid][elc_AntiTeleportHack]==2)CheatPlayerInfo[playerid][elc_AntiTeleportHack]=1;
  329.         return 1;
  330. }
  331. stock initial_PutPlayerInVehicle(playerid,vehicleid, seatid)
  332. {
  333.         return PutPlayerInVehicle(playerid,vehicleid, seatid);
  334. }
  335. #if defined INCLUDE_BASE_MODE
  336. //ALS_SYSTEME --------------------
  337. #if defined _ALS_PutPlayerInVehicle
  338.     #undef PutPlayerInVehicle
  339. #else
  340.     #define _ALS_PutPlayerInVehicle
  341. #endif
  342. #define PutPlayerInVehicle ELC_AC_PutPlayerInVehicle
  343. //ALS_OFF_SYSTEME ----------------
  344. #endif
  345. /*----------------------------------------------------------------------------*/
  346. forward ELC_AC_RemovePlayerFromVehicle(playerid);
  347. public ELC_AC_RemovePlayerFromVehicle(playerid)
  348. {
  349.     CheatPlayerInfo[playerid][elc_PlayerEnterTime]=0;
  350.         RemovePlayerFromVehicle(playerid);
  351.         return 1;
  352. }
  353. stock initial_RemovePlayerFromVehicle(playerid)
  354. {
  355.         return RemovePlayerFromVehicle(playerid);
  356. }
  357. #if defined INCLUDE_BASE_MODE
  358. //ALS_SYSTEME --------------------
  359. #if defined _ALS_RemovePlayerFromVehicle
  360.     #undef RemovePlayerFromVehicle
  361. #else
  362.     #define _ALS_RemovePlayerFromVehicle
  363. #endif
  364. #define RemovePlayerFromVehicle ELC_AC_RemovePlayerFromVehicle
  365. //ALS_OFF_SYSTEME ----------------
  366. #endif
  367. /*----------------------------------------------------------------------------*/
  368. forward ELC_AC_TogglePlayerSpectating(playerid, toggle);
  369. public ELC_AC_TogglePlayerSpectating(playerid, toggle)
  370. {
  371.         if(toggle==1)
  372.         {
  373.                 if(CheatPlayerInfo[playerid][elc_AntiSpeedHack]==1) CheatPlayerInfo[playerid][elc_AntiSpeedHack]=3;
  374.                 if(CheatPlayerInfo[playerid][elc_AntiTeleportHack]==1) CheatPlayerInfo[playerid][elc_AntiTeleportHack]=3;
  375.         }
  376.         else
  377.         {
  378.                 if(CheatPlayerInfo[playerid][elc_AntiSpeedHack]==3) CheatPlayerInfo[playerid][elc_AntiSpeedHack]=1;
  379.                 if(CheatPlayerInfo[playerid][elc_AntiTeleportHack]==3)CheatPlayerInfo[playerid][elc_AntiTeleportHack]=1;
  380.                 GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  381.                 SaveTime(CheatPlayerInfo[playerid][elc_SetPositionTime],GetTickCount());
  382.         }
  383.         return TogglePlayerSpectating(playerid, toggle);
  384. }
  385. stock initial_TogglePlayerSpectating(playerid, toggle)
  386. {
  387.         return TogglePlayerSpectating(playerid, toggle);
  388. }
  389. #if defined INCLUDE_BASE_MODE
  390. //ALS_SYSTEME --------------------
  391. #if defined _ALS_TogglePlayerSpectating
  392.     #undef TogglePlayerSpectating
  393. #else
  394.     #define _ALS_TogglePlayerSpectating
  395. #endif
  396. #define TogglePlayerSpectating ELC_AC_TogglePlayerSpectating
  397. //ALS_OFF_SYSTEME ----------------
  398. #endif
  399. //Weapon------------------------------------------------------------------------
  400. /*#define elc_IsNotWeaponNoAmmo(%0) (%0!=0 && %0!=1 && %0!=10)
  401. #define elc_IsNotWeaponVise(%0,%1) (%0>1 && %0!=10 && %0!=6 && %0!=9 && %0!=11 && %0!=12 && %1!=35 && %1!=36 %1!=43)*/
  402. stock elc_IsNotWeaponNoAmmo(WeaponID)
  403. {
  404.         new elc_slot=elc_GetWeaponSlot(WeaponID);
  405.         if(elc_slot!=0 && elc_slot!=1 && elc_slot!=10)return 1;
  406.         return 0;
  407. }
  408. stock elc_IsNotWeaponVise(WeaponID)
  409. {
  410.         new elc_slot=elc_GetWeaponSlot(WeaponID);
  411.         if(elc_slot>1 && elc_slot!=10 && elc_slot!=6 && elc_slot!=9 && elc_slot!=11 && elc_slot!=12 && elc_slot!=35 && elc_slot!=36 && elc_slot!=43) return 1;
  412.         return 0;
  413. }
  414. stock elc_IsGiveVehicleWeapon(WeaponID)
  415. {
  416.         if(WeaponID==25 || WeaponID==46 || WeaponID==2) return 1;
  417.         return 0;
  418. }
  419. #define IsValidWeapon(%0) (%0>=1 && %0<=18 || %0>=21 && %0<=46)
  420. stock elc_GetWeaponSlot(weaponid)
  421. {
  422.         new elc_slot=-1;
  423.         switch(weaponid)
  424.         {
  425.                 case 0,1: elc_slot = 0;
  426.                 case 2 .. 9: elc_slot = 1;
  427.                 case 10 .. 15: elc_slot = 10;
  428.                 case 16 .. 18, 39: elc_slot = 8;
  429.                 case 22 .. 24: elc_slot =2;
  430.                 case 25 .. 27: elc_slot = 3;
  431.                 case 28, 29, 32: elc_slot = 4;
  432.                 case 30, 31: elc_slot = 5;
  433.                 case 33, 34: elc_slot = 6;
  434.                 case 35 .. 38: elc_slot = 7;
  435.                 case 40: elc_slot = 12;
  436.                 case 41 .. 43: elc_slot = 9;
  437.                 case 44 .. 46: elc_slot = 11;
  438.         }
  439.         return elc_slot;
  440. }
  441. /*----------------------------------------------------------------------------*/
  442. forward ELC_AC_GivePlayerWeapon(playerid,Weapon,ammo);
  443. public ELC_AC_GivePlayerWeapon(playerid,Weapon,ammo)
  444. {
  445.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==1)CheatPlayerInfo[playerid][elc_AntiWeaponHack]=2;
  446.         new slot=elc_GetWeaponSlot(Weapon);
  447.         if(IsValidWeapon(Weapon) && slot!=-1)
  448.         {
  449.             CheatPlayerInfo[playerid][elc_tickfire]=0;
  450.                 CheatPlayerInfo[playerid][elc_weapon][slot] = Weapon;
  451.                 CheatPlayerInfo[playerid][elc_ammo][slot] += ammo;
  452.                 GivePlayerWeapon(playerid,Weapon,ammo);
  453.                 #if defined MODE_DELAY_SEND_STATS
  454.                 SaveTime(CheatPlayerInfo[playerid][elc_GiveWeaponTime],GetTickCount());
  455.                 #endif
  456.         }
  457.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==2)CheatPlayerInfo[playerid][elc_AntiWeaponHack]=1;
  458.     return 1;
  459. }
  460. stock initial_GivePlayerWeapon(playerid,Weapon,ammo)
  461. {
  462.         return GivePlayerWeapon(playerid,Weapon,ammo);
  463. }
  464. #if defined INCLUDE_BASE_MODE
  465. //ALS_SYSTEME --------------------
  466. #if defined _ALS_GivePlayerWeapon
  467.     #undef GivePlayerWeapon
  468. #else
  469.     #define _ALS_GivePlayerWeapon
  470. #endif
  471. #define GivePlayerWeapon ELC_AC_GivePlayerWeapon
  472. //ALS_OFF_SYSTEME ----------------
  473. #endif
  474. /*----------------------------------------------------------------------------*/
  475. forward ELC_AC_SetPlayerAmmo(playerid,weapon,ammo);
  476. public ELC_AC_SetPlayerAmmo(playerid,weapon,ammo)
  477. {
  478.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==1)CheatPlayerInfo[playerid][elc_AntiWeaponHack]=2;
  479.         new slot=elc_GetWeaponSlot(weapon);
  480.         if(weapon>0 && 47>weapon && slot!=-1)
  481.         {
  482.                 CheatPlayerInfo[playerid][elc_ammo][slot]=ammo;
  483.                 SetPlayerAmmo(playerid,weapon,ammo);
  484.                 #if defined MODE_DELAY_SEND_STATS
  485.                 SaveTime(CheatPlayerInfo[playerid][elc_GiveWeaponTime],GetTickCount());
  486.                 #endif
  487.         }
  488.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==2)CheatPlayerInfo[playerid][elc_AntiWeaponHack]=1;
  489.     return 1;
  490. }
  491. stock initial_SetPlayerAmmo(playerid,weapon,ammo)
  492. {
  493.         return SetPlayerAmmo(playerid,weapon,ammo);
  494. }
  495. #if defined INCLUDE_BASE_MODE
  496. //ALS_SYSTEME --------------------
  497. #if defined _ALS_SetPlayerAmmo
  498.     #undef SetPlayerAmmo
  499. #else
  500.     #define _ALS_SetPlayerAmmo
  501. #endif
  502. #define SetPlayerAmmo ELC_AC_SetPlayerAmmo
  503. //ALS_OFF_SYSTEME ----------------
  504. #endif
  505. /*----------------------------------------------------------------------------*/
  506. forward ELC_AC_ResetPlayerWeapons(playerid);
  507. public ELC_AC_ResetPlayerWeapons(playerid)
  508. {
  509.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==1)CheatPlayerInfo[playerid][elc_AntiWeaponHack]=2;
  510.         for(new i = 0; i <13; i++)
  511.         {
  512.         CheatPlayerInfo[playerid][elc_weapon][i]=0;
  513.         CheatPlayerInfo[playerid][elc_ammo][i]=0;
  514.         }
  515.         ResetPlayerWeapons(playerid);
  516.         #if defined MODE_DELAY_SEND_STATS
  517.         SaveTime(CheatPlayerInfo[playerid][elc_GiveWeaponTime],GetTickCount());
  518.         #endif
  519.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==2)CheatPlayerInfo[playerid][elc_AntiWeaponHack]=1;
  520.     return 1;
  521. }
  522. stock initial_ResetPlayerWeapons(playerid)
  523. {
  524.         return ResetPlayerWeapons(playerid);
  525. }
  526. #if defined INCLUDE_BASE_MODE
  527. //ALS_SYSTEME --------------------
  528. #if defined _ALS_ResetPlayerWeapons
  529.     #undef ResetPlayerWeapons
  530. #else
  531.     #define _ALS_ResetPlayerWeapons
  532. #endif
  533. #define ResetPlayerWeapons ELC_AC_ResetPlayerWeapons
  534. //ALS_OFF_SYSTEME ----------------
  535. #endif
  536. /*----------------------------------------------------------------------------*/
  537. forward ELC_AC_SetPlayerHealth(playerid,Float:health);
  538. public ELC_AC_SetPlayerHealth(playerid,Float:health)
  539. {
  540.         if(CheatPlayerInfo[playerid][elc_AntiHealthHack]==1)CheatPlayerInfo[playerid][elc_AntiHealthHack]=2;
  541.         CheatPlayerInfo[playerid][elc_health]=health;
  542.         SetPlayerHealth(playerid,health);
  543.         #if defined MODE_DELAY_SEND_STATS
  544.         SaveTime(CheatPlayerInfo[playerid][elc_GiveHealthTime],GetTickCount());
  545.         #endif
  546.         if(CheatPlayerInfo[playerid][elc_AntiHealthHack]==2)CheatPlayerInfo[playerid][elc_AntiHealthHack]=1;
  547.     return 1;
  548. }
  549. stock initial_SetPlayerHealth(playerid,Float:health)
  550. {
  551.         return SetPlayerHealth(playerid,health);
  552. }
  553. #if defined INCLUDE_BASE_MODE
  554. //ALS_SYSTEME --------------------
  555. #if defined _ALS_SetPlayerHealth
  556.     #undef SetPlayerHealth
  557. #else
  558.     #define _ALS_SetPlayerHealth
  559. #endif
  560. #define SetPlayerHealth ELC_AC_SetPlayerHealth
  561. //ALS_OFF_SYSTEME ----------------
  562. #endif
  563. /*----------------------------------------------------------------------------*/
  564. forward ELC_AC_SetPlayerArmour(playerid,Float:armour);
  565. public ELC_AC_SetPlayerArmour(playerid,Float:armour)
  566. {
  567.         if(CheatPlayerInfo[playerid][elc_AntiArmourHack]==1)CheatPlayerInfo[playerid][elc_AntiArmourHack]=2;
  568.         CheatPlayerInfo[playerid][elc_armour]=armour;
  569.         SetPlayerArmour(playerid,armour);
  570.         #if defined MODE_DELAY_SEND_STATS
  571.         SaveTime(CheatPlayerInfo[playerid][elc_GiveArmourTime],GetTickCount());
  572.         #endif
  573.         if(CheatPlayerInfo[playerid][elc_AntiArmourHack]==2)CheatPlayerInfo[playerid][elc_AntiArmourHack]=1;
  574.     return 1;
  575. }
  576. stock initial_SetPlayerArmour(playerid,Float:armour)
  577. {
  578.         return SetPlayerArmour(playerid,armour);
  579. }
  580. #if defined INCLUDE_BASE_MODE
  581. //ALS_SYSTEME --------------------
  582. #if defined _ALS_SetPlayerArmour
  583.     #undef SetPlayerArmour
  584. #else
  585.     #define _ALS_SetPlayerArmour
  586. #endif
  587. #define SetPlayerArmour ELC_AC_SetPlayerArmour
  588. //ALS_OFF_SYSTEME ----------------
  589. #endif
  590. /*----------------------------------------------------------------------------*/
  591. forward ELC_AC_SetVehiclePos(vehicleid,Float:x,Float:y,Float:z);
  592. public ELC_AC_SetVehiclePos(vehicleid,Float:x,Float:y,Float:z)
  593. {
  594.         CheatVehicleInfo[vehicleid][elc_vX]=x;
  595.         CheatVehicleInfo[vehicleid][elc_vY]=y;
  596.         CheatVehicleInfo[vehicleid][elc_vZ]=z;
  597.     SetVehiclePos(vehicleid,x,y,z);
  598.     CheatVehicleInfo[vehicleid][elc_vStatut]=0;
  599.     return 1;
  600. }
  601. stock initial_SetVehiclePos(vehicleid,Float:x,Float:y,Float:z)
  602. {
  603.         return SetVehiclePos(vehicleid,x,y,z);
  604. }
  605. #if defined INCLUDE_BASE_MODE
  606. //ALS_SYSTEME --------------------
  607. #if defined _ALS_SetVehiclePos
  608.     #undef SetVehiclePos
  609. #else
  610.     #define _ALS_SetVehiclePos
  611. #endif
  612. #define SetVehiclePos ELC_AC_SetVehiclePos
  613. //ALS_OFF_SYSTEME ----------------
  614. #endif
  615. //Core--------------------------------------------------------------------------
  616. public OnPlayerCheckCheat(playerid)
  617. {
  618.         new elc_IsTime=GetTickCount();
  619.         #if defined MODE_DELAY_SEND_STATS
  620.         if(CheatPlayerInfo[playerid][elc_AntiMoneyHack]==1 && IsPassTime(playerid,CheatPlayerInfo[playerid][elc_GiveMoneyTime],elc_IsTime))
  621.         #else
  622.         if(CheatPlayerInfo[playerid][elc_AntiMoneyHack]==1)
  623.         #endif
  624.         {
  625.                 new elc_getmoney=initial_GetPlayerMoney(playerid);
  626.                 if(elc_getmoney>CheatPlayerInfo[playerid][elc_money])
  627.                 {
  628.                         new elc_str[60];
  629.                         format(elc_str,sizeof(elc_str),"%d", elc_getmoney-CheatPlayerInfo[playerid][elc_money]);
  630.                         initial_ResetPlayerMoney(playerid);
  631.                         initial_GivePlayerMoney(playerid, CheatPlayerInfo[playerid][elc_money]);
  632.                         ELC_SendCheatWarning(playerid,1,elc_str);
  633.                 }
  634.                 #if defined DISABLE_MONEY_DEATHLOSE
  635.                 else if(((elc_getmoney+100)<=CheatPlayerInfo[playerid][elc_money])&&((GetTickCount()-CheatPlayerInfo[playerid][elc_TimeSpawn])<(TIMER_CHEAT_RATE+MAX_DELAY_SEND_STATS+5000)))
  636.                 {
  637.                         initial_ResetPlayerMoney(playerid);
  638.                         initial_GivePlayerMoney(playerid, elc_getmoney+100);
  639.                 }
  640.                 #endif
  641.         }
  642.         if(CheatPlayerInfo[playerid][elc_AntiTeleportHack]==1 && IsPlayerUpdatePos(playerid))
  643.         {
  644.             #if defined MODE_DELAY_SEND_STATS
  645.                 if(CheatPlayerInfo[playerid][elc_SetPositionTime]!=0)
  646.                 {
  647.                     if(IsPassTime(playerid,CheatPlayerInfo[playerid][elc_SetPositionTime],elc_IsTime))
  648.                     {
  649.                 CheatPlayerInfo[playerid][elc_SetPositionTime]=0;
  650.                                 GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  651.                                 CheatPlayerInfo[playerid][elc_interior]=GetPlayerInterior(playerid);
  652.                                 CheatPlayerInfo[playerid][elc_virtualworld]=GetPlayerVirtualWorld(playerid);
  653.                         }
  654.                 }
  655.                 else if(IsPlayerCheatPos(playerid))
  656.                 #else
  657.                 if(IsPlayerCheatPos(playerid))
  658.                 #endif
  659.                 {
  660.                         if(!IsPlayerCheatAllowTelPos(playerid))
  661.                         {
  662.                             GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  663.                                 CheatPlayerInfo[playerid][elc_interior]=GetPlayerInterior(playerid);
  664.                                 CheatPlayerInfo[playerid][elc_virtualworld]=GetPlayerVirtualWorld(playerid);
  665.                             CheatPlayerInfo[playerid][elc_AllowTelX]=0;
  666.                             CheatPlayerInfo[playerid][elc_AllowTelY]=0;
  667.                             CheatPlayerInfo[playerid][elc_AllowTelZ]=0;
  668.                         }
  669.                     else
  670.                         {
  671.                                 if(ELC_SendCheatWarning(playerid,6))
  672.                                 {
  673.                                         SetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  674.                                         SetPlayerInterior(playerid,CheatPlayerInfo[playerid][elc_interior]);
  675.                                         SetPlayerVirtualWorld(playerid,CheatPlayerInfo[playerid][elc_virtualworld]);
  676.                                 }
  677.                                 else
  678.                                 {
  679.                                         GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  680.                                         CheatPlayerInfo[playerid][elc_interior]=GetPlayerInterior(playerid);
  681.                                         CheatPlayerInfo[playerid][elc_virtualworld]=GetPlayerVirtualWorld(playerid);
  682.                                 }
  683.                         }
  684.                 }
  685.                 else
  686.                 {
  687.                         GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  688.                         CheatPlayerInfo[playerid][elc_interior]=GetPlayerInterior(playerid);
  689.                         CheatPlayerInfo[playerid][elc_virtualworld]=GetPlayerVirtualWorld(playerid);
  690.                 }
  691.         }
  692.         #if defined MODE_DELAY_SEND_STATS
  693.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==1 && IsPassTime(playerid,CheatPlayerInfo[playerid][elc_GiveWeaponTime],elc_IsTime))
  694.         #else
  695.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==1&&GetPlayerSpecialAction(playerid)!=SPECIAL_ACTION_ENTER_VEHICLE&&GetPlayerSpecialAction(playerid)!=SPECIAL_ACTION_EXIT_VEHICLE)
  696.         #endif
  697.         {
  698.                 new elc_WA_VAR[2];
  699.                 new elc_NeedRemove;
  700.                 /*new actweap=GetPlayerWeapon(playerid);
  701.                 if(actweap!=0&&actweap!=CheatPlayerInfo[playerid][elc_weapon][elc_GetWeaponSlot(actweap)])
  702.                 {
  703.                         if(!elc_IsGiveVehicleWeapon(actweap))
  704.                         {
  705.                                 new elc_str[32];
  706.                                 GetWeaponName(elc_WA_VAR[0][i],str,32);
  707.                                 ELC_SendCheatWarning(playerid,2,elc_str);
  708.                         }
  709.                         elc_NeedRemove=1;
  710.                 }*/
  711.                 for(new i = 0; i <13; i++)
  712.                 {
  713.                         elc_WA_VAR[0]=0; elc_WA_VAR[1]=0;
  714.                         GetPlayerWeaponData(playerid,i,elc_WA_VAR[0],elc_WA_VAR[1]);
  715.                         if(CheatPlayerInfo[playerid][elc_weapon][i]!=elc_WA_VAR[0] && elc_WA_VAR[0]!=0 && elc_WA_VAR[1]!=0)// && elc_WA_VAR[0][i]!=actweap
  716.                         {
  717.                                 //CHEAT WEAPON
  718.                                 if(!elc_IsGiveVehicleWeapon(elc_WA_VAR[0])&&elc_NeedRemove==0)
  719.                                 {
  720.                                         new elc_str[32];
  721.                                         GetWeaponName(elc_WA_VAR[0],elc_str,sizeof(elc_str));
  722.                                         ELC_SendCheatWarning(playerid,2,elc_str);
  723.                                 }
  724.                                 elc_NeedRemove=1;
  725.                                 //SetPlayerAmmo(playerid, elc_WA_VAR[0], 0);
  726.                         }
  727.                         else if(((CheatPlayerInfo[playerid][elc_ammo][i]-elc_WA_VAR[1]) < 0) && elc_IsNotWeaponNoAmmo(elc_WA_VAR[0]) && elc_WA_VAR[0]!=0)
  728.                         {
  729.                                 //CHEAT AMMO
  730.                                 if(elc_NeedRemove<=1)
  731.                                 {
  732.                                         new elc_str[60];
  733.                                         format(elc_str,sizeof(elc_str),"%d",elc_WA_VAR[1]-CheatPlayerInfo[playerid][elc_ammo][i]);
  734.                                         ELC_SendCheatWarning(playerid,3,elc_str);
  735.                                 }
  736.                                 elc_NeedRemove=2;
  737.                                 //SetPlayerAmmo(playerid, elc_WA_VAR[0], 0);
  738.                         }
  739.                         else if(CheatPlayerInfo[playerid][elc_weapon][i]!=0 && elc_WA_VAR[0]==0 && elc_WA_VAR[1]==0)
  740.                         {
  741.                             CheatPlayerInfo[playerid][elc_weapon][i]=0;
  742.                             CheatPlayerInfo[playerid][elc_ammo][i]=0;
  743.                         }
  744.                         else if(elc_WA_VAR[1]!=0) CheatPlayerInfo[playerid][elc_ammo][i]=elc_WA_VAR[1];
  745.  
  746.                 }
  747.                 if(elc_NeedRemove>=1)
  748.                 {
  749.                         new WepUse=GetPlayerWeapon(playerid);
  750.                         initial_ResetPlayerWeapons(playerid);
  751.                     for(new i = 0; i <13; i++)if(CheatPlayerInfo[playerid][elc_weapon][i] != 0)initial_GivePlayerWeapon(playerid, CheatPlayerInfo[playerid][elc_weapon][i], CheatPlayerInfo[playerid][elc_ammo][i]);
  752.                     SetPlayerArmedWeapon(playerid,WepUse);
  753.                 }
  754.         }
  755.         #if defined MODE_DELAY_SEND_STATS
  756.         if(CheatPlayerInfo[playerid][elc_AntiHealthHack]==1 && IsPassTime(playerid,CheatPlayerInfo[playerid][elc_GiveHealthTime],elc_IsTime) && IsPassTime(playerid,CheatPlayerInfo[playerid][elc_GiveMoneyTime],elc_IsTime))
  757.         #else
  758.         if(CheatPlayerInfo[playerid][elc_AntiHealthHack]==1)
  759.         #endif
  760.         {
  761.                 new Float:velc_health;
  762.                 GetPlayerHealth(playerid,velc_health);
  763.                 if(velc_health!=CheatPlayerInfo[playerid][elc_health])
  764.                 {
  765.                         if(velc_health<=100 && velc_health>0 && CheatPlayerInfo[playerid][elc_health]==0) CheatPlayerInfo[playerid][elc_health]=velc_health;
  766.                         else if(velc_health>CheatPlayerInfo[playerid][elc_health])
  767.                         {
  768.                             //Cheat Health
  769.                             initial_SetPlayerHealth(playerid,CheatPlayerInfo[playerid][elc_health]);
  770.                             ELC_SendCheatWarning(playerid,7);
  771.                         }
  772.                         else if(velc_health<CheatPlayerInfo[playerid][elc_health] && velc_health!=0)CheatPlayerInfo[playerid][elc_health]=velc_health;
  773.                 }
  774.         }
  775.         #if defined MODE_DELAY_SEND_STATS
  776.         if(CheatPlayerInfo[playerid][elc_AntiArmourHack]==1 && IsPassTime(playerid,CheatPlayerInfo[playerid][elc_GiveArmourTime],elc_IsTime) && IsPassTime(playerid,CheatPlayerInfo[playerid][elc_GiveMoneyTime],elc_IsTime))
  777.         #else
  778.         if(CheatPlayerInfo[playerid][elc_AntiArmourHack]==1)
  779.         #endif
  780.         {
  781.                 new Float:velc_armour;
  782.                 GetPlayerArmour(playerid,velc_armour);
  783.                 if(velc_armour!=CheatPlayerInfo[playerid][elc_armour])
  784.                 {
  785.                         if(velc_armour>CheatPlayerInfo[playerid][elc_armour])
  786.                         {
  787.                             //Cheat Armour
  788.                             initial_SetPlayerArmour(playerid,CheatPlayerInfo[playerid][elc_armour]);
  789.                             ELC_SendCheatWarning(playerid,8);
  790.                         }
  791.                         else if(velc_armour<CheatPlayerInfo[playerid][elc_armour])CheatPlayerInfo[playerid][elc_armour]=velc_armour;
  792.                 }
  793.         }
  794.         if(CheatPlayerInfo[playerid][elc_AntiVehicleTelportHack]==2 && CheatPlayerInfo[playerid][elc_PossibleVehicleHack]!=0 && IsPassTime(playerid,CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PossibleVehicleHack]][elc_vPossibleHackTime],elc_IsTime))
  795.         {
  796.             if(ELC_AC_IsCreatedVehicle(CheatPlayerInfo[playerid][elc_PossibleVehicleHack]))
  797.             {
  798.                 ELC_SendCheatWarning(playerid,9);
  799.                     SetVehiclePos(CheatPlayerInfo[playerid][elc_PossibleVehicleHack], CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PossibleVehicleHack]][elc_vX], CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PossibleVehicleHack]][elc_vY], CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PossibleVehicleHack]][elc_vZ]);
  800.                     SetVehicleZAngle(CheatPlayerInfo[playerid][elc_PossibleVehicleHack],CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PossibleVehicleHack]][elc_vAngle]);
  801.                         CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PossibleVehicleHack]][elc_vPossiblePlayerHack]=0;
  802.                         CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PossibleVehicleHack]][elc_vPossibleHackTime]=0;
  803.                 }
  804.         CheatPlayerInfo[playerid][elc_PossibleVehicleHack]=0;
  805.     }
  806.         else if(GetPlayerVehicleSeat(playerid)==0)
  807.         {
  808.                 new vehicleid=GetPlayerVehicleID(playerid);
  809.                 if(vehicleid!=0)
  810.                 {
  811.                         GetVehiclePos(vehicleid, CheatVehicleInfo[vehicleid][elc_vX], CheatVehicleInfo[vehicleid][elc_vY], CheatVehicleInfo[vehicleid][elc_vZ]);
  812.             GetVehicleZAngle(vehicleid,CheatVehicleInfo[vehicleid][elc_vAngle]);
  813.                 }
  814.         }
  815.         return 1;
  816. }
  817. /*----------------------------------------------------------------------------*/
  818. public OnPlayerUpdate(playerid)
  819. {
  820.         new elc_tick=GetTickCount();
  821.         if(CheatPlayerInfo[playerid][elc_LastUpdate]+1000<elc_tick)
  822.         {
  823.             GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  824.         }
  825.     CheatPlayerInfo[playerid][elc_LastUpdate]=elc_tick;
  826.         if(CheatPlayerInfo[playerid][elc_AntiSpeedHack]==1)
  827.         {
  828.                 //if((GetPlayerSurfingVehicleID(playerid)!=INVALID_VEHICLE_ID || GetPlayerState(playerid) == PLAYER_STATE_DRIVER) && (elc_GetPlayerSpeedXY(playerid) > MAX_SPEED_VEHICLE))
  829.                 if(elc_GetPlayerSpeedXY(playerid) > MAX_SPEED_VEHICLE)ELC_SendCheatWarning(playerid,5);
  830.         }
  831.         #if defined INCLUDE_BASE_MODE
  832.         return CallLocalFunction("ELC_AC_OnPlayerUpdate", "i",playerid);
  833.         #else
  834.         return 1;
  835.         #endif
  836. }
  837. /*----------------------------------------------------------------------------*/
  838. #if defined INCLUDE_BASE_MODE
  839. //ALS_SYSTEME --------------------
  840. #if defined _ALS_OnPlayerUpdate
  841.         #undef OnPlayerUpdate
  842. #else
  843.         #define _ALS_OnPlayerUpdate
  844. #endif
  845. #define OnPlayerUpdate ELC_AC_OnPlayerUpdate
  846. forward ELC_AC_OnPlayerUpdate(playerid);
  847. #endif
  848. //ALS_OFF_SYSTEME ----------------
  849. /*----------------------------------------------------------------------------*/
  850. #if defined INCLUDE_BASE_MODE
  851. public OnGameModeInit()
  852. #else
  853. public OnFilterScriptInit()
  854. #endif
  855. {
  856.     #if defined NO_TICK_COUNT
  857.         CheatServerInfo[elc_TimerTick]=SetTimer("TimeUpdate", TIME_GRANULITY, true);
  858.         #endif
  859.         #if defined INCLUDE_BASE_MODE
  860.         return CallLocalFunction("ELC_AC_OnGameModeInit", " ");
  861.         #else
  862.         return 1;
  863.         #endif
  864. }
  865. /*----------------------------------------------------------------------------*/
  866. #if defined INCLUDE_BASE_MODE
  867. //ALS_SYSTEME --------------------
  868. #if defined _ALS_OnGameModeInit
  869.         #undef OnGameModeInit
  870. #else
  871.         #define _ALS_OnGameModeInit
  872. #endif
  873. #define OnGameModeInit ELC_AC_OnGameModeInit
  874. forward ELC_AC_OnGameModeInit();
  875. #endif
  876. //ALS_OFF_SYSTEME ----------------
  877. /*----------------------------------------------------------------------------*/
  878. #if defined INCLUDE_BASE_MODE
  879. public OnGameModeExit()
  880. #else
  881. public OnFilterScriptExit()
  882. #endif
  883. {
  884.         #if defined NO_TICK_COUNT
  885.         KillTimer(CheatServerInfo[elc_TimerTick]);
  886.         #endif
  887.         #if defined INCLUDE_BASE_MODE
  888.         return CallLocalFunction("ELC_AC_OnGameModeExit", " ");
  889.         #else
  890.         return 1;
  891.         #endif
  892. }
  893. /*----------------------------------------------------------------------------*/
  894. #if defined INCLUDE_BASE_MODE
  895. //ALS_SYSTEME --------------------
  896. #if defined _ALS_OnGameModeExit
  897.         #undef OnGameModeExit
  898. #else
  899.         #define _ALS_OnGameModeExit
  900. #endif
  901. #define OnGameModeExit ELC_AC_OnGameModeExit
  902. forward ELC_AC_OnGameModeExit();
  903. #endif
  904. //ALS_OFF_SYSTEME ----------------
  905. /*----------------------------------------------------------------------------*/
  906. public OnPlayerConnect(playerid)
  907. {
  908.     for(new i = 0; i <_:aELCp; i++)CheatPlayerInfo[playerid][aELCp:i]=0;
  909.         if (!IsPlayerNPC(playerid))
  910.         {
  911.                 CheatPlayerInfo[playerid][elc_armour]=100;
  912.                 CheatPlayerInfo[playerid][elc_health]=100;
  913.                 CheatPlayerInfo[playerid][elc_timer]=SetTimerEx("OnPlayerCheckCheat", TIMER_CHEAT_RATE, 1, "i", playerid);
  914.                 CheatPlayerInfo[playerid][elc_AntiWeaponHack]=ANTI_WEAPON_&_AMMO_HACK;
  915.                 CheatPlayerInfo[playerid][elc_AntiAmmoBlockHack]=ANTI_AMMO_BLOCK_HACK;
  916.                 CheatPlayerInfo[playerid][elc_AntiMoneyHack]=ANTI_MONEY_HACK;
  917.                 CheatPlayerInfo[playerid][elc_AntiSpeedHack]=0;
  918.                 CheatPlayerInfo[playerid][elc_AntiArmourHack]=ANTI_ARMOUR_HACK;
  919.                 CheatPlayerInfo[playerid][elc_AntiHealthHack]=ANTI_HEALTH_HACK;
  920.                 CheatPlayerInfo[playerid][elc_AntiVehicleTelportHack]=ANTI_VEHICLE-TELEPORT_HACK;
  921.                 #if defined MODE_DELAY_SEND_STATS
  922.                 CheatPlayerInfo[playerid][elc_GiveWeaponTime]=1;
  923.                 CheatPlayerInfo[playerid][elc_GiveMoneyTime]=1;
  924.                 CheatPlayerInfo[playerid][elc_GiveHealthTime]=1;
  925.                 CheatPlayerInfo[playerid][elc_GiveArmourTime]=1;
  926.                 #endif
  927.                 CheatPlayerInfo[playerid][elc_PlayerEnterTime]=0;
  928.                 SendClientMessage(playerid,0xBD0000FF,"[ANTI-CHEAT]Ce serveur est protégé par ELC_AC(By Eloctro)");
  929.         }
  930.         #if defined INCLUDE_BASE_MODE
  931.         return CallLocalFunction("ELC_AC_OnPlayerConnect", "d", playerid);
  932.         #else
  933.         return 1;
  934.         #endif
  935. }
  936. /*----------------------------------------------------------------------------*/
  937. #if defined INCLUDE_BASE_MODE
  938. //ALS_SYSTEME --------------------
  939. #if defined _ALS_OnPlayerConnect
  940.         #undef OnPlayerConnect
  941. #else
  942.         #define _ALS_OnPlayerConnect
  943. #endif
  944. #define OnPlayerConnect ELC_AC_OnPlayerConnect
  945. forward ELC_AC_OnPlayerConnect(playerid);
  946. #endif
  947. //ALS_OFF_SYSTEME ----------------
  948. /*----------------------------------------------------------------------------*/
  949. public OnPlayerSpawn(playerid)
  950. {
  951.         if (!IsPlayerNPC(playerid))
  952.         {
  953.             GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  954.                 SaveTime(CheatPlayerInfo[playerid][elc_SetPositionTime],GetTickCount()+MAX_DELAY_WAIT_AFTER_SPAWN);
  955.                 CheatPlayerInfo[playerid][elc_TimeSpawn]=GetTickCount();
  956.                 if(CheatPlayerInfo[playerid][elc_AntiSpeedHack]!=2)
  957.                 {
  958.                         CheatPlayerInfo[playerid][elc_AntiTeleportHack]=ANTI_TELEPORT/AIBREAK_HACK;
  959.                         CheatPlayerInfo[playerid][elc_AntiSpeedHack]=ANTI_SPEED_HACK;
  960.                 }
  961.                 CheatPlayerInfo[playerid][elc_health]=100;
  962.                 CheatPlayerInfo[playerid][elc_armour]=100;
  963.         }
  964.         #if defined INCLUDE_BASE_MODE
  965.         return CallLocalFunction("ELC_AC_OnPlayerSpawn", "d", playerid);
  966.         #else
  967.         return 1;
  968.         #endif
  969. }
  970. /*----------------------------------------------------------------------------*/
  971. #if defined INCLUDE_BASE_MODE
  972. //ALS_SYSTEME --------------------
  973. #if defined _ALS_OnPlayerSpawn
  974.         #undef OnPlayerSpawn
  975. #else
  976.         #define _ALS_OnPlayerSpawn
  977. #endif
  978. #define OnPlayerSpawn ELC_AC_OnPlayerSpawn
  979. forward ELC_AC_OnPlayerSpawn(playerid);
  980. #endif
  981. //ALS_OFF_SYSTEME ----------------
  982. /*----------------------------------------------------------------------------*/
  983. public OnPlayerDeath(playerid, killerid, reason)
  984. {
  985.         if (!IsPlayerNPC(playerid))
  986.         {
  987.             CheatPlayerInfo[playerid][elc_PlayerEnterTime]=0;
  988.                 CheatPlayerInfo[playerid][elc_AntiTeleportHack]=0;
  989.                 CheatPlayerInfo[playerid][elc_AntiSpeedHack]=0;
  990.         }
  991.         #if defined INCLUDE_BASE_MODE
  992.         return CallLocalFunction("ELC_AC_OnPlayerDeath", "ddd", playerid, killerid, reason);
  993.         #else
  994.         return 1;
  995.         #endif
  996. }
  997. /*----------------------------------------------------------------------------*/
  998. #if defined INCLUDE_BASE_MODE
  999. //ALS_SYSTEME --------------------
  1000. #if defined _ALS_OnPlayerDeath
  1001.         #undef OnPlayerDeath
  1002. #else
  1003.         #define _ALS_OnPlayerDeath
  1004. #endif
  1005. #define OnPlayerDeath ELC_AC_OnPlayerDeath
  1006. forward ELC_AC_OnPlayerDeath(playerid, killerid, reason);
  1007. #endif
  1008. //ALS_OFF_SYSTEME ----------------
  1009. /*----------------------------------------------------------------------------*/
  1010. public OnPlayerDisconnect(playerid, reason)
  1011. {
  1012.         if (!IsPlayerNPC(playerid))KillTimer(CheatPlayerInfo[playerid][elc_timer]);
  1013.         //for(new i = 0; i <_:aELCp; i++)CheatPlayerInfo[playerid][aELCp:i]=0;
  1014.         #if defined INCLUDE_BASE_MODE
  1015.         return CallLocalFunction("ELC_AC_OnPlayerDisconnect", "dd", playerid, reason);
  1016.         #else
  1017.         return 1;
  1018.         #endif
  1019. }
  1020. /*----------------------------------------------------------------------------*/
  1021. #if defined INCLUDE_BASE_MODE
  1022. //ALS_SYSTEME --------------------
  1023. #if defined _ALS_OnPlayerDisconnect
  1024.         #undef OnPlayerDisconnect
  1025. #else
  1026.         #define _ALS_OnPlayerDisconnect
  1027. #endif
  1028. #define OnPlayerDisconnect ELC_AC_OnPlayerDisconnect
  1029. forward ELC_AC_OnPlayerDisconnect(playerid, reason);
  1030. #endif
  1031. //ALS_OFF_SYSTEME ----------------
  1032. /*----------------------------------------------------------------------------*/
  1033. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  1034. {
  1035.     CheatPlayerInfo[playerid][elc_PlayerEnterVeh]=vehicleid;
  1036.         #if defined INCLUDE_BASE_MODE
  1037.         return CallLocalFunction("ELC_AC_OnPlayerEnterVehicle", "ddd",playerid, vehicleid, ispassenger);
  1038.         #else
  1039.         return 1;
  1040.         #endif
  1041. }
  1042. /*----------------------------------------------------------------------------*/
  1043. #if defined INCLUDE_BASE_MODE
  1044. //ALS_SYSTEME --------------------
  1045. #if defined _ALS_OnPlayerEnterVehicle
  1046.         #undef OnPlayerEnterVehicle
  1047. #else
  1048.         #define _ALS_OnPlayerEnterVehicle
  1049. #endif
  1050. #define OnPlayerEnterVehicle ELC_AC_OnPlayerEnterVehicle
  1051. forward ELC_AC_OnPlayerEnterVehicle(playerid, vehicleid, ispassenger);
  1052. #endif
  1053. //ALS_OFF_SYSTEME ----------------
  1054. /*----------------------------------------------------------------------------*/
  1055. public OnPlayerStateChange(playerid, newstate, oldstate)
  1056. {
  1057.     if(newstate == PLAYER_STATE_DRIVER)
  1058.     {
  1059.         if(CheatPlayerInfo[playerid][elc_AntiVehicleTelportHack]>=1&&CheatPlayerInfo[playerid][elc_PlayerEnterVeh]!=GetPlayerVehicleID(playerid))
  1060.                 {
  1061.                         CheatPlayerInfo[playerid][elc_PlayerEnterTime] = GetTickCount();
  1062.                         new elc_vehicleid=GetPlayerVehicleID(playerid);
  1063.                         if(elc_vehicleid!=0)
  1064.                         {
  1065.                                 CheatPlayerInfo[playerid][elc_PlayerEnterVeh]=elc_vehicleid;
  1066.                                 CheatVehicleInfo[elc_vehicleid][elc_vStatut]=1;
  1067.                         }
  1068.                 }
  1069.     }
  1070.     else if(oldstate == PLAYER_STATE_DRIVER)
  1071.     {//220 def
  1072.         if(CheatPlayerInfo[playerid][elc_PlayerEnterTime]!=0&&(GetTickCount()-CheatPlayerInfo[playerid][elc_PlayerEnterTime]) < 220)//player entered and exited vehicle faster than 220 ms.
  1073.         {
  1074.             //if(CheatPlayerInfo[playerid][elc_PlayerEnterVeh]!=0)SetVehiclePos(CheatPlayerInfo[playerid][elc_PlayerEnterVeh], CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PlayerEnterVeh]][elc_vX], CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PlayerEnterVeh]][elc_vY], CheatVehicleInfo[CheatPlayerInfo[playerid][elc_PlayerEnterVeh]][elc_vZ]);
  1075.             ELC_SendCheatWarning(playerid,9);
  1076.         }
  1077.         CheatPlayerInfo[playerid][elc_PlayerEnterTime]=0;
  1078.     }
  1079.         #if defined INCLUDE_BASE_MODE
  1080.         return CallLocalFunction("ELC_AC_OnPlayerStateChange", "ddd",playerid, newstate, oldstate);
  1081.         #else
  1082.         return 1;
  1083.         #endif
  1084. }
  1085. /*----------------------------------------------------------------------------*/
  1086. #if defined INCLUDE_BASE_MODE
  1087. //ALS_SYSTEME --------------------
  1088. #if defined _ALS_OnPlayerStateChange
  1089.         #undef OnPlayerStateChange
  1090. #else
  1091.         #define _ALS_OnPlayerStateChange
  1092. #endif
  1093. #define OnPlayerStateChange ELC_AC_OnPlayerStateChange
  1094. forward ELC_AC_OnPlayerStateChange(playerid, newstate, oldstate);
  1095. #endif
  1096. //ALS_OFF_SYSTEME ----------------
  1097. /*----------------------------------------------------------------------------*/
  1098. public OnUnoccupiedVehicleUpdate(vehicleid, playerid, passenger_seat, Float:new_x, Float:new_y, Float:new_z)
  1099. {
  1100.     if (CheatPlayerInfo[playerid][elc_AntiVehicleTelportHack]==2&&ELC_AC_IsCreatedVehicle(vehicleid))
  1101.     {
  1102.                 new Float:elc_tempposx, Float:elc_tempposy, Float:elc_tempposz;
  1103.                 GetVehiclePos(vehicleid, elc_tempposx, elc_tempposy, elc_tempposz);
  1104.                 elc_tempposx = (new_x -elc_tempposx);
  1105.                 elc_tempposy = (new_y -elc_tempposy);
  1106.                 elc_tempposz = (new_z -elc_tempposz);
  1107.                 new Float:XMVDUCM=elc_GetVehicleSpeedXY(vehicleid)+MAX_VEHICLE_DISTANCE_UCM;
  1108.                 if(CheatVehicleInfo[vehicleid][elc_vStatut]==0&&!((elc_tempposx < XMVDUCM) && (elc_tempposx > -XMVDUCM)) && ((elc_tempposy < XMVDUCM) && (elc_tempposy > -XMVDUCM)) && ((elc_tempposz < XMVDUCM) && (elc_tempposz > -XMVDUCM)))
  1109.                 {
  1110.                         SetVehiclePos(vehicleid, elc_tempposx, elc_tempposy, elc_tempposz);
  1111.                         SetVehicleZAngle(vehicleid,CheatVehicleInfo[vehicleid][elc_vAngle]);
  1112.                     if(CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]==0)
  1113.                     {
  1114.                     CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]=playerid+1;
  1115.                     SaveTime(CheatVehicleInfo[vehicleid][elc_vPossibleHackTime],GetTickCount());
  1116.                     CheatPlayerInfo[playerid][elc_PossibleVehicleHack]=vehicleid;
  1117.                         }
  1118.                         else
  1119.                         {
  1120.                     CheatVehicleInfo[vehicleid][elc_vPossibleHackTime]=0;
  1121.                     if(IsPlayerConnected(CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]-1))CheatPlayerInfo[CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]-1][elc_PossibleVehicleHack]=0;
  1122.                     CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]=0;
  1123.                         }
  1124.                     return 0;
  1125.                 }
  1126.                 else
  1127.                 {
  1128.                     if(CheatVehicleInfo[vehicleid][elc_vStatut]==1)CheatVehicleInfo[vehicleid][elc_vStatut]=0;
  1129.                         CheatVehicleInfo[vehicleid][elc_vX]=new_x;
  1130.                         CheatVehicleInfo[vehicleid][elc_vY]=new_y;
  1131.                         CheatVehicleInfo[vehicleid][elc_vZ]=new_z;
  1132.                         GetVehicleZAngle(vehicleid,CheatVehicleInfo[vehicleid][elc_vAngle]);
  1133.                 }
  1134.                 if(CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]!=0 && playerid!=INVALID_PLAYER_ID && CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]!=playerid+1)
  1135.                 {
  1136.                         CheatVehicleInfo[vehicleid][elc_vPossibleHackTime]=0;
  1137.                         if(IsPlayerConnected(CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]-1))CheatPlayerInfo[CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]-1][elc_PossibleVehicleHack]=0;
  1138.                         CheatVehicleInfo[vehicleid][elc_vPossiblePlayerHack]=0;
  1139.                 }
  1140.         }
  1141.         #if defined INCLUDE_BASE_MODE
  1142.         return CallLocalFunction("ELC_AC_OnUnoccupiedVehicle", "dddfff",vehicleid, playerid, passenger_seat, new_x, new_y, new_z);
  1143.         #else
  1144.         return 1;
  1145.         #endif
  1146. }
  1147. /*----------------------------------------------------------------------------*/
  1148. #if defined INCLUDE_BASE_MODE
  1149. //ALS_SYSTEME --------------------
  1150. #if defined _ALS_OnUnoccupiedVehicleUpdate
  1151.         #undef OnUnoccupiedVehicleUpdate
  1152. #else
  1153.         #define _ALS_OnUnoccupiedVehicleUpdate
  1154. #endif
  1155. #define OnUnoccupiedVehicleUpdate ELC_AC_OnUnoccupiedVehicle
  1156. forward ELC_AC_OnUnoccupiedVehicle(vehicleid, playerid, passenger_seat, Float:new_x, Float:new_y, Float:new_z);
  1157. #endif
  1158. //ALS_OFF_SYSTEME ----------------
  1159. /*----------------------------------------------------------------------------*/
  1160. public OnVehicleSpawn(vehicleid)
  1161. {
  1162.     GetVehiclePos(vehicleid, CheatVehicleInfo[vehicleid][elc_vX], CheatVehicleInfo[vehicleid][elc_vY], CheatVehicleInfo[vehicleid][elc_vZ]);
  1163.         #if defined INCLUDE_BASE_MODE
  1164.         return CallLocalFunction("ELC_AC_OnVehicleSpawn", "d",vehicleid);
  1165.         #else
  1166.         return 1;
  1167.         #endif
  1168. }
  1169. /*----------------------------------------------------------------------------*/
  1170. #if defined INCLUDE_BASE_MODE
  1171. //ALS_SYSTEME --------------------
  1172. #if defined _ALS_OnVehicleSpawn
  1173.         #undef OnVehicleSpawn
  1174. #else
  1175.         #define _ALS_OnVehicleSpawn
  1176. #endif
  1177. #define OnVehicleSpawn ELC_AC_OnVehicleSpawn
  1178. forward ELC_AC_OnVehicleSpawn(vehicleid);
  1179. #endif
  1180. //ALS_OFF_SYSTEME ----------------
  1181. /*----------------------------------------------------------------------------*/
  1182. public OnVehicleDeath(vehicleid)
  1183. {
  1184.     CheatVehicleInfo[vehicleid][elc_vX]=0;
  1185.         #if defined INCLUDE_BASE_MODE
  1186.         return CallLocalFunction("ELC_AC_OnVehicleDeath", "d",vehicleid);
  1187.         #else
  1188.         return 1;
  1189.         #endif
  1190. }
  1191. /*----------------------------------------------------------------------------*/
  1192. #if defined INCLUDE_BASE_MODE
  1193. //ALS_SYSTEME --------------------
  1194. #if defined _ALS_OnVehicleDeath
  1195.         #undef OnVehicleDeath
  1196. #else
  1197.         #define _ALS_OnVehicleDeath
  1198. #endif
  1199. #define OnVehicleDeath ELC_AC_OnVehicleDeath
  1200. forward ELC_AC_OnVehicleDeath(vehicleid);
  1201. #endif
  1202. //ALS_OFF_SYSTEME ----------------
  1203. /*----------------------------------------------------------------------------*/
  1204. public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
  1205. {
  1206.  
  1207.         new slot=elc_GetWeaponSlot(weaponid);
  1208.         new elc_WA_VAR[2];
  1209.         GetPlayerWeaponData(playerid,slot,elc_WA_VAR[0],elc_WA_VAR[1]);
  1210.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==1 && CheatPlayerInfo[playerid][elc_weapon][slot]!=weaponid && weaponid!=0 && elc_WA_VAR[1]!=0)// && elc_WA_VAR[0][i]!=actweap
  1211.         {
  1212.                 //CHEAT WEAPON
  1213.                 RemovePlayerWeapon(playerid, weaponid);
  1214.                 if(!elc_IsGiveVehicleWeapon(weaponid))
  1215.                 {
  1216.                         new elc_str[32];
  1217.                         GetWeaponName(weaponid,elc_str,sizeof(elc_str));
  1218.                         ELC_SendCheatWarning(playerid,2,elc_str);
  1219.                 }
  1220.         }
  1221.         else if(elc_IsNotWeaponNoAmmo(weaponid) && elc_WA_VAR[1]<=CheatPlayerInfo[playerid][elc_ammo][slot])
  1222.         {
  1223.                 if(elc_WA_VAR[1]<CheatPlayerInfo[playerid][elc_ammo][slot])
  1224.                 {
  1225.                     CheatPlayerInfo[playerid][elc_tickfire]=0;
  1226.                         CheatPlayerInfo[playerid][elc_ammo][slot]=elc_WA_VAR[1];
  1227.                 }
  1228.                 else if(CheatPlayerInfo[playerid][elc_AntiAmmoBlockHack]==1)
  1229.                 {
  1230.                         if(CheatPlayerInfo[playerid][elc_tickfire]==0||CheatPlayerInfo[playerid][elc_weaponFire]!=weaponid)
  1231.                         {
  1232.                             CheatPlayerInfo[playerid][elc_tickfire]=1;
  1233.                                 CheatPlayerInfo[playerid][elc_ammo][slot]=elc_WA_VAR[1];
  1234.                                 CheatPlayerInfo[playerid][elc_weaponFire]=weaponid;
  1235.                         }
  1236.                         else if(CheatPlayerInfo[playerid][elc_tickfire]<MAX_WEAPON_SHOT_FOR_CHECK) CheatPlayerInfo[playerid][elc_tickfire]++;
  1237.                         else if(CheatPlayerInfo[playerid][elc_tickfire]>=MAX_WEAPON_SHOT_FOR_CHECK)
  1238.                         {
  1239.                             CheatPlayerInfo[playerid][elc_tickfire]=0;
  1240.                                 if(CheatPlayerInfo[playerid][elc_ammo][slot]==elc_WA_VAR[1])
  1241.                                 {
  1242.                                         ELC_SendCheatWarning(playerid,4);
  1243.                                         initial_ResetPlayerWeapons(playerid);
  1244.                                         return 0;
  1245.                                 }
  1246.                         }
  1247.                 }
  1248.         }
  1249.         else if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==1 && elc_IsNotWeaponNoAmmo(weaponid) && elc_WA_VAR[0]!=0)
  1250.         {
  1251.                 new elc_str[60];
  1252.                 format(elc_str,sizeof(elc_str),"%d",elc_WA_VAR[1]-CheatPlayerInfo[playerid][elc_ammo][slot]);
  1253.                 ELC_SendCheatWarning(playerid,3,elc_str);
  1254.                 RemovePlayerWeapon(playerid, elc_WA_VAR[0]);
  1255.             return 0;
  1256.         }
  1257.         #if defined INCLUDE_BASE_MODE
  1258.         return CallLocalFunction("ELC_AC_OnPlayerWeaponShot", "ddddfff",playerid, weaponid, hittype, hitid, fX, fY, fZ);
  1259.         #else
  1260.         return 1;
  1261.         #endif
  1262. }
  1263. /*----------------------------------------------------------------------------*/
  1264. #if defined INCLUDE_BASE_MODE
  1265. //ALS_SYSTEME --------------------
  1266. #if defined _ALS_OnPlayerWeaponShot
  1267.         #undef OnPlayerWeaponShot
  1268. #else
  1269.         #define _ALS_OnPlayerWeaponShot
  1270. #endif
  1271. #define OnPlayerWeaponShot ELC_AC_OnPlayerWeaponShot
  1272. forward ELC_AC_OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ);
  1273. #endif
  1274. //ALS_OFF_SYSTEME ----------------
  1275. /*----------------------------------------------------------------------------*/
  1276. public ELC_AC_EnablePlayerCheatID(playerid,cheatid,enable)
  1277. {
  1278.         if(cheatid==1)//Money
  1279.         {
  1280.                 if(enable==1)
  1281.                 {
  1282.                         CheatPlayerInfo[playerid][elc_AntiMoneyHack]=1;
  1283.                 }
  1284.                 else CheatPlayerInfo[playerid][elc_AntiMoneyHack]=0;
  1285.         }
  1286.         else if(cheatid==2)//Weapon
  1287.         {
  1288.                 if(enable==1)
  1289.                 {
  1290.                         for(new i = 0; i <13; i++)
  1291.                         {
  1292.                                 GetPlayerWeaponData(playerid,i,CheatPlayerInfo[playerid][elc_weapon][i],CheatPlayerInfo[playerid][elc_ammo][i]);
  1293.                         }
  1294.                         CheatPlayerInfo[playerid][elc_AntiWeaponHack]=1;
  1295.                 }
  1296.                 else CheatPlayerInfo[playerid][elc_AntiWeaponHack]=0;
  1297.         }
  1298.         else if(cheatid==3)//AirBreak/SpeedHack
  1299.         {
  1300.                 if(enable==1) CheatPlayerInfo[playerid][elc_AntiSpeedHack]=1;
  1301.                 else CheatPlayerInfo[playerid][elc_AntiSpeedHack]=0;
  1302.         }
  1303.         else if(cheatid==4)//Anti-Teleport
  1304.         {
  1305.                 if(enable==1)
  1306.                 {
  1307.                         GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  1308.                         CheatPlayerInfo[playerid][elc_AntiTeleportHack]=1;
  1309.                 }
  1310.                 else CheatPlayerInfo[playerid][elc_AntiTeleportHack]=0;
  1311.         }
  1312.         else if(cheatid==5)//Anti-Ammo_Block
  1313.         {
  1314.                 if(enable==1)
  1315.                 {
  1316.                         CheatPlayerInfo[playerid][elc_tickfire]=0;
  1317.                         CheatPlayerInfo[playerid][elc_ammoFire]=0;
  1318.                         CheatPlayerInfo[playerid][elc_weaponFire]=0;
  1319.                         CheatPlayerInfo[playerid][elc_AntiAmmoBlockHack]=1;
  1320.                 }
  1321.                 else CheatPlayerInfo[playerid][elc_AntiAmmoBlockHack]=0;
  1322.         }
  1323.         else if(cheatid==6)//Anti_HEALTH_HACK
  1324.         {
  1325.                 if(enable==1)
  1326.                 {
  1327.                         CheatPlayerInfo[playerid][elc_AntiHealthHack]=1;
  1328.                 }
  1329.                 else CheatPlayerInfo[playerid][elc_AntiHealthHack]=0;
  1330.         }
  1331.         else if(cheatid==7)//Anti_ARMOUR_HACK
  1332.         {
  1333.                 if(enable==1)
  1334.                 {
  1335.                         CheatPlayerInfo[playerid][elc_AntiArmourHack]=1;
  1336.                 }
  1337.                 else CheatPlayerInfo[playerid][elc_AntiArmourHack]=0;
  1338.         }
  1339.         return 1;
  1340. }
  1341. /*----------------------------------------------------------------------------*/
  1342. #define EnablePlayerCheatID ELC_AC_EnablePlayerCheatID
  1343. /*----------------------------------------------------------------------------*/
  1344. #if defined INCLUDE_BASE_MODE
  1345. #else
  1346. public OnPlayerCheat(playerid, cheatid, source[])
  1347. {
  1348.     new elc_str[120],elc_reason[60],elc_name[MAX_PLAYER_NAME];
  1349.         GetPlayerName(playerid, elc_name, sizeof(elc_name));
  1350.     format(elc_str,sizeof(elc_str),"( ! ) %s has been cheated for: ",elc_name);
  1351.     switch(cheatid)
  1352.     {
  1353.         case 1: format(elc_reason,sizeof(elc_reason),"Money Cheat ( %s $ )",source);
  1354.         case 2: format(elc_reason,sizeof(elc_reason),"Weapon Cheat ( %s )",source);
  1355.         case 3: format(elc_reason,sizeof(elc_reason),"Ammo Cheat ( %s Bullets )",source);
  1356.         case 4: format(elc_reason,sizeof(elc_reason),"Ammo Block Cheat");
  1357.         case 5: format(elc_reason,sizeof(elc_reason),"Speed Cheat");
  1358.         case 6: format(elc_reason,sizeof(elc_reason),"Airbreak/Teleport Cheat");
  1359.         case 7: format(elc_reason,sizeof(elc_reason),"Health Cheat");
  1360.         case 8: format(elc_reason,sizeof(elc_reason),"Armour Cheat");
  1361.         case 9: format(elc_reason,sizeof(elc_reason),"Vehicle Spawn Cheat");
  1362.         case 10: format(elc_reason,sizeof(elc_reason),"Vehicle Crasher");
  1363.     }
  1364.     strcat(elc_str,elc_reason);
  1365.     SendClientMessageToAll(0xBD0000FF,elc_str);
  1366.         return 1;
  1367. }
  1368. #endif
  1369. /*----------------------------------------------------------------------------*/
  1370. public RemovePlayerWeapon(playerid, weaponid)
  1371. {
  1372.     if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==1)CheatPlayerInfo[playerid][elc_AntiWeaponHack]=2;
  1373.     new WeaponsID[13];
  1374.     new AmmoID[13];
  1375.     new WepUse=GetPlayerWeapon(playerid);
  1376.     new slotremove=elc_GetWeaponSlot(weaponid);
  1377.     for(new slot = 0; slot <13; slot++)
  1378.     {
  1379.         if(slotremove!=slot)GetPlayerWeaponData(playerid, slot, WeaponsID[slot], AmmoID[slot]);
  1380.     }
  1381.     initial_ResetPlayerWeapons(playerid);
  1382.     for(new slot = 0; slot <13; slot++)if(WeaponsID[slot]!=0 && AmmoID[slot] != 0)initial_GivePlayerWeapon(playerid, WeaponsID[slot], AmmoID[slot]);
  1383.     SetPlayerArmedWeapon(playerid,WepUse);
  1384.         if(CheatPlayerInfo[playerid][elc_AntiWeaponHack]==2)CheatPlayerInfo[playerid][elc_AntiWeaponHack]=1;
  1385.     return 1;
  1386. }
  1387. /*----------------------------------------------------------------------------*/
  1388. public OnEnterExitModShop(playerid, enterexit, interiorid)
  1389. {
  1390.     GetPlayerPos(playerid,CheatPlayerInfo[playerid][elc_posx],CheatPlayerInfo[playerid][elc_posy],CheatPlayerInfo[playerid][elc_posz]);
  1391.         SaveTime(CheatPlayerInfo[playerid][elc_SetPositionTime],GetTickCount()+MAX_DELAY_WAIT_AFTER_SPAWN);
  1392.         #if defined INCLUDE_BASE_MODE
  1393.         return CallLocalFunction("ELC_AC_OnEnterExitModShop", "ddd",playerid, enterexit, interiorid);
  1394.         #else
  1395.         return 1;
  1396.         #endif
  1397. }
  1398. /*----------------------------------------------------------------------------*/
  1399. #if defined INCLUDE_BASE_MODE
  1400. //ALS_SYSTEME --------------------
  1401. #if defined _ALS_OnEnterExitModShop
  1402.         #undef OnEnterExitModShop
  1403. #else
  1404.         #define _ALS_OnEnterExitModShop
  1405. #endif
  1406. #define OnEnterExitModShop ELC_AC_OnEnterExitModShop
  1407. forward ELC_AC_OnEnterExitModShop(playerid, enterexit, interiorid);
  1408. #endif
  1409. //ALS_OFF_SYSTEME ----------------
  1410. /*----------------------------------------------------------------------------*/
  1411. public OnVehicleMod(playerid, vehicleid, componentid)
  1412. {
  1413.     switch(componentid)
  1414.         {
  1415.             case 1008..1010: if(ELC_IsPlayerInInvalidNosVehicle(playerid))
  1416.                 {
  1417.                         RemoveVehicleComponent(vehicleid, componentid);
  1418.                         return 0;
  1419.                 }
  1420.         }
  1421.         if(!ELC_IsComponentidCompatible(GetVehicleModel(vehicleid), componentid))
  1422.         {
  1423.                 RemoveVehicleComponent(vehicleid, componentid);
  1424.                 ELC_SendCheatWarning(playerid,10);
  1425.                 return 0;
  1426.         }
  1427.         #if defined INCLUDE_BASE_MODE
  1428.         return CallLocalFunction("ELC_AC_OnVehicleMod", "ddd",playerid, vehicleid, componentid);
  1429.         #else
  1430.         return 1;
  1431.         #endif
  1432. }
  1433. /*----------------------------------------------------------------------------*/
  1434. #if defined INCLUDE_BASE_MODE
  1435. //ALS_SYSTEME --------------------
  1436. #if defined _ALS_OnVehicleMod
  1437.         #undef OnVehicleMod
  1438. #else
  1439.         #define _ALS_OnVehicleMod
  1440. #endif
  1441. #define OnVehicleMod ELC_AC_OnVehicleMod
  1442. forward ELC_AC_OnVehicleMod(playerid, vehicleid, componentid);
  1443. #endif
  1444. //ALS_OFF_SYSTEME ----------------
  1445. /*----------------------------------------------------------------------------*/
  1446. stock ELC_IsPlayerInInvalidNosVehicle(playerid)
  1447. {
  1448.         new elc_vehicleid = GetPlayerVehicleID(playerid);
  1449.         #define MAX_INVALID_NOS_VEHICLES 52
  1450.         new ELC_InvalidNosVehicles[MAX_INVALID_NOS_VEHICLES] =
  1451.         {
  1452.                 581,523,462,521,463,522,461,448,468,586,417,425,469,487,512,520,563,593,
  1453.                 509,481,510,472,473,493,520,595,484,430,453,432,476,497,513,533,577,
  1454.                 452,446,447,454,590,569,537,538,570,449,519,460,488,511,519,548,592
  1455.         };
  1456.         if(IsPlayerInAnyVehicle(playerid))
  1457.         {
  1458.                 for(new i = 0; i < MAX_INVALID_NOS_VEHICLES; i++)
  1459.         {
  1460.                 if(GetVehicleModel(elc_vehicleid) == ELC_InvalidNosVehicles[i]) return true;
  1461.         }
  1462.         }
  1463.         return false;
  1464. }
  1465. /*----------------------------------------------------------------------------*/
  1466. stock ELC_IsComponentidCompatible(modelid, componentid)
  1467. {
  1468.     if(componentid == 1025 || componentid == 1073 || componentid == 1074 || componentid == 1075 || componentid == 1076 ||
  1469.          componentid == 1077 || componentid == 1078 || componentid == 1079 || componentid == 1080 || componentid == 1081 ||
  1470.          componentid == 1082 || componentid == 1083 || componentid == 1084 || componentid == 1085 || componentid == 1096 ||
  1471.          componentid == 1097 || componentid == 1098 || componentid == 1087 || componentid == 1086)
  1472.          return true;
  1473.  
  1474.     switch (modelid)
  1475.     {
  1476.         case 400: return (componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1018 || componentid == 1013 || componentid == 1024 || componentid == 1008 || componentid == 1009 || componentid == 1010);
  1477.         case 401: return (componentid == 1005 || componentid == 1004 || componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 114 || componentid == 1020 || componentid == 1019 || componentid == 1013 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1478.         case 402: return (componentid == 1009 || componentid == 1009 || componentid == 1010);
  1479.         case 404: return (componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1013 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1002 || componentid == 1016 || componentid == 1000 || componentid == 1017 || componentid == 1007);
  1480.         case 405: return (componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1001 || componentid == 1014 || componentid == 1023 || componentid == 1000);
  1481.         case 409: return (componentid == 1009);
  1482.         case 410: return (componentid == 1019 || componentid == 1021 || componentid == 1020 || componentid == 1013 || componentid == 1024 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1001 || componentid == 1023 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1483.         case 411: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1484.         case 412: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1485.         case 415: return (componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1001 || componentid == 1023 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1486.         case 418: return (componentid == 1020 || componentid == 1021 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1002 || componentid == 1016);
  1487.         case 419: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1488.         case 420: return (componentid == 1005 || componentid == 1004 || componentid == 1021 || componentid == 1019 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1001 || componentid == 1003);
  1489.         case 421: return (componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1014 || componentid == 1023 || componentid == 1016 || componentid == 1000);
  1490.         case 422: return (componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1013 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1017 || componentid == 1007);
  1491.         case 426: return (componentid == 1005 || componentid == 1004 || componentid == 1021 || componentid == 1019 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1003);
  1492.         case 429: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1493.         case 436: return (componentid == 1020 || componentid == 1021 || componentid == 1022 || componentid == 1019 || componentid == 1013 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1494.         case 438: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1495.         case 439: return (componentid == 1003 || componentid == 1023 || componentid == 1001 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1017 || componentid == 1007 || componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 1145 || componentid == 1013);
  1496.         case 442: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1497.         case 445: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1498.         case 451: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1499.         case 458: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1500.         case 466: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1501.         case 467: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1502.         case 474: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1503.         case 475: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1504.         case 477: return (componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1017 || componentid == 1007);
  1505.         case 478: return (componentid == 1005 || componentid == 1004 || componentid == 1012 || componentid == 1020 || componentid == 1021 || componentid == 1022 || componentid == 1013 || componentid == 1024 || componentid == 1008 || componentid == 1009 || componentid == 1010);
  1506.         case 479: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1507.         case 480: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1508.         case 489: return (componentid == 1005 || componentid == 1004 || componentid == 1020 || componentid == 1019 || componentid == 1018 || componentid == 1013 || componentid == 1024 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1002 || componentid == 1016 || componentid == 1000);
  1509.         case 491: return (componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 1145 || componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1014 || componentid == 1023 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1510.         case 492: return (componentid == 1005 || componentid == 1004 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1016 || componentid == 1000);
  1511.         case 496: return (componentid == 1006 || componentid == 1017 || componentid == 1007 || componentid == 1011 || componentid == 1019 || componentid == 1023 || componentid == 1001 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1003 || componentid == 1002 || componentid == 1142 || componentid == 1143 || componentid == 1020);
  1512.         case 500: return (componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1013 || componentid == 1024 || componentid == 1008 || componentid == 1009 || componentid == 1010);
  1513.         case 506: return (componentid == 1009);
  1514.         case 507: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1515.         case 516: return (componentid == 1004 || componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1002 || componentid == 1015 || componentid == 1016 || componentid == 1000 || componentid == 1017 || componentid == 1007);
  1516.         case 517: return (componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 1145 || componentid == 1020 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1002 || componentid == 1023 || componentid == 1016 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1517.         case 518: return (componentid == 1005 || componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 1145 || componentid == 1020 || componentid == 1018 || componentid == 1013 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1023 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1518.         case 526: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1519.         case 527: return (componentid == 1021 || componentid == 1020 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1001 || componentid == 1014 || componentid == 1015 || componentid == 1017 || componentid == 1007);
  1520.         case 529: return (componentid == 1012 || componentid == 1011 || componentid == 1020 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1023 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1521.         case 533: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1522.         case 534: return (componentid == 1126 || componentid == 1127 || componentid == 1179 || componentid == 1185 || componentid == 1100 || componentid == 1123 || componentid == 1125 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1180 || componentid == 1178 || componentid == 1101 || componentid == 1122 || componentid == 1124 || componentid == 1106);
  1523.         case 535: return (componentid == 1109 || componentid == 1110 || componentid == 1113 || componentid == 1114 || componentid == 1115 || componentid == 1116 || componentid == 1117 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1120 || componentid == 1118 || componentid == 1121 || componentid == 1119);
  1524.         case 536: return (componentid == 1104 || componentid == 1105 || componentid == 1182 || componentid == 1181 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1184 || componentid == 1183 || componentid == 1128 || componentid == 1103 || componentid == 1107 || componentid == 1108);
  1525.         case 540: return (componentid == 1004 || componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 1145 || componentid == 1020 || componentid == 1019 || componentid == 1018 || componentid == 1024 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1023 || componentid == 1017 || componentid == 1007);
  1526.         case 541: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1527.         case 542: return (componentid == 1144 || componentid == 1145 || componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1014 || componentid == 1015);
  1528.         case 545: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1529.         case 546: return (componentid == 1004 || componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 1145 || componentid == 1019 || componentid == 1018 || componentid == 1024 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1002 || componentid == 1001 || componentid == 1023 || componentid == 1017 || componentid == 1007);
  1530.         case 547: return (componentid == 1142 || componentid == 1143 || componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1016 || componentid == 1003 || componentid == 1000);
  1531.         case 549: return (componentid == 1012 || componentid == 1011 || componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 1145 || componentid == 1020 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1001 || componentid == 1023 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1532.         case 550: return (componentid == 1005 || componentid == 1004 || componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 1145 || componentid == 1020 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1023 || componentid == 1003);
  1533.         case 551: return (componentid == 1005 || componentid == 1020 || componentid == 1021 || componentid == 1019 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1002 || componentid == 1023 || componentid == 1016 || componentid == 1003);
  1534.         case 555: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1535.         case 558: return (componentid == 1092 || componentid == 1089 || componentid == 1166 || componentid == 1165 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1168 || componentid == 1167 || componentid == 1088 || componentid == 1091 || componentid == 1164 || componentid == 1163 || componentid == 1094 || componentid == 1090 || componentid == 1095 || componentid == 1093);
  1536.         case 559: return (componentid == 1065 || componentid == 1066 || componentid == 1160 || componentid == 1173 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1159 || componentid == 1161 || componentid == 1162 || componentid == 1158 || componentid == 1067 || componentid == 1068 || componentid == 1071 || componentid == 1069 || componentid == 1072 || componentid == 1070 || componentid == 1009);
  1537.         case 560: return (componentid == 1028 || componentid == 1029 || componentid == 1169 || componentid == 1170 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1141 || componentid == 1140 || componentid == 1032 || componentid == 1033 || componentid == 1138 || componentid == 1139 || componentid == 1027 || componentid == 1026 || componentid == 1030 || componentid == 1031);
  1538.         case 561: return (componentid == 1064 || componentid == 1059 || componentid == 1155 || componentid == 1157 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1154 || componentid == 1156 || componentid == 1055 || componentid == 1061 || componentid == 1058 || componentid == 1060 || componentid == 1062 || componentid == 1056 || componentid == 1063 || componentid == 1057);
  1539.         case 562: return (componentid == 1034 || componentid == 1037 || componentid == 1171 || componentid == 1172 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1149 || componentid == 1148 || componentid == 1038 || componentid == 1035 || componentid == 1147 || componentid == 1146 || componentid == 1040 || componentid == 1036 || componentid == 1041 || componentid == 1039);
  1540.         case 565: return (componentid == 1046 || componentid == 1045 || componentid == 1153 || componentid == 1152 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1150 || componentid == 1151 || componentid == 1054 || componentid == 1053 || componentid == 1049 || componentid == 1050 || componentid == 1051 || componentid == 1047 || componentid == 1052 || componentid == 1048);
  1541.         case 566: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1542.         case 567: return (componentid == 1129 || componentid == 1132 || componentid == 1189 || componentid == 1188 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1187 || componentid == 1186 || componentid == 1130 || componentid == 1131 || componentid == 1102 || componentid == 1133);
  1543.         case 575: return (componentid == 1044 || componentid == 1043 || componentid == 1174 || componentid == 1175 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1176 || componentid == 1177 || componentid == 1099 || componentid == 1042);
  1544.         case 576: return (componentid == 1136 || componentid == 1135 || componentid == 1191 || componentid == 1190 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1192 || componentid == 1193 || componentid == 1137 || componentid == 1134);
  1545.         case 579: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1546.         case 580: return (componentid == 1020 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1023 || componentid == 1017 || componentid == 1007);
  1547.         case 585: return (componentid == 1142 || componentid == 1143 || componentid == 1144 || componentid == 1145 || componentid == 1020 || componentid == 1019 || componentid == 1018 || componentid == 1013 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1023 || componentid == 1003 || componentid == 1017 || componentid == 1007);
  1548.         case 587: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1549.         case 589: return (componentid == 1005 || componentid == 1004 || componentid == 1144 || componentid == 1145 || componentid == 1020 || componentid == 1018 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1024 || componentid == 1013 || componentid == 1006 || componentid == 1016 || componentid == 1000 || componentid == 1017 || componentid == 1007);
  1550.         case 600: return (componentid == 1005 || componentid == 1004 || componentid == 1020 || componentid == 1022 || componentid == 1018 || componentid == 1013 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1017 || componentid == 1007);
  1551.         case 602: return (componentid == 1008 || componentid == 1009 || componentid == 1010);
  1552.         case 603: return (componentid == 1144 || componentid == 1145 || componentid == 1142 || componentid == 1143 || componentid == 1020 || componentid == 1019 || componentid == 1018 || componentid == 1024 || componentid == 1008 || componentid == 1009 || componentid == 1010 || componentid == 1006 || componentid == 1001 || componentid == 1023 || componentid == 1017 || componentid == 1007);
  1553.     }
  1554.     return false;
  1555. }
  1556. /*----------------------------------------------------------------------------*/
  1557. stock ELC_SendCheatWarning(playerid,elc_type,xelc_str[]=" ")
  1558. {
  1559.         new elc_str[60];
  1560.         if(!strlen(xelc_str))format(elc_str,sizeof(elc_str)," ");
  1561.         else format(elc_str,sizeof(elc_str),"%s",xelc_str);
  1562.         return CallRemoteFunction("OnPlayerCheat", "dds", playerid,elc_type,elc_str);
  1563. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top