Advertisement
EnzoMetlc

[FS] Control del Vehículo.

Aug 28th, 2013
401
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.52 KB | None | 0 0
  1. /*
  2. Script creado por EnzoMetlc.
  3. Topic: http://forum.sa-mp.com/showthread.php?t=468914
  4. */
  5.  
  6. #include <a_samp>
  7. #pragma tabsize 0
  8.  
  9.  
  10. new Motor[MAX_PLAYERS], Capo[MAX_PLAYERS], Alarma[MAX_PLAYERS], Maletero[MAX_PLAYERS];
  11. new engine, bonnet, lights, alarm, doors, boot, objective, Vehiculo;
  12.  
  13. #define MOTOR 123
  14. #define ALARMA 124
  15. #define CAPO 125
  16. #define MALETERO 126
  17.  
  18.  
  19.  
  20. public OnPlayerCommandText(playerid, cmdtext[])
  21. {
  22. if (strcmp("/cv", cmdtext, true, 10) == 0)
  23. {
  24. if(IsPlayerInAnyVehicle(playerid))
  25. {
  26. DialogControlVehiculo(playerid);
  27. }
  28. else
  29. {
  30. SendClientMessage(playerid, -1, "{F11515}[<!>] Usted no está en un Vehículo.");
  31. }
  32. return 1;
  33. }
  34. return 0;
  35. }
  36.  
  37. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  38. {
  39. Maletero[playerid] = 0;
  40. Capo[playerid] = 0;
  41. Alarma[playerid] = 0;
  42. Motor[playerid] = 0;
  43. return 1;
  44. }
  45.  
  46.  
  47.  
  48. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  49. {
  50. switch(dialogid)
  51. {
  52. case 1000:
  53. {
  54. if(response)
  55. switch(listitem)
  56. {
  57. case 0:
  58. {
  59. ShowPlayerDialog(playerid, MOTOR, DIALOG_STYLE_LIST, "{00FFFF}Motor", "Encender vehículo.\nApagar vehículo.", "Selecionar", "Cancelar");
  60. }
  61. case 1:
  62. {
  63. ShowPlayerDialog(playerid, MALETERO, DIALOG_STYLE_LIST, "{00FFFF}Maletero", "Abrir maletero.\nCerrar maletero.", "Seleccionar", "Cancelar");
  64. }
  65. case 2:
  66. {
  67. ShowPlayerDialog(playerid, CAPO, DIALOG_STYLE_LIST, "{00FFFF}Capó", "Abrir capó.\nCerrar capó", "Seleccionar", "Cancelar");
  68. }
  69. case 3:
  70. {
  71. ShowPlayerDialog(playerid, ALARMA, DIALOG_STYLE_LIST, "{00FFFF}Alarma", "Encender alarma.\nApagar alarma.", "Seleccionar", "Cancelar");
  72. }
  73. }
  74. }
  75.  
  76.  
  77.  
  78.  
  79. case MOTOR:
  80. {
  81. if(!response) return DialogControlVehiculo(playerid);
  82. switch(listitem)
  83. {
  84. case 0:
  85. {
  86. if(Motor[playerid] == 0)
  87. {
  88. Vehiculo = GetPlayerVehicleID(playerid);
  89. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  90. SetVehicleParamsEx(Vehiculo, true, lights, alarm, doors, bonnet, boot, objective);
  91. GameTextForPlayer(playerid, "~w~Motor ~r~encendido~w~.", 2000, 3);
  92. Motor[playerid] = 1;
  93. return 1;
  94. } else {
  95. GameTextForPlayer(playerid, "~w~El motor ya estaba encendido.", 2000, 3);
  96. }
  97. }
  98. case 1:
  99. {
  100. if(Motor[playerid] == 1)
  101. {
  102. Vehiculo = GetPlayerVehicleID(playerid);
  103. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  104. SetVehicleParamsEx(Vehiculo, false, lights, alarm, doors, bonnet, boot, objective);
  105. GameTextForPlayer(playerid, "~w~Motor ~r~apagado~w~.", 2000, 3);
  106. Motor[playerid] = 0;
  107. return 1;
  108. } else {
  109. GameTextForPlayer(playerid, "~w~El motor ya estaba apagado.", 2000, 3);
  110. }
  111. }
  112. }
  113. }
  114.  
  115. case MALETERO:
  116. {
  117. if(!response) return DialogControlVehiculo(playerid);
  118. switch(listitem)
  119. {
  120. case 0:
  121. {
  122. if(Maletero[playerid] == 0)
  123. {
  124. Vehiculo = GetPlayerVehicleID(playerid);
  125. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  126. SetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, true, objective);
  127. GameTextForPlayer(playerid, "~w~Maletero ~r~abierto~w~.", 2000, 3);
  128. Maletero[playerid] = 1;
  129. return 1;
  130. }
  131. else
  132. {
  133. GameTextForPlayer(playerid, "~w~El maletero ya estaba abierto.", 2000, 4);
  134. }
  135. }
  136. case 1:
  137. {
  138. if(Maletero[playerid] == 1)
  139. {
  140. Vehiculo = GetPlayerVehicleID(playerid);
  141. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  142. SetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, false, objective);
  143. GameTextForPlayer(playerid, "~w~Maletero ~r~cerrado~w~.", 2000, 3);
  144. Maletero[playerid] = 0;
  145. return 1;
  146. }
  147. else
  148. {
  149. GameTextForPlayer(playerid, "~w~El maletero ya estaba cerrado.", 2000, 3);
  150. }
  151. }
  152. }
  153. }
  154.  
  155. case CAPO:
  156. {
  157. if(!response) return DialogControlVehiculo(playerid);
  158. switch(listitem)
  159. {
  160. case 0:
  161. {
  162. if(Capo[playerid] == 0)
  163. {
  164. Vehiculo = GetPlayerVehicleID(playerid);
  165. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  166. SetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, true, boot, objective);
  167. GameTextForPlayer(playerid, EStexto("~w~Capó ~r~abierto~w~."), 2000, 3);
  168. Capo[playerid] = 1;
  169. return 1;
  170. }
  171. else
  172. {
  173. GameTextForPlayer(playerid, EStexto("~w~El capó ya estaba abierto."), 2000, 3);
  174. }
  175. }
  176. case 1:
  177. {
  178. if(Capo[playerid] == 1)
  179. {
  180. Vehiculo = GetPlayerVehicleID(playerid);
  181. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  182. SetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, false, boot, objective);
  183. GameTextForPlayer(playerid, EStexto("~w~Capó ~r~cerrado~w~."), 2000, 3);
  184. Capo[playerid] = 0;
  185. return 1;
  186. }
  187. else
  188. {
  189. GameTextForPlayer(playerid, EStexto("~w~El capó ya estaba cerrado."), 2000, 3);
  190. }
  191. }
  192. }
  193. }
  194.  
  195.  
  196.  
  197. case ALARMA:
  198. {
  199. if(!response) return DialogControlVehiculo(playerid);
  200. switch(listitem)
  201. {
  202. case 0:
  203. {
  204. if(Alarma[playerid] == 0)
  205. {
  206. Vehiculo = GetPlayerVehicleID(playerid);
  207. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  208. SetVehicleParamsEx(Vehiculo, engine, lights, true, doors, bonnet, boot, objective);
  209. GameTextForPlayer(playerid, "~w~Alarma ~r~encendida!~w~.", 2000, 3);
  210. Alarma[playerid] = 1;
  211. return 1;
  212. }
  213. else
  214. {
  215. GameTextForPlayer(playerid, EStexto("~w~La alarma ya está encendida."), 2000, 3);
  216. }
  217. }
  218. case 1:
  219. {
  220. if(Alarma[playerid] == 1)
  221. {
  222. Vehiculo = GetPlayerVehicleID(playerid);
  223. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  224. SetVehicleParamsEx(Vehiculo, engine, lights, false, doors, bonnet, boot, objective);
  225. GameTextForPlayer(playerid, "~w~Alarma ~r~silenciada~w~.", 2000, 3);
  226. Alarma[playerid] = 0;
  227. return 1;
  228. }
  229. else
  230. {
  231. GameTextForPlayer(playerid, EStexto("~w~La alarma ya está silenciada."), 2000, 3);
  232. }
  233. }
  234. }
  235. }
  236. }
  237. return 1;
  238. }
  239.  
  240. public OnPlayerStateChange(playerid, newstate, oldstate)
  241. {
  242. if(oldstate == PLAYER_STATE_DRIVER && newstate == PLAYER_STATE_ONFOOT)
  243. {
  244. Vehiculo = GetPlayerVehicleID(playerid);
  245. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  246. SetVehicleParamsEx(Vehiculo, engine, lights, false, doors, bonnet, boot, objective);
  247. Alarma[playerid] = 0;
  248. }
  249. if(GetPlayerState(playerid) == 2 && newstate == PLAYER_STATE_ONFOOT)
  250. {
  251. Vehiculo = GetPlayerVehicleID(playerid);
  252. GetVehicleParamsEx(Vehiculo, engine, lights, alarm, doors, bonnet, boot, objective);
  253. SetVehicleParamsEx(Vehiculo, false, lights, alarm, doors, bonnet, boot, objective);
  254. Motor[playerid] = 0;
  255. }
  256. return 1;
  257. }
  258.  
  259. public OnPlayerExitVehicle(playerid, vehicleid)
  260. {
  261. if(GetPlayerState(playerid) == 2)
  262. {
  263. GetPlayerVehicleID(playerid);
  264. GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
  265. SetVehicleParamsEx(vehicleid, false, lights, alarm, doors, bonnet, boot, objective);
  266. Motor[playerid] = 0;
  267. }
  268. return 1;
  269. }
  270.  
  271.  
  272. stock DialogControlVehiculo(playerid)
  273. {
  274. ShowPlayerDialog(playerid, 1000, DIALOG_STYLE_LIST, "{00FFFF}Vehículo", "Motor\nMaletero\nCapó\nAlarma", "Seleccionar", "Cancelar");
  275. return 1;
  276. }
  277.  
  278.  
  279.  
  280. stock EStexto(text[])
  281. {
  282. new TextoES[256];
  283. for(new i; i < strlen(text); i++)
  284. {
  285. switch(text[i])
  286. {
  287. case 'Ú', 'ú': TextoES[i] = 'ª';
  288. case 'Í', 'í': TextoES[i] = '¢';
  289. case 'Ó', 'ó': TextoES[i] = '¦';
  290. case 'É', 'é': TextoES[i] = 'ž';
  291. case 'Á', 'á': TextoES[i] = '˜';
  292. case 'Ñ', 'ñ': TextoES[i] = '®';
  293. case '¿': TextoES[i] = '¯';
  294. case '¡': TextoES[i] = '^';
  295. default: TextoES[i] = text[i];
  296. }
  297. }
  298. return TextoES;
  299. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement