Advertisement
_DarkLight_

☼•:. Armed_Car .:•☼

Feb 6th, 2016
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.16 KB | None | 0 0
  1. //=========Includes=====
  2. ////////////////////////|
  3. #include <a_samp> //|
  4. #include <zcmd> //|
  5. ////////////////////////|
  6. //======================
  7.  
  8. //==================Defines===============
  9. #define COLOR_BLACK 0x000000AA
  10. #define red 0xFF0000AA
  11. #define COLOR_YELLOW 0xFFFF00AA
  12. #define COLOR_LIGHTBLUE 0x33CCFFAA
  13. #define COLOR_BLUE 0x0000BBAA
  14. //========================================
  15.  
  16. public OnFilterScriptInit()
  17. {
  18. print("\n--------------------------------------");
  19. print(" Super Car By Dark_Light Loaded :D ");
  20. print("--------------------------------------\n");
  21. SetTimer("explodev",1,1);
  22. return 1;
  23. }
  24.  
  25. public OnFilterScriptExit()
  26. {
  27. print("\n--------------------------------------");
  28. print(" Super Car By Dark_Light Unloaded :( ");
  29. print("--------------------------------------\n");
  30.  
  31. return 1;
  32. }
  33.  
  34. //==============Enums===
  35. enum pInfo
  36. {
  37. usesuperc,
  38. }
  39. //======================
  40.  
  41. //==============NEWS============
  42. new
  43. kratstimer[MAX_PLAYERS],
  44. kratsremove[MAX_PLAYERS],
  45. godc[MAX_PLAYERS],
  46. expv[MAX_PLAYERS],
  47. Float:BX,
  48. Float:BY,
  49. Float:BZ,
  50. PlayerInfo[MAX_PLAYERS][pInfo],
  51. krtasa[MAX_OBJECTS],
  52. ch7al;
  53. //==============================
  54.  
  55. //================Forwards======
  56. forward Firekrats(playerid);
  57. forward godcar(playerid);
  58. forward removekrtas(playerid);
  59. forward explodev(playerid);
  60. //==============================
  61. crkrtasa(playerid)
  62. {
  63. new Float:ox, Float:oy, Float:oz, Float:a;
  64. GetPlayerPos(playerid, ox, oy, oz);
  65. GetPlayerFacingAngle(playerid, a);
  66. SetPlayerHealth(playerid, 200);
  67. ox += (0 * floatsin(-a, degrees));//ch7al b3ida
  68. oy += (0 * floatcos(-a, degrees));//ch7al b3ida
  69. krtasa[ch7al] = CreateObject(343, ox, oy, oz, -90, 0.0, a+5);
  70. movekrtasa(playerid);
  71. ch7al +=1;
  72. return 1;
  73. }
  74. knbola(playerid)
  75. {
  76. new Float:ox, Float:oy, Float:oz, Float:a;
  77. GetPlayerPos(playerid, ox, oy, oz);
  78. GetPlayerFacingAngle(playerid, a);
  79. SetPlayerHealth(playerid, 200);
  80. /*
  81. ox += (0 * floatsin(-a, degrees));//ch7al b3ida
  82. oy += (0 * floatcos(-a, degrees));//ch7al b3ida
  83. */
  84. krtasa[ch7al] = CreateObject(354, ox, oy, oz, -90, 0.0, a);
  85. moveknbola(playerid);
  86. ch7al +=1;
  87. return 1;
  88. }
  89. movekrtasa(playerid)
  90. {
  91. new Float:px, Float:py, Float:pz;
  92. GetPlayerPos(playerid, px, py, pz);
  93. GetXYInFrontOfPlayer(playerid, px, py, 100000);//,dist
  94. MoveObject(krtasa[ch7al],px,py,pz,100);//,speed
  95. }
  96. moveknbola(playerid)
  97. {
  98. new Float:px, Float:py, Float:pz;
  99. GetPlayerPos(playerid, px, py, pz);
  100. GetXYInFrontOfPlayer(playerid, px, py, 100000);//,dist
  101. MoveObject(krtasa[ch7al],px,py,pz,50);//,speed
  102. }
  103. //============Publics===========
  104. public explodev(playerid)
  105. {
  106. new Float:X, Float:Y, Float:Z;
  107. GetObjectPos(krtasa[ch7al-1], X, Y, Z);
  108. // CreateExplosion(X, Y , Z, 2,10.0);
  109. for(new v; v < MAX_VEHICLES; v ++)
  110. {
  111. if(GetVehicleDistanceFromPoint(v,X,Y,Z) <= 4.0 && v != GetPlayerVehicleID(playerid))
  112. {
  113. SetVehicleHealth(v,0);
  114. }
  115. if(GetPlayerDistanceFromPoint(v,X,Y,Z) <= 4.0 && v != playerid)
  116. {
  117. SetPlayerHealth(v,0);
  118. }
  119. }
  120. }
  121. //========================================================
  122. public Firekrats(playerid)
  123. {
  124. new KEYS, UD, LR; GetPlayerKeys( playerid, KEYS, UD, LR );
  125. new Float:PX, Float:PY, Float:PZ; GetPlayerPos( playerid, PX, PY, PZ );
  126. if(KEYS == KEY_FIRE)
  127. {
  128. SoundForAll(1135,PX,PY,PZ);
  129. crkrtasa(playerid);
  130. KillTimer(kratsremove[playerid]),kratsremove[playerid] = SetTimerEx("removekrtas",1000,1,"d",playerid);
  131. }
  132. if(KEYS == KEY_FIRE && LR == KEY_RIGHT)
  133. {
  134. SoundForAll(1135,PX,PY,PZ);
  135. crkrtasa(playerid);
  136. KillTimer(kratsremove[playerid]),kratsremove[playerid] = SetTimerEx("removekrtas",1000,1,"d",playerid);
  137. }
  138. if(KEYS == KEY_FIRE && LR == KEY_LEFT)
  139. {
  140. SoundForAll(1135,PX,PY,PZ);
  141. crkrtasa(playerid);
  142. KillTimer(kratsremove[playerid]),kratsremove[playerid] = SetTimerEx("removekrtas",1000,1,"d",playerid);
  143. }
  144. return true;
  145. }
  146. //==============================================================================
  147. public godcar(playerid)
  148. {
  149. /////////////////////////////////////////////////
  150. SetVehicleHealth(GetPlayerVehicleID(playerid),100000);
  151. RepairVehicle(GetPlayerVehicleID(playerid));
  152. /////////////////////////////////////////////////
  153. return true;
  154. }
  155. //==============================================================================
  156. public removekrtas(playerid)
  157. {
  158. for(new i = 0; i < MAX_PLAYERS; i++)
  159. {
  160. if(ch7al <= 0) return ch7al = 0,KillTimer(kratsremove[playerid]);
  161. DestroyObject(krtasa[i]);
  162. ch7al =0;
  163. }
  164. return true;
  165. }
  166. //===============================================================================
  167.  
  168. public OnPlayerConnect(playerid)
  169. {
  170. kratstimer[playerid] = SetTimerEx("Firekrats",66,1,"d",playerid),KillTimer(kratstimer[playerid]);
  171. SetPVarInt(playerid,"xsabobj1",CreateObject(1004,0,0,-1000,0,0,0,100));
  172. SetPVarInt(playerid,"xsabobj2",CreateObject(1001,0,0,-1000,0,0,0,100));
  173. SetPVarInt(playerid,"xsabobj3",CreateObject(1001,0,0,-1000,0,0,0,100));
  174. SetPVarInt(playerid,"xsabobj4",CreateObject(1001,0,0,-1000,0,0,0,100));
  175. SetPVarInt(playerid,"xsabobj7",CreateObject(1142,0,0,-1000,0,0,0,100));
  176. SetPVarInt(playerid,"xsabobj8",CreateObject(1142,0,0,-1000,0,0,0,100));
  177. SetPVarInt(playerid,"xsabobj9",CreateObject(1170,0,0,-1000,0,0,0,100));
  178. SetPVarInt(playerid,"xsabobj10",CreateObject(1149,0,0,-1000,0,0,0,100));
  179. SetPVarInt(playerid,"xsabobj11",CreateObject(1146,0,0,-1000,0,0,0,100));
  180. SetPVarInt(playerid,"xsabobj12",CreateObject(1146,0,0,-1000,0,0,0,100));
  181. SetPVarInt(playerid,"xsabobj13",CreateObject(360,0,0,-1000,0,0,0,100));
  182. SetPVarInt(playerid,"xsabobj14",CreateObject(360,0,0,-1000,0,0,0,100));
  183. SetPVarInt(playerid,"xsabobj15",CreateObject(360,0,0,-1000,0,0,0,100));
  184. SetPVarInt(playerid,"xsabobj16",CreateObject(360,0,0,-1000,0,0,0,100));
  185. SetPVarInt(playerid,"xsabobj17",CreateObject(360,0,0,-1000,0,0,0,100));
  186. SetPVarInt(playerid,"xsabobj18",CreateObject(360,0,0,-1000,0,0,0,100));
  187. SetPVarInt(playerid,"xsabobj19",CreateObject(362,0,0,-1000,0,0,0,100));
  188. SetPVarInt(playerid,"xsabobj20",CreateObject(362,0,0,-1000,0,0,0,100));
  189. return 1;
  190. }
  191.  
  192. public OnPlayerDisconnect(playerid, reason)
  193. {
  194. PlayerInfo[playerid][usesuperc] = 0;
  195. KillTimer(expv[playerid]);
  196. KillTimer(godc[playerid]);
  197. KillTimer(kratstimer[playerid]);
  198. return 1;
  199. }
  200. public OnPlayerDeath(playerid, killerid, reason)
  201. {
  202. PlayerInfo[playerid][usesuperc] = 0;
  203. KillTimer(expv[playerid]);
  204. KillTimer(godc[playerid]);
  205. KillTimer(kratstimer[playerid]);
  206. return 1;
  207. }
  208.  
  209. //================CMDS==========================================================
  210. CMD:supercoff(playerid, params[])
  211. {
  212. PlayerInfo[playerid][usesuperc] = 0;
  213. DestroyVehicle(GetPlayerVehicleID(playerid));
  214. return 1;
  215. }
  216. CMD:supercon(playerid,params[]) {
  217. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,red,"Error: You already have a vehicle");
  218. else
  219. {
  220. ////////////////////////////////////////////////////////////////////////////////////////
  221. PlayerInfo[playerid][usesuperc] = 1;
  222. KillTimer(kratstimer[playerid]),kratstimer[playerid] = SetTimerEx("Firekrats",66,1,"d",playerid);
  223. KillTimer(godc[playerid]),godc[playerid] = SetTimerEx("godcar",50,1,"d",playerid);
  224. KillTimer(expv[playerid]),expv[playerid] = SetTimerEx("explodev",1,1,"d",playerid);
  225. //////////////////////////////////////////////////////////////////////////////////////////
  226. new Float:X,Float:Y,Float:Z,Float:Angle,LVehicleIDt; GetPlayerPos(playerid,X,Y,Z); GetPlayerFacingAngle(playerid,Angle);
  227. LVehicleIDt = CreateVehicle(475,X,Y,Z,Angle,-1,-1,10000);
  228. PutPlayerInVehicle(playerid,LVehicleIDt,0);
  229. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj1"), GetPlayerVehicleID(playerid), -0.000000,0.000000,0.654999,0.000000,0.000000,0.000000);
  230. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj2"), GetPlayerVehicleID(playerid), -0.045000,-2.700001,0.084999,0.000000,0.000000,0.000000);
  231. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj3"), GetPlayerVehicleID(playerid), -0.050000,-2.700001,0.154999,0.000000,0.000000,0.000000);
  232. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj4"), GetPlayerVehicleID(playerid), -0.050000,-2.700001,0.204999,0.000000,0.000000,0.000000);
  233. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj7"), GetPlayerVehicleID(playerid), -0.300000,1.255000,0.270000,0.000000,0.000000,0.000000);
  234. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj8"), GetPlayerVehicleID(playerid), 0.309999,1.255000,0.270000,0.000000,0.000000,0.000000);
  235. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj9"), GetPlayerVehicleID(playerid), 1.060000,1.750000,-0.210000,0.000000,0.000000,0.000000);
  236. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj10"), GetPlayerVehicleID(playerid), 1.055000,-2.025000,-0.180000,0.000000,0.000000,0.000000);
  237. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj11"), GetPlayerVehicleID(playerid),-1.909998,0.934999,0.000000,0.000000,0.000000,0.000000);
  238. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj12"), GetPlayerVehicleID(playerid),1.899998,0.929999,0.000000,0.000000,0.000000,0.000000);
  239. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj13"), GetPlayerVehicleID(playerid),2.845017,1.404998,-0.069999,0.000000,0.000000,90.000000);
  240. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj14"), GetPlayerVehicleID(playerid),2.290004,1.404998,-0.074999,0.000000,0.000000,90.000000);
  241. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj15"), GetPlayerVehicleID(playerid),1.589998,1.404998,-0.074999,0.000000,0.000000,90.000000);
  242. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj16"), GetPlayerVehicleID(playerid),-1.504998,1.404998,-0.074999,0.000000,0.000000,90.000000);
  243. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj17"), GetPlayerVehicleID(playerid),-2.205003,1.404998,-0.074999,0.000000,0.000000,90.000000);
  244. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj18"), GetPlayerVehicleID(playerid),-2.810016,1.404998,-0.074999,0.000000,0.000000,90.000000);
  245. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj19"), GetPlayerVehicleID(playerid),-0.394999,2.250004,0.135000,0.000000,30.500000,90.000000);
  246. AttachObjectToVehicle(GetPVarInt(playerid,"xsabobj20"), GetPlayerVehicleID(playerid),0.354999,2.285004,0.135000,0.000000,30.500000,90.000000);
  247. AddVehicleComponent(GetPlayerVehicleID(playerid), 1079);
  248. ChangeVehicleColor(GetPlayerVehicleID(playerid),0,0);
  249. PlayerPlaySound(playerid,1133,0.0,0.0,0.0); ChangeVehiclePaintjob(LVehicleIDt,0);
  250. SetVehicleVirtualWorld(LVehicleIDt, GetPlayerVirtualWorld(playerid));
  251. LinkVehicleToInterior(LVehicleIDt, GetPlayerInterior(playerid));
  252. }
  253. return 1;
  254. }
  255. //==============================================================================
  256. public OnPlayerExitVehicle(playerid, vehicleid)
  257. {
  258. if(PlayerInfo[playerid][usesuperc] ==1)
  259. {
  260. DestroyVehicle(vehicleid);
  261. KillTimer(godc[playerid]);
  262. KillTimer(kratstimer[playerid]);
  263. DestroyObject(GetPVarInt(playerid,"xsabobj1")),DestroyObject(GetPVarInt(playerid,"xsabobj2")),DestroyObject(GetPVarInt(playerid,"xsabobj3")),DestroyObject(GetPVarInt(playerid,"xsabobj4")),DestroyObject(GetPVarInt(playerid,"xsabobj7")),DestroyObject(GetPVarInt(playerid,"xsabobj8")),DestroyObject(GetPVarInt(playerid,"xsabobj9")),DestroyObject(GetPVarInt(playerid,"xsabobj10"));
  264. DestroyObject(GetPVarInt(playerid,"xsabobj11")),DestroyObject(GetPVarInt(playerid,"xsabobj12")),DestroyObject(GetPVarInt(playerid,"xsabobj13")),DestroyObject(GetPVarInt(playerid,"xsabobj14")),DestroyObject(GetPVarInt(playerid,"xsabobj15")),DestroyObject(GetPVarInt(playerid,"xsabobj16")),DestroyObject(GetPVarInt(playerid,"xsabobj17")),DestroyObject(GetPVarInt(playerid,"xsabobj18")),DestroyObject(GetPVarInt(playerid,"xsabobj19")),DestroyObject(GetPVarInt(playerid,"xsabobj20"));
  265. cmd_supercoff(playerid,"");
  266. }
  267. return 1;
  268. }
  269. //====================================================================//
  270. forward SoundForAll(soundid,Float:X,Float:Y,Float:Z);
  271. public SoundForAll(soundid,Float:X,Float:Y,Float:Z)
  272. {
  273. for(new i = 0; i < MAX_OBJECTS; i++)
  274. {
  275. if(IsPlayerConnected(i) == 1) PlayerPlaySound(i,soundid,Float:X,Float:Y,Float:Z);
  276. }
  277. return 1;
  278. }
  279. //===================================================================//
  280. GetXYInFrontOfPlayer(playerid, &Float:x, &Float:y, Float:distance)
  281. {
  282. new Float:a;
  283. GetPlayerPos(playerid, x, y, a);
  284. GetPlayerFacingAngle(playerid, a);
  285. if (GetPlayerVehicleID(playerid))
  286. {
  287. GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
  288. }
  289. x += (distance * floatsin(-a, degrees));
  290. y += (distance * floatcos(-a, degrees));
  291. }
  292. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  293. {
  294. if(newkeys & KEY_CROUCH)
  295. {
  296. if(PlayerInfo[playerid][usesuperc] == 1) {
  297. if(IsPlayerInAnyVehicle(playerid))
  298. {
  299. GetObjectPos(GetPVarInt(playerid,"xsabobj17"),BX,BY,BZ);
  300. knbola(playerid);
  301. }
  302. }
  303. }
  304. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement