Advertisement
Kyance

SAMP - Anti Triggerbot

Feb 25th, 2015
1,043
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.09 KB | None | 0 0
  1. #if defined _antitb_included
  2.     #endinput
  3. #endif
  4. #define _antitb_included
  5.  
  6. #include <a_samp>
  7. #tryinclude <foreach>
  8.  
  9. static const BlacklistedWeapons[ ] =
  10. {
  11.     WEAPON_COLT45,
  12.     WEAPON_SAWEDOFF,
  13.     WEAPON_UZI, WEAPON_MP5, WEAPON_TEC9,
  14.     WEAPON_AK47, WEAPON_M4,
  15.     WEAPON_MOLTOV, WEAPON_FLAMETHROWER
  16. };
  17. static
  18.     bool:PlayerAimed[ MAX_PLAYERS char ];
  19.    
  20. public OnPlayerUpdate(playerid)
  21. {
  22.     if(PlayerAimed{ playerid } == false)
  23.     {
  24.         static
  25.             cameramode, Keys[ 3 ];
  26.            
  27.         cameramode = GetPlayerCameraMode(playerid), GetPlayerKeys(playerid, Keys[ 0 ], Keys[ 1 ], Keys[ 2 ]);
  28.         if((cameramode == 53 || cameramode == 7) || Keys[ 0 ] == KEY_FIRE)
  29.         {
  30.             PlayerAimed{ playerid } = true;
  31.         }
  32.     }
  33.    
  34.     #if defined hook_OnPlayerUpdate
  35.         hook_OnPlayerUpdate(playerid);
  36.     #endif
  37.    
  38.     return 1;
  39. }
  40. public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
  41. {
  42.     if(PlayerAimed{ playerid } == false)
  43.     {
  44.         static
  45.             bool:validweapon = true;
  46.  
  47.         for(new i = 0; i < sizeof(BlacklistedWeapons); i++)
  48.         {
  49.             if(weaponid != BlacklistedWeapons[ i ]) continue;
  50.             else
  51.             {
  52.                 validweapon = false;
  53.                 break;
  54.             }
  55.         }
  56.         if(validweapon == false)
  57.         {
  58.             CallRemoteFunction("OnPlayerTriggerbot", "i", playerid);
  59.             return 0;
  60.         }
  61.     }
  62.     PlayerAimed{ playerid } = false;
  63.    
  64.     #if defined hook_OnPlayerWeaponShot
  65.         hook_OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ);
  66.     #endif
  67.    
  68.     return 1;
  69. }
  70. //- - - -
  71. #if defined hook_OnPlayerWeaponShot
  72.     forward hook_OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ);
  73. #endif
  74.  
  75. #if defined _ALS_OnPlayerWeaponShot
  76.     #undef OnPlayerWeaponShot
  77. #else
  78.     #define _ALS_OnPlayerWeaponShot
  79. #endif
  80.  
  81. #define OnPlayerWeaponShot hook_OnPlayerWeaponShot
  82. //- - - -
  83. #if defined hook_OnPlayerUpdate
  84.     forward hook_OnPlayerUpdate(playerid);
  85. #endif
  86.  
  87. #if defined _ALS_OnPlayerUpdate
  88.     #undef OnPlayerUpdate
  89. #else
  90.     #define _ALS_OnPlayerUpdate
  91. #endif
  92.  
  93. #define OnPlayerUpdate hook_OnPlayerUpdate
  94. //- - - -
  95. forward OnPlayerTriggerbot(playerid);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement