Advertisement
Guest User

Bomber/Super Patriot by TRTDM

a guest
Dec 14th, 2014
690
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.67 KB | None | 0 0
  1. // FS by TRTDM for TDM servers, thanks to waheguru for his blessings.
  2.  
  3. #include <a_samp>
  4.  
  5. new IsPTBAllowed[MAX_PLAYERS];
  6. #define PRESSED(%0) (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
  7.  
  8. #define COLOR_LIME 0x10F441FF
  9.  
  10. new BomberPatriot[1], PatriotObject[1];
  11.  
  12. public OnFilterScriptInit()
  13. {
  14.     BomberPatriot[0] = AddStaticVehicleEx(470,125.0996100,2015.5000000,19.2000000,267.9950000,43,62,15); // You can change the cordinates.
  15.     PatriotObject[0] = CreateObject(3267, 0, 0, 0, 0.00000, 0.00000, -183.89996);
  16.     return 1;
  17. }
  18.  
  19. public OnFilterScriptExit()
  20. {
  21.     return 1;
  22. }
  23.  
  24. public OnPlayerConnect(playerid)
  25. { ResetEverything(playerid);
  26.   return 1;
  27. }
  28.  
  29. public OnPlayerDisconnect(playerid, reason)
  30. { ResetEverything(playerid);
  31.   return 1;
  32. }
  33.  
  34. main()
  35. {
  36.     print("\n----------------------------------");
  37.     print(" FS by TRTDM");
  38.     print("----------------------------------\n");
  39. }
  40.  
  41. stock ResetEverything(playerid)
  42. {
  43.   IsPTBAllowed[playerid] = 1;
  44.   return 1;
  45. }
  46.  
  47. public OnVehicleSpawn(vehicleid)
  48. {
  49.     AttachObjectToVehicle(PatriotObject[0], BomberPatriot[0], 0.0, 0.0, 0.5, 0.0, 0.0, 0.0);
  50.     LinkVehicleToInterior(vehicleid, 0);
  51.     return 1;
  52. }
  53. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  54. {
  55.  
  56.    if(IsBomberPatriot(vehicleid))
  57.    {
  58.       SendClientMessage(playerid, COLOR_LIME, "Press Y to create explosions using SUPER PATRIOT");
  59.    }
  60.    return 1;
  61. }
  62.  
  63. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  64. {
  65.     if(newkeys == KEY_JUMP) return 0;
  66.     else if(newkeys == KEY_SPRINT) return 0;
  67.  
  68.     if(PRESSED(KEY_YES))
  69.     {
  70.        new vehicleid = GetPlayerVehicleID(playerid);
  71.        if(IsBomberPatriot(vehicleid))
  72.        {
  73.           if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  74.           {
  75.              if(IsPTBAllowed[playerid] == 0) return 0;
  76.              new Float:x, Float:y, Float:z;
  77.              GetVehiclePos(vehicleid, x, y ,z);
  78.              GetXYZInFrontOfVehicle(vehicleid, x, y, z, 35.0);
  79.              CreateExplosion(x, y, z+2, 0, 3);
  80.              IsPTBAllowed[playerid] = 0;
  81.              SetTimerEx("AntiPTBSpam",450,0,"i",playerid);
  82.           }
  83.           else return 0;
  84.       }
  85.        else return 0;
  86.     }
  87.     else return 0;
  88.     return 1;
  89. }
  90.  
  91. stock IsBomberPatriot(vehicleid)
  92. {
  93.    if(vehicleid == BomberPatriot[0]) return 1;
  94.    return 0;
  95. }
  96.  
  97. forward AntiPTBSpam(playerid);
  98. public AntiPTBSpam(playerid)
  99. {
  100.    IsPTBAllowed[playerid] = 1;
  101.    return 1;
  102. }
  103.  
  104. stock GetXYZInFrontOfVehicle(vehicleid, &Float:x, &Float:y, &Float:z, Float:distance)
  105. {
  106.     new Float:a;
  107.     GetVehiclePos(vehicleid, x, y, z);
  108.     GetVehicleZAngle(vehicleid, a);
  109.     x += (distance * floatsin(-a, degrees));
  110.     y += (distance * floatcos(-a, degrees));
  111.     z += 1.0;
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement