Advertisement
EnzoMetlc

[FS] Control of the vehicle.

Aug 31st, 2013
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.78 KB | None | 0 0
  1. /*
  2. Script created by EnzoMetlc.
  3. Link: http: // forum.sa-mp.com/showthread.php? T=468914
  4. */
  5.  
  6. #include <a_samp>
  7. #pragma tabsize 0
  8.  
  9.  
  10.  
  11. new Engine[MAX_PLAYERS], Hood[MAX_PLAYERS], Alarm[MAX_PLAYERS], Trunk[MAX_PLAYERS];
  12. new engine, bonnet, lights, alarm, doors, boot, objective, Vehiculo;
  13.  
  14. #define ENGINE 123
  15. #define ALARM 124
  16. #define HOOD 125
  17. #define TRUNK 126
  18.  
  19.  
  20.  
  21. public OnPlayerCommandText(playerid, cmdtext[])
  22. {
  23. if (strcmp("/cv", cmdtext, true, 10) == 0)
  24. {
  25. if(IsPlayerInAnyVehicle(playerid))
  26. {
  27. DialogVehicleControl(playerid);
  28. }
  29. else
  30. {
  31. SendClientMessage(playerid, -1, "{F11515}[<!>] You are not in a Vehicle.");
  32. }
  33. return 1;
  34. }
  35. return 0;
  36. }
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  44. {
  45. Trunk[playerid] = 0;
  46. Hood[playerid] = 0;
  47. Alarm[playerid] = 0;
  48. Engine[playerid] = 0;
  49. return 1;
  50. }
  51.  
  52.  
  53.  
  54. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  55. {
  56. switch(dialogid)
  57. {
  58. case 1000:
  59. {
  60. if(response)
  61. switch(listitem)
  62. {
  63. case 0:
  64. {
  65. ShowPlayerDialog(playerid, ENGINE, DIALOG_STYLE_LIST, "{00FFFF}Engine.", "Turn vehicle.\nTurn off vehicle.", "Select", "Cancel");
  66. }
  67. case 1:
  68. {
  69. ShowPlayerDialog(playerid, TRUNK, DIALOG_STYLE_LIST, "{00FFFF}Trunk", "Open trunk.\nClose trunk.", "Select", "Cancel");
  70. }
  71. case 2:
  72. {
  73. ShowPlayerDialog(playerid, HOOD, DIALOG_STYLE_LIST, "{00FFFF}Hood", "Open hood.\nClosed hood.", "Select", "Cancel");
  74. }
  75. case 3:
  76. {
  77. ShowPlayerDialog(playerid, ALARM, DIALOG_STYLE_LIST, "{00FFFF}Alarm", "Turn alarm.\nTurn off alarm.", "Select", "Cancel");
  78. }
  79. }
  80. }
  81.  
  82.  
  83.  
  84.  
  85. case ENGINE:
  86. {
  87. if(!response) return DialogVehicleControl(playerid);
  88. switch(listitem)
  89. {
  90. case 0:
  91. {
  92. if(Engine[playerid] == 0)
  93. {
  94. Vehiculo = GetPlayerVehicleID(playerid);
  95. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  96. SetVehicleParamsEx(Vehiculo, true, lights, alarm, doors, bonnet, boot, objective);
  97. GameTextForPlayer(playerid, "~w~Engine ~r~on~w~.", 2000, 3);
  98. Engine[playerid] = 1;
  99. return 1;
  100. } else {
  101. GameTextForPlayer(playerid, "~w~The engine was already ~r~on~w~.", 2000, 3);
  102. }
  103. }
  104. case 1:
  105. {
  106. if(Engine[playerid] == 1)
  107. {
  108. Vehiculo = GetPlayerVehicleID(playerid);
  109. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  110. SetVehicleParamsEx(Vehiculo, false, lights, alarm, doors, bonnet, boot, objective);
  111. GameTextForPlayer(playerid, "~w~Engine ~r~off~w~.", 2000, 3);
  112. Engine[playerid] = 0;
  113. return 1;
  114. } else {
  115. GameTextForPlayer(playerid, "~w~The engine was already ~r~off~w~.", 2000, 3);
  116. }
  117. }
  118. }
  119. }
  120.  
  121. case TRUNK:
  122. {
  123. if(!response) return DialogVehicleControl(playerid);
  124. switch(listitem)
  125. {
  126. case 0:
  127. {
  128. if(Trunk[playerid] == 0)
  129. {
  130. Vehiculo = GetPlayerVehicleID(playerid);
  131. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  132. SetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, true, objective);
  133. GameTextForPlayer(playerid, "~w~Trunk ~r~open~w~.", 2000, 3);
  134. Trunk[playerid] = 1;
  135. return 1;
  136. }
  137. else
  138. {
  139. GameTextForPlayer(playerid, "~w~The trunk was already ~r~open~w~.", 2000, 3);
  140. }
  141. }
  142. case 1:
  143. {
  144. if(Trunk[playerid] == 1)
  145. {
  146. Vehiculo = GetPlayerVehicleID(playerid);
  147. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  148. SetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, false, objective);
  149. GameTextForPlayer(playerid, "~w~Trunk ~r~closed~w~.", 2000, 3);
  150. Trunk[playerid] = 0;
  151. return 1;
  152. }
  153. else
  154. {
  155. GameTextForPlayer(playerid, "~w~The trunk was already ~r~closed~w~.", 2000, 3);
  156. }
  157. }
  158. }
  159. }
  160.  
  161. case HOOD:
  162. {
  163. if(!response) return DialogVehicleControl(playerid);
  164. switch(listitem)
  165. {
  166. case 0:
  167. {
  168. if(Hood[playerid] == 0)
  169. {
  170. Vehiculo = GetPlayerVehicleID(playerid);
  171. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  172. SetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, true, boot, objective);
  173. GameTextForPlayer(playerid, "~w~Hood ~r~open~w~.", 2000, 3);
  174. Hood[playerid] = 1;
  175. return 1;
  176. }
  177. else
  178. {
  179. GameTextForPlayer(playerid, "~w~The hood was already ~r~open~w~.", 2000, 3);
  180. }
  181. }
  182. case 1:
  183. {
  184. if(Hood[playerid] == 1)
  185. {
  186. Vehiculo = GetPlayerVehicleID(playerid);
  187. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  188. SetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, false, boot, objective);
  189. GameTextForPlayer(playerid, "~w~Hood ~r~closed~w~.", 2000, 3);
  190. Hood[playerid] = 0;
  191. return 1;
  192. }
  193. else
  194. {
  195. GameTextForPlayer(playerid, "~w~The hood was already ~r~closed~w~.", 2000, 3);
  196. }
  197. }
  198. }
  199. }
  200.  
  201.  
  202.  
  203. case ALARM:
  204. {
  205. if(!response) return DialogVehicleControl(playerid);
  206. switch(listitem)
  207. {
  208. case 0:
  209. {
  210. if(Alarm[playerid] == 0)
  211. {
  212. Vehiculo = GetPlayerVehicleID(playerid);
  213. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  214. SetVehicleParamsEx(Vehiculo, engine, lights, true, doors, bonnet, boot, objective);
  215. GameTextForPlayer(playerid, "~w~Alarm ~r~on!~w~.", 2000, 3);
  216. Alarm[playerid] = 1;
  217. return 1;
  218. }
  219. else
  220. {
  221. GameTextForPlayer(playerid, "~w~The alarm was already ~r~on~w~.", 2000, 3);
  222. }
  223. }
  224. case 1:
  225. {
  226. if(Alarm[playerid] == 1)
  227. {
  228. Vehiculo = GetPlayerVehicleID(playerid);
  229. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  230. SetVehicleParamsEx(Vehiculo, engine, lights, false, doors, bonnet, boot, objective);
  231. GameTextForPlayer(playerid, "~w~Alarmed ~r~silenced~w~.", 2000, 3);
  232. Alarm[playerid] = 0;
  233. return 1;
  234. }
  235. else
  236. {
  237. GameTextForPlayer(playerid, "~w~The alarm is already ~r~muted~w~.", 2000, 3);
  238. }
  239. }
  240. }
  241. }
  242. }
  243. return 1;
  244. }
  245.  
  246. public OnPlayerStateChange(playerid, newstate, oldstate)
  247. {
  248. if(oldstate == PLAYER_STATE_DRIVER && newstate == PLAYER_STATE_ONFOOT)
  249. {
  250. Vehiculo = GetPlayerVehicleID(playerid);
  251. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  252. SetVehicleParamsEx(Vehiculo, engine, lights, false, doors, bonnet, boot, objective);
  253. Alarm[playerid] = 0;
  254. }
  255. if(GetPlayerState(playerid) == 2 && newstate == PLAYER_STATE_ONFOOT)
  256. {
  257. Vehiculo = GetPlayerVehicleID(playerid);
  258. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  259. SetVehicleParamsEx(Vehiculo, false, lights, alarm, doors, bonnet, boot, objective);
  260. Engine[playerid] = 0;
  261. }
  262. return 1;
  263. }
  264.  
  265. public OnPlayerExitVehicle(playerid, vehicleid)
  266. {
  267. if(GetPlayerState(playerid) == 2)
  268. {
  269. GetPlayerVehicleID(playerid);
  270. GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
  271. SetVehicleParamsEx(vehicleid, false, lights, alarm, doors, bonnet, boot, objective);
  272. Engine[playerid] = 0;
  273. }
  274. return 1;
  275. }
  276.  
  277.  
  278. stock DialogVehicleControl(playerid)
  279. {
  280. ShowPlayerDialog(playerid, 1000, DIALOG_STYLE_LIST, "{00FFFF}Vehicle.", "Engine\nHood\nTrunk\nAlarm", "Select", "Cancel");
  281. return 1;
  282. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement