Advertisement
LeXuZ_

Anti-cheat

Oct 22nd, 2014
680
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.62 KB | None | 0 0
  1. #define FILTERSCRIPT
  2. #include <a_samp>
  3. #define SCM SendClientMessage
  4.  
  5. new JetPack[MAX_PLAYERS];
  6.  
  7.  
  8. public OnPlayerConnect(playerid)
  9. {
  10.     JetPack[playerid] = 0;
  11.     return 1;
  12. }
  13. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  14. {
  15.     if(newkeys & KEY_FIRE && ForbiddenWeap(playerid) && !IsPlayerAdmin(playerid))
  16.         {
  17.             new pname[MAX_PLAYER_NAME];
  18.             new string[124];
  19.             GetPlayerName(playerid, pname, sizeof(pname));
  20.             format(string, sizeof(string), "[Anti-Cheat] %s has been banned for weapon hacks", pname);
  21.             SendClientMessageToAll(-1,string);
  22.             print(string);
  23.             SetTimerEx("KickTimer", 10, false, "i", playerid);
  24.             BanEx(playerid,string);
  25.             return 1;
  26.         }
  27.     return 0;
  28. }
  29.  
  30. stock ForbiddenWeap(playerid)
  31. {
  32.     new wp = GetPlayerWeapon(playerid);
  33.     if( wp == 1 || wp == 2 || wp == 3 || wp == 4 || wp == 5 || wp == 6 || wp == 7 || wp == 8|| wp == 9 || wp == 10 || wp == 11 || wp == 12 || wp == 13 || wp == 14 || wp == 15 || wp == 16 || wp == 17 || wp == 18 || wp == 19 || wp == 20 || wp == 21 || wp == 22 || wp == 23 || wp == 24|| wp == 25 || wp == 26 || wp == 27 || wp == 28 || wp == 29 || wp == 30 || wp == 31 || wp == 33 || wp == 34 || wp == 35 || wp == 36|| wp == 37 || wp == 38 || wp == 39 || wp == 40 || wp == 41 || wp == 42 || wp == 43)
  34.     {
  35.      return true;
  36.     }
  37.     return false;
  38. }
  39.  
  40.  
  41. public OnRconLoginAttempt(ip[], password[], success)
  42. {
  43.     if(!success)
  44.     {
  45.  
  46.         new
  47.             IPAddr[16];
  48.  
  49.         for(new i, j = GetMaxPlayers(); i< j; i++)
  50.         {
  51.  
  52.             if(!IsPlayerConnected(i)) continue;
  53.  
  54.             GetPlayerIp(i, IPAddr, sizeof(IPAddr));
  55.  
  56.  
  57.             if(!strcmp(ip, IPAddr, false))
  58.             {
  59.                Kick(i);
  60.             }
  61.         }
  62.     }
  63.     return 1;
  64. }
  65.  
  66. public OnPlayerUpdate(playerid)
  67. {
  68.     if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK)
  69.     {
  70.         if(JetPack[playerid] == 0)
  71.         {
  72.         new string[128], targetid;
  73.         format(string, sizeof(string), "[Anti-Cheat]: %s has been banned for using jetpack hacks ",GetName(targetid));
  74.         SendClientMessageToAll(-1, string);
  75.         print(string);
  76.         SetTimerEx("KickTimer", 10, false, "i", playerid);
  77.         BanEx(playerid,string);
  78.         }
  79.         else
  80.             return 1;
  81.     }
  82.     else JetPack[playerid] = 0;
  83.     return 1;
  84. }
  85.  
  86. forward KickTimer(playerid);
  87. public KickTimer(playerid)
  88. {
  89.     Kick(playerid);
  90.     return 1;
  91. }
  92.  
  93. stock GetName(playerid)
  94. {
  95.     new
  96.     pName[MAX_PLAYER_NAME];
  97.  
  98.     GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
  99.     return pName;
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement