Advertisement
Guest User

Untitled

a guest
Aug 19th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.72 KB | None | 0 0
  1. #include <a_samp>
  2. #define GREEN 0x21DD00FF
  3. #define RED 0xE60000FF
  4. #define ADMIN_RED 0xFB0000FF
  5. #define YELLOW 0xFFFF00FF
  6. #define ORANGE 0xF97804FF
  7. #define LIGHTRED 0xFF8080FF
  8. #define LIGHTBLUE 0x00C2ECFF
  9. #define PURPLE 0xB360FDFF
  10. #define PLAYER_COLOR 0xFFFFFFFF
  11. #define BLUE 0x1229FAFF
  12. #define LIGHTGREEN 0x38FF06FF
  13. #define DARKPINK 0xE100E1FF
  14. #define DARKGREEN 0x008040FF
  15. #define ANNOUNCEMENT 0x6AF7E1FF
  16. #define COLOR_SYSTEM 0xEFEFF7AA
  17. #define GREY 0xCECECEFF
  18. #define PINK 0xD52DFFFF
  19. #define DARKGREY 0x626262FF
  20. #define AQUAGREEN 0x03D687FF
  21. #define NICESKY 0x99FFFFAA
  22. #define WHITE 0xFFFFFFFF
  23. new bool:IsInHydra[MAX_PLAYERS];
  24. new PlayerHydra[MAX_PLAYERS];
  25. new ThePartyHydra;
  26.  
  27. public OnFilterScriptInit()
  28. {
  29. for(new i; i < MAX_PLAYERS; i++) IsInHydra[i] = false;
  30. ThePartyHydra = AddStaticVehicle(520,-185.8596,1886.2292,116.3302,262.6290,0,0); // hydra
  31. return 1;
  32. }
  33. public OnFilterScriptExit()
  34. {
  35. DestroyVehicle(ThePartyHydra);
  36. return 1;
  37. }
  38. public OnPlayerConnect(playerid)
  39. {
  40. IsInHydra[playerid] = false;
  41. return 1;
  42. }
  43. public OnPlayerDisconnect(playerid, reason)
  44. {
  45. IsInHydra[playerid] = false;
  46. return 1;
  47. }
  48. public OnPlayerSpawn(playerid)
  49. {
  50. IsInHydra[playerid] = false;
  51.  
  52. return 1;
  53. }
  54. public OnPlayerDeath(playerid, killerid, reason)
  55. {
  56. return 1;
  57. }
  58. public OnVehicleSpawn(vehicleid)
  59. {
  60. return 1;
  61. }
  62. public OnVehicleDeath(vehicleid, killerid)
  63. {
  64. if (GetVehicleModel(vehicleid) == 520)
  65. {
  66. for(new i; i < GetMaxPlayers(); i++)
  67. {
  68. if (IsPlayerConnected(i))
  69. {
  70. if (IsInHydra[i] == true)
  71. {
  72. if (PlayerHydra[i] == vehicleid)
  73. {
  74. TogglePlayerSpectating(i, false);
  75. new Float:X,Float:Y,Float:Z,Float:A;
  76. GetVehiclePos(vehicleid, X, Y, Z);
  77. GetVehicleZAngle(vehicleid, A);
  78. X += (2 * floatsin(-A, degrees));
  79. Y += (2 * floatcos(-A, degrees));
  80. SetPlayerPos(i, X, Y, Z);
  81. X += (2 * floatsin(-(A-45.0), degrees));
  82. Y += (2 * floatcos(-(A-45.0), degrees));
  83. SetPlayerPos(i, X, Y, Z);
  84. SetPlayerPos(i, X, Y, Z);
  85. SetPlayerFacingAngle(i, A+90);
  86. SetCameraBehindPlayer(i);
  87. IsInHydra[i] = false;
  88. PlayerHydra[i] = 0;
  89. SetPlayerHealth(i, 0.0);
  90. }
  91. }
  92. }
  93. }
  94. }
  95. IsInHydra[killerid] = false;
  96. PlayerHydra[killerid] = 0;
  97. return 1;
  98. }
  99. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  100. {
  101. /*
  102. if (vehicleid == ThePartyHydra)
  103. {
  104. if(GetPlayerScore(playerid) < 2000)
  105. {
  106. SendClientMessage(playerid, 0xFF0000FF, "you dont have enuff points to pilot this vehicle, use [ g ] for passenger.");
  107. new Float:phx,Float:phy,Float:phz;
  108. GetVehiclePos(ThePartyHydra,phx,phy,phz);
  109. SetPlayerPos(playerid,phx,phy,phz + 2.0);
  110. return true;
  111. }
  112. }
  113. */
  114. if (GetVehicleModel(vehicleid) == 520)
  115. {
  116. if (ispassenger)
  117. {
  118. if (IsInHydra[playerid] == false)
  119. {
  120. TogglePlayerSpectating(playerid, true);
  121. PlayerSpectateVehicle(playerid, vehicleid);
  122. IsInHydra[playerid] = true;
  123. PlayerHydra[playerid] = vehicleid;
  124. }
  125. }
  126. }
  127. return 1;
  128. }
  129. /*
  130. else if (vehicleid == ThePartyHydra)
  131. {
  132. if(GetPlayerScore(playerid) < 2000)
  133. {
  134. SendClientMessage(playerid, 0xFF0000FF, "you dont have enuff points to pilot this vehicle, use [ g ] for passenger.");
  135. new Float:phx,Float:phy,Float:phz;
  136. GetVehiclePos(ThePartyHydra,phx,phy,phz);
  137. SetPlayerPos(playerid,phx,phy,phz + 2.0);
  138. return true;
  139. }
  140. }
  141. */
  142. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  143. {
  144. if (GetVehicleModel(PlayerHydra[playerid]) == 520)
  145. {
  146. new vehicleid = PlayerHydra[playerid];
  147. if (IsInHydra[playerid] == true)
  148. {
  149. if (newkeys & KEY_SECONDARY_ATTACK)
  150. {
  151. TogglePlayerSpectating(playerid, false);
  152. new Float:A = GetVehicleZAngle(vehicleid,A);
  153. new Float:phx,Float:phy,Float:phz;
  154. GetVehiclePos(ThePartyHydra,phx,phy,phz);
  155. SetPlayerPos(playerid,phx,phy,phz + 2.0);
  156. SetPlayerFacingAngle(playerid, A);
  157. SetCameraBehindPlayer(playerid);
  158. IsInHydra[playerid] = false;
  159. PlayerHydra[playerid] = 0;
  160. SetPlayerInterior(playerid,0);
  161. SetTimerEx("TherzSomthOnThWing",500,false,"i",playerid);
  162. }
  163. }
  164. }
  165. return 1;
  166. }
  167. forward TherzSomthOnThWing(playerid);
  168. public TherzSomthOnThWing(playerid)
  169. {
  170. new Float:A = GetVehicleZAngle(ThePartyHydra,A);
  171. new Float:phx,Float:phy,Float:phz;
  172. GetVehiclePos(ThePartyHydra,phx,phy,phz);
  173. SetPlayerPos(playerid,phx,phy,phz + 2.0);
  174. SetPlayerFacingAngle(playerid, A);
  175. SetCameraBehindPlayer(playerid);
  176. GivePlayerWeapon(playerid,46,1);
  177. SetPlayerInterior(playerid,0);
  178. return 1;
  179. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement