Advertisement
Guest User

Antisobeit Lite

a guest
Mar 25th, 2017
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.43 KB | None | 0 0
  1. #include <a_samp>
  2. #include <zcmd>
  3.  
  4.  
  5. /*
  6.  
  7. @ Titel: Antisobeit Lite
  8. @ Author: JustMe.77
  9. @ Version: 1.0.0
  10.  
  11. */
  12.  
  13. static sVehicle[MAX_PLAYERS],
  14. sTimer[MAX_PLAYERS],
  15. bool:sCheckMade[MAX_PLAYERS];
  16.  
  17. #define Version "1.0.0"
  18.  
  19. enum pStuff
  20. {
  21.     p_Weapons[13],
  22.     p_Ammo[13]
  23. }
  24.  
  25. static PlayerInfo[MAX_PLAYERS][pStuff];
  26.  
  27. // Custom Callbacks
  28.  
  29. forward OnPlayerSobeitDetect(playerid);
  30. public OnPlayerSobeitDetect(playerid)
  31. {
  32.     new str[144];
  33.     format(str, sizeof(str), "{FF0000}Report: {%06x}%s {FFFFFF}wird verdächtigt {FF0000}Sobeit{FFFFFF} zu verwenden.", GetPlayerColor(playerid) >>> 8, GetName(playerid));
  34.     SendClientMessageToAll(-1, str);
  35.     return 1;
  36. }
  37.  
  38. forward WeaponCheck(playerid);
  39. public WeaponCheck(playerid)
  40. {
  41.     new weaponid, ammo;
  42.     GetPlayerWeaponData(playerid, 1, weaponid, ammo);
  43.     if(weaponid == WEAPON_GOLFCLUB)
  44.     {
  45.         RemovePlayerWeapon(playerid, 2);
  46.         CallLocalFunction("OnPlayerSobeitDetect", "i", playerid);
  47.     }
  48.     KillTimer(sTimer[playerid]);
  49. }
  50.  
  51. forward SobeitCheck(playerid);
  52. public SobeitCheck(playerid)
  53. {
  54.  
  55.     //Save Stuff
  56.     for (new i = 0; i <= 12; i++) GetPlayerWeaponData(playerid, i, PlayerInfo[playerid][p_Weapons][i], PlayerInfo[playerid][p_Ammo][i]);
  57.  
  58.     //Reset Stuff
  59.     ResetPlayerWeapons(playerid);
  60.  
  61.     new Float:x, Float:y, Float:z;
  62.     GetPlayerPos(playerid, x, y, z);
  63.     sVehicle[playerid] = CreateVehicle(457, x, y, z, 0, -1, -1, -1, 0);
  64.     PutPlayerInVehicle(playerid, sVehicle[playerid], 0);
  65.     sTimer[playerid] = SetTimerEx("WeaponCheck", 1000, false, "i", playerid);
  66.     DestroyVehicle(sVehicle[playerid]);
  67.     sCheckMade[playerid] = true;
  68.  
  69.     //Give Stuff back
  70.     for(new i=0; i < 13; i++)GivePlayerWeapon(playerid,PlayerInfo[playerid][p_Weapons][i], PlayerInfo[playerid][p_Ammo][i]);
  71.     GivePlayerWeapon(playerid,PlayerInfo[playerid][p_Weapons], PlayerInfo[playerid][p_Ammo]);
  72. }
  73.  
  74. // Default Callbacks
  75.  
  76. public OnFilterScriptInit()
  77. {
  78.     print(" ");
  79.     print(" ===============================");
  80.     print(" ");
  81.     print("      AntiSobeit Lite loaded.");
  82.     print(" ");
  83.     printf("      Version:  %s", Version);
  84.     print(" ");
  85.     print("      (c) 2017 JustMe.77");
  86.     print(" ");
  87.     print(" ===============================");
  88.     return 1;
  89. }
  90.  
  91. public OnFilterScriptExit()
  92. {
  93.     print(" ");
  94.     print(" ===============================");
  95.     print(" ");
  96.     print("   AntiSobeit Lite unloaded.");
  97.     print(" ");
  98.     print(" ===============================");
  99.     print(" ");
  100.     return 1;
  101. }
  102.  
  103. public OnPlayerConnect(playerid)
  104. {
  105.     sCheckMade[playerid] = false;
  106.     return 1;
  107. }
  108.  
  109. public OnPlayerDisconnect(playerid, reason)
  110. {
  111.     //Safe is safe..
  112.     KillTimer(sTimer[playerid]);
  113.     DestroyVehicle(sVehicle[playerid]);
  114.     return 1;
  115. }
  116.  
  117. public OnPlayerSpawn(playerid)
  118. {
  119.     if(sCheckMade[playerid] == false)
  120.     {
  121.         SetTimerEx("SobeitCheck", 1000, false, "i", playerid);
  122.     }
  123.     return 1;
  124. }
  125.  
  126.  
  127. // Useful Functions w/ Stock keyword
  128.  
  129. stock GetName(playerid)
  130. {
  131.     new name[MAX_PLAYER_NAME];
  132.     GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  133.     return name;
  134. }
  135.  
  136. stock RemovePlayerWeapon(playerid, weaponid)
  137. {
  138.     new plyWeapons[12];
  139.     new plyAmmo[12];
  140.  
  141.     for(new slot = 0; slot != 12; slot++)
  142.     {
  143.         new wep, ammo;
  144.         GetPlayerWeaponData(playerid, slot, wep, ammo);
  145.        
  146.         if(wep != weaponid)
  147.         {
  148.             GetPlayerWeaponData(playerid, slot, plyWeapons[slot], plyAmmo[slot]);
  149.         }
  150.     }
  151.    
  152.     ResetPlayerWeapons(playerid);
  153.     for(new slot = 0; slot != 12; slot++)
  154.     {
  155.         GivePlayerWeapon(playerid, plyWeapons[slot], plyAmmo[slot]);
  156.     }
  157. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement