Advertisement
Guest User

sistema de eventosV2 By Alexis

a guest
May 11th, 2013
663
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 23.83 KB | None | 0 0
  1. #include <a_samp>
  2. #pragma tabsize 0
  3. //========================DEFINE DE MENU EVENTOS===================/
  4. #define MENU_EVENT
  5.  
  6. // DCMD
  7. #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  8. //========================COLORES=============================/
  9. #define AMARELO 0xF9F900FF
  10. #define VERMELHO 0xFF0000FF
  11. #define CELESTE 0x40BFF5
  12. #define red 0xFF0000AA
  13. #define ROJOSEXY 0xFF0000AA
  14. #define AMARILLOMASSEXY 0xFFFF00AA
  15. #define blue 0xFFFF00FF
  16. #define azul 0xFFFF00FF
  17. //======================Enum Del ConfigEvento================//
  18. enum ConfigEvento
  19. {
  20. Float:x1,
  21. Float:y2,
  22. Float:z3,
  23. Interior,
  24. PosicionEvento,
  25. VirtualWorld,
  26. bool:Cerrado,
  27. bool:Creado,
  28. SkinEvento,
  29. };
  30. //======================NEWS===========================//
  31. new Evento[ConfigEvento];//LA VARIABLE DEL EVENTO
  32. new Int[MAX_PLAYERS];//INTERIOR DEL EVENTO
  33. new VW[MAX_PLAYERS];// Virtual World del evento es el que guarda el virtual world osea para que no aiga bugs
  34. new Skin[MAX_PLAYERS];// Este es al auto skin osea si el evento tiene un skin cuando entre ese skin se le pondra
  35. new Cars[MAX_PLAYERS] = -1;// LOS CARROS
  36. new bool:FueraDeEvento[MAX_PLAYERS];//ESTE CONFIRMA SI ESTA AFUERA O DENTRO DEL EVENTO
  37. new Granada;//Variable Del Evento Granada
  38. new MENU_EVENTOS_CONFIG = 300;// Este es El MENU EVENTOS
  39. new string2[256];
  40. new Float:Pos[MAX_PLAYERS][4];
  41. new SinComandos[MAX_PLAYERS];
  42. new WarWeapons[MAX_PLAYERS];//Variable Del Evento Minigun War
  43.  
  44. new VehicleNames[212][] = {
  45. "Landstalker","Bravura","Buffalo","Linerunner","Pereniel","Sentinel","Dumper","Firetruck","Trashmaster","Stretch","Manana","Infernus",
  46. "Voodoo","Pony","Mule","Cheetah","Ambulance","Leviathan","Moonbeam","Esperanto","Taxi","Washington","Bobcat","Mr Whoopee","BF Injection",
  47. "Hunter","Premier","Enforcer","Securicar","Banshee","Predator","Bus","Rhino","Barracks","Hotknife","Trailer","Previon","Coach","Cabbie",
  48. "Stallion","Rumpo","RC Bandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer","Turismo","Speeder",
  49. "Reefer","Tropic","Flatbed","Yankee","Caddy","Solair","Berkley's RC Van","Skimmer","PCJ-600","Faggio","Freeway","RC Baron","RC Raider",
  50. "Glendale","Oceanic","Sanchez","Sparrow","Patriot","Quad","Coastguard","Dinghy","Hermes","Sabre","Rustler","ZR3 50","Walton","Regina",
  51. "Comet","BMX","Burrito","Camper","Marquis","Baggage","Dozer","Maverick","News Chopper","Rancher","FBI Rancher","Virgo","Greenwood",
  52. "Jetmax","Hotring","Sandking","Blista Compact","Police Maverick","Boxville","Benson","Mesa","RC Goblin","Hotring Racer A","Hotring Racer B",
  53. "Bloodring Banger","Rancher","Super GT","Elegant","Journey","Bike","Mountain Bike","Beagle","Cropdust","Stunt","Tanker","RoadTrain",
  54. "Nebula","Majestic","Buccaneer","Shamal","Hydra","FCR-900","NRG-500","HPV1000","Cement Truck","Tow Truck","Fortune","Cadrona","FBI Truck",
  55. "Willard","Forklift","Tractor","Combine","Feltzer","Remington","Slamvan","Blade","Freight","Streak","Vortex","Vincent","Bullet","Clover",
  56. "Sadler","Firetruck","Hustler","Intruder","Primo","Cargobob","Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster A",
  57. "Monster B","Uranus","Jester","Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight","Trailer",
  58. "Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley","Stafford","BF-400","Newsvan","Tug","Trailer A","Emperor",
  59. "Wayfarer","Euros","Hotdog","Club","Trailer B","Trailer C","Andromada","Dodo","RC Cam","Launch","Police Car (LSPD)","Police Car (SFPD)",
  60. "Police Car (LVPD)","Police Ranger","Picador","S.W.A.T. Van","Alpha","Phoenix","Glendale","Sadler","Luggage Trailer A","Luggage Trailer B",
  61. "Stair Trailer","Boxville","Farm Plow","Utility Trailer"
  62. };
  63. #if defined FILTERSCRIPT
  64.  
  65. public OnFilterScriptInit()
  66. {
  67. print("\n--------------------------------------");
  68. print(" Sistema De Eventos Creado Por Agusto(ALEXIS)");
  69. print("--------------------------------------\n");
  70. return 1;
  71. }
  72.  
  73. public OnFilterScriptExit()
  74. {
  75. return 1;
  76. }
  77.  
  78. #else
  79.  
  80. main()
  81. {
  82. print("\n----------------------------------");
  83. print(" Sistema De Eventos Creador Por Agusto(ALEXIS)");
  84. print("----------------------------------\n");
  85. }
  86. #endif
  87.  
  88. #if defined MENU_EVENT
  89. dcmd_menueventos(playerid,params[]){
  90. if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, red, "<ERROR> {FFFFFF}Usted No Es Administrador RCON!");
  91. #pragma unused params
  92. return ShowPlayerDialog(playerid,MENU_EVENTOS_CONFIG,DIALOG_STYLE_LIST,"Menu de Eventos","Crear Evento\nPocision del Evento Aqui\nConfigurar El Evento!\nCerrar Evento\nTerminar Evento\nAnunciar Evento\nAbrir Evento\nActivar o Desactivar Evento Granada\nActivar Minigun War\nDesactivar Minigun War","Seleccionar","Salir");
  93. }
  94.  
  95.  
  96. dcmd_armasevento(playerid,params[]){
  97. if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, red, "<ERROR> {FFFFFF}Usted No Es Administrador RCON!");
  98. if(!Evento[Creado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] No hay ni un evento usa /MenuEventos");
  99. new tmp[256]; new idx;
  100. tmp = strtok(params, idx);
  101. if(!strlen(tmp)) return SendClientMessage(playerid, VERMELHO, "[ERROR] Use: /ArmasEvento [ID DA ARMA] [MUNICION]");
  102. new Arma, Municao;
  103. Arma = strval(tmp);
  104. tmp = strtok(params, idx);
  105. if(!strlen(tmp)) return SendClientMessage(playerid, VERMELHO, "[ERROR] Use: /ArmasEvento [ID DA ARMA] [MUNICION]");
  106. Municao = strval(tmp);
  107. if(Arma > 43) return SendClientMessage(playerid, VERMELHO, "[ERROR] ID De arma entre 0 e 43!");
  108. if(Municao < 1) return SendClientMessage(playerid, VERMELHO, "[ERROR] La Municion debe ser mayor a 0!");
  109.  
  110. for(new i, p = GetMaxPlayers(); i < p; i ++)
  111. {
  112. if(!FueraDeEvento[i]) continue;
  113. FueraDeEvento[playerid] = true;
  114. GivePlayerWeapon(i, Arma, Municao);
  115. new Nombre[256];
  116. new string[256];
  117. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  118. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Ha Armado El Evento Con Un {FFFFFF}%s y %d", Nombre,Arma,Municao);
  119. SendClientMessageToAll(red,string);
  120. }
  121. return SendClientMessage(playerid,red,"Has Armado el evento");
  122. }
  123. dcmd_autosevento(playerid,params[]){
  124. if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, red, "<ERROR> {FFFFFF}Usted No Es Administrador RCON!");
  125. if(!Evento[Creado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] No hay ni un evento usa /MenuEventos");
  126. new tmp[256],idx;
  127. tmp = strtok(params, idx);
  128. if(!strlen(tmp)) return SendClientMessage(playerid, VERMELHO, "[ERROR] Use: /AutosEvento [MODELO]");
  129. new Modelo = strval(tmp), Float:x, Float:y, Float:z;
  130. if(Modelo < 400 || Modelo > 611) return SendClientMessage(playerid, VERMELHO, "[ERROR] EL modelo del veiculo deve ser mayor que 400 y menor que 611!");
  131. for(new i = 0; i < sizeof Cars; i ++) { DestroyVehicle(Cars[i]); Cars[i] = -1; }
  132. for(new i, p = GetMaxPlayers(); i < p; i++)
  133. {
  134. if(!FueraDeEvento[i]) continue;
  135. GetPlayerPos(i, x, y, z);
  136. Cars[i] = CreateVehicle(Modelo, x, y, z, 0, random(255), random(255), -1);
  137. PutPlayerInVehicle(i, Cars[i], 0);
  138. LinkVehicleToInterior(Cars[i], GetPlayerInterior(i));
  139. AddVehicleComponent(Cars[i], 1010);
  140. new Nombre[256];
  141. new string[256];
  142. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  143. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Ha Creado Carros En El {FFFFFF}Evento %s",Nombre,VehicleNames[Modelo-400]);
  144. SendClientMessageToAll(red,string);
  145. }
  146. return SendClientMessage(playerid,red,"Has Creado Un Carro!");
  147. }
  148. dcmd_skinevento(playerid,params[]){
  149. if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, red, "<ERROR> {FFFFFF}Usted No Es Administrador RCON!");
  150. if(!Evento[Creado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] No hay ni un evento usa /MenuEventos");
  151. new tmp[256],idx;
  152. tmp = strtok(params,idx);
  153. if(!strlen(tmp)) return SendClientMessage(playerid, VERMELHO, "[ERROR] Use: /SkinEvento [ID Skin]");
  154. new skinmodel = strval(tmp);
  155. if(skinmodel < 0 || skinmodel > 299) return SendClientMessage(playerid, VERMELHO,"El skin tiene que ser mayor de 0 y menor de 299");
  156. for(new i, p = GetMaxPlayers(); i < p; i ++)
  157. {
  158. FueraDeEvento[playerid] = true;
  159. if(!FueraDeEvento[i]) continue;
  160. SetPlayerSkin(i,skinmodel);
  161. }
  162. new Nombre[256];
  163. format(string2,sizeof(string2),"{FFFF00}El Adminitrador {FFFFFF}%s {FFFF00}Ha Puesto El Skin {FFFFFF}%d {FFFF00}Ha Todos En El {FFFFFF}Evento",Nombre,skinmodel);
  164. return SendClientMessageToAll(0xFF0000FF,string2);
  165. }
  166. #endif
  167. dcmd_irevento(playerid,params[]){
  168. #pragma unused params
  169.  
  170. if(!Evento[Creado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] No hay ni un evento Creado");
  171. if(Evento[Cerrado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] El evento esta cerrado nadie puede entrar dile a un admin que lo abra");
  172. if(FueraDeEvento[playerid]) return SendClientMessage(playerid, VERMELHO, "[ERROR] Ya estás en el evento!");
  173. GetPlayerPos(playerid, Pos[playerid][0], Pos[playerid][1], Pos[playerid][2]);
  174. GetPlayerFacingAngle(playerid, Pos[playerid][3]);
  175. SetCameraBehindPlayer(playerid);
  176. Int[playerid] = GetPlayerInterior(playerid);
  177. VW[playerid] = GetPlayerVirtualWorld(playerid);
  178. Skin[playerid] = GetPlayerSkin(playerid);
  179. SendClientMessage(playerid, AMARELO, "[INFO] Has entrado al evento usa /SalirEvento si no quieres continuar");
  180. SetPlayerPos(playerid, Evento[x1]+1, Evento[y2], Evento[z3]+0.5);
  181. SetPlayerInterior(playerid, Evento[Interior]);
  182. SetPlayerVirtualWorld(playerid, Evento[VirtualWorld]);
  183. FueraDeEvento[playerid] = true;
  184. for(new i, p = GetMaxPlayers(); i < p; i ++)
  185. {
  186. if(!FueraDeEvento[i]) continue;
  187. }
  188. return 1;
  189. }
  190. public OnPlayerCommandText(playerid, cmdtext[])
  191. {
  192. if(SinComandos[playerid] == 1) return SendClientMessage(playerid,red,"Los Comandos estan desactivados en el evento");
  193.  
  194. dcmd(irevento,8,cmdtext);
  195. dcmd(menueventos,11,cmdtext);
  196. dcmd(skinevento,10,cmdtext);
  197. dcmd(armasevento,11,cmdtext);
  198. dcmd(autosevento,11,cmdtext);
  199. return 0;
  200. }
  201. public OnPlayerConnect(playerid)
  202. {
  203. ResetPlayerWeapons(playerid);// en caso que un player se desconecte y tenga las granadas
  204. return 1;
  205. }
  206.  
  207. public OnPlayerDisconnect(playerid, reason)
  208. {
  209. ResetPlayerWeapons(playerid);// en caso que un player se desconecte y tenga las granadas
  210. return 1;
  211. }
  212.  
  213. public OnPlayerSpawn(playerid)
  214. {
  215. if(Granada == 1)
  216. {
  217. SendClientMessage(playerid, AMARILLOMASSEXY,"El evento de Granadas esta activado, toma tus 100 granadas");
  218. GivePlayerWeapon(playerid, 16, 100);
  219. }
  220. return 1;
  221. }
  222. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  223. {
  224. //new string2[256];
  225.  
  226. if(dialogid == MENU_EVENTOS_CONFIG)
  227. {
  228. if(!response) return SendClientMessage(playerid,red,"Has Cancelado");
  229. else
  230. {
  231. switch(listitem)
  232. {
  233. case 0:
  234. {
  235. SetPlayerVirtualWorld(playerid, 50);
  236. if(Evento[Creado]) return SendClientMessage(playerid, VERMELHO, "{FF0000}Hay un evento en progreso espera a que termine");
  237. Evento[VirtualWorld] = GetPlayerVirtualWorld(playerid);
  238. Evento[Interior] = GetPlayerInterior(playerid);
  239. new Nombre[256];
  240. new string[256];
  241. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  242. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Ha Creado Un Evento, Espere Hasta Que Abra {FFFFFF}El Evento", Nombre);
  243. SendClientMessageToAll(red,string);
  244. Evento[Creado] = true;
  245. Evento[Cerrado] = true;
  246. }
  247. case 1:
  248. {
  249. if(!Evento[Creado]) return SendClientMessage(playerid,red,"[Error]: No hay un evento en progreso");
  250. Evento[PosicionEvento] = true;
  251. GetPlayerPos(playerid, Evento[x1], Evento[y2], Evento[z3]);
  252. SendClientMessage(playerid,red,"{FFFF00}<INFO> {ffffff}Has escojido la posicion del evento aqui");
  253. }
  254. case 2:
  255. {
  256. ShowPlayerDialog(playerid,MENU_EVENTOS_CONFIG+1,DIALOG_STYLE_LIST,"Configurar El Evento!","Desarmar A Todos Del Evento\nVida y Chaleco Evento\nArmas Evento\nAutos Evento\nActivar Comandos\nDesactivar Comandos\nCongelar Evento\nDescongelar Evento\nSkin Evento","Seleccionar","Atras");
  257. }
  258. case 3:
  259. {
  260. if(!Evento[Creado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] No existe un evento creado!");
  261. if(Evento[Cerrado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] El Evento yá está cerrado!");
  262. Evento[Cerrado] = true;
  263. new Nombre[256];
  264. new string[256];
  265. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  266. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Ha Cerrado El Evento, Ya No Puden Entrar Al {FFFFFF}Evento.", Nombre);
  267. SendClientMessageToAll(red,string);
  268. }
  269. case 4:
  270. {
  271. if(!Evento[Creado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] No hay un evento Creado");
  272. Evento[Creado] = false;
  273. new Nombre[MAX_PLAYER_NAME];
  274. new string[256];
  275. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  276. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Ha Terminado El {FFFFFF}Evento", Nombre);
  277. Evento[PosicionEvento] = false;
  278. SendClientMessageToAll(red,string);
  279. for(new i, p = GetMaxPlayers(); i < p; i ++)
  280. {
  281. if(!FueraDeEvento[i]) continue;
  282. SetPlayerPos(i, Pos[i][0], Pos[i][1], Pos[i][2]);
  283. SetPlayerFacingAngle(i, Pos[i][3]);
  284. SetCameraBehindPlayer(i);
  285. SinComandos[i] = 0;
  286. SetPlayerInterior(i, Int[i]);
  287. SetPlayerVirtualWorld(i, VW[i]);
  288.  
  289. SetPlayerSkin(i, Skin[i]);
  290. FueraDeEvento[i] = false;
  291. SendClientMessage(i,red,"Has sido spawneado en la pocision que estabas antes de entrar en el evento");
  292. }
  293. for(new i = 0; i < sizeof Cars; i++) { DestroyVehicle(Cars[i]); }
  294. }
  295. case 5:
  296. {
  297. if(!Evento[Creado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] No existe un evento creado!");
  298. if(Evento[Cerrado]) return SendClientMessage(playerid,red,"[ERROR]: No puedes Anunciar el evento esta CERRADO");
  299. new string[256];
  300. new Nombre[256];
  301. format(string, 256,"{FFFF00}<ZONA SIN CONTROL>{FFFFFF}Evento Abierto!, Usa {FFFF00}/IREVENTO {ffffff}Para Ir!.", Nombre);
  302. SendClientMessageToAll(red,string);
  303. SendClientMessageToAll(0xFF0000FF,"[==================================]");
  304. SendClientMessageToAll(0x00FFFFFF," Evento Abierto Usa ");
  305. SendClientMessageToAll(0x00FFFFFF," /IREVENTO ");
  306. SendClientMessageToAll(0xFF0000FF,"[==================================]");
  307. GameTextForAll("~n~_~n~_~n~_~n~~b~/Irevento",4000,6);
  308. }
  309. case 6:
  310. {
  311. if(!Evento[Creado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] No hay evento en progreso");
  312. if(!Evento[Cerrado]) return SendClientMessage(playerid, VERMELHO, "[ERROR] El evento ya esta abierto");
  313. if(!Evento[PosicionEvento]) return SendClientMessage(playerid,VERMELHO,"[ERROR]: Por favor seleccione una pocision para el evento");
  314. Evento[Cerrado] = false;
  315. new Nombre[256];
  316. new string[256];
  317. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  318. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Abrio El Evento, Usa {FFFFFF}/IREVENTO {FFFF00}Para Entrar!.", Nombre);
  319. SendClientMessageToAll(red,string);
  320. GameTextForAll("~n~_~n~_~n~_~n~~b~/Irevento",4000,6);
  321. }
  322. case 7:
  323. {
  324. if(Granada == 1)
  325. {
  326. Granada = 0;
  327.  
  328. new Nombre[MAX_PLAYERS];
  329. new stringa[256];
  330. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  331. format(stringa, sizeof(stringa), "El administrador %s ha desactivado el evento Granada", Nombre);
  332. SendClientMessageToAll(AMARILLOMASSEXY,stringa);
  333.  
  334. SendClientMessageToAll(AMARILLOMASSEXY, "Ya no podras obtener granadas");
  335.  
  336. for(new i = 0; i < MAX_PLAYERS; i++)
  337. {
  338. PlayerPlaySound(i, 1057, 0.0, 0.0, 0.0);
  339. GivePlayerWeapon(i, 17, 0);
  340. }
  341. }
  342. else
  343. if(Granada == 0)
  344. {
  345. Granada = 1;
  346.  
  347. new Nombre[MAX_PLAYERS];
  348. new stringa[256];
  349. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  350. format(stringa, sizeof(stringa), "El administrador %s ha activado el evento Granada", Nombre);
  351. SendClientMessageToAll(AMARILLOMASSEXY,stringa);
  352.  
  353. SendClientMessageToAll(AMARILLOMASSEXY, "Ahora puedes usar las granadas para matar, cada ves que mueras volveras a tener 100 granadas");
  354.  
  355. for(new i = 0; i < MAX_PLAYERS; i++)
  356. {
  357. PlayerPlaySound(i, 1057, 0.0, 0.0, 0.0);
  358. GivePlayerWeapon(i, 16, 100);
  359. }
  360. }
  361. }
  362. case 8:
  363. {
  364. new nameid[256],string[256];
  365. GetPlayerName(playerid,nameid,sizeof(nameid));
  366. format(string,sizeof(string),"El Administrador %s ah iniciado la guerra de miniguns",nameid);
  367. SendClientMessageToAll(blue,string);
  368. SendRconCommand("mapname MinigunWar");
  369. for(new i = 0; i < MAX_PLAYERS; i++)
  370. {
  371. GivePlayerWeapon(i,38,9999999);
  372. WarWeapons[i] = 1;
  373. }
  374. }
  375. case 9:
  376. {
  377. new nameid[256],string[256];
  378. GetPlayerName(playerid,nameid,sizeof(nameid));
  379. format(string,sizeof(string),"El Administrador %s ah terminado la guerra la guerra de miniguns",nameid);
  380. SendClientMessageToAll(blue,string);
  381. SendClientMessageToAll(blue,"[INFO]: La guerra a finalizado usa /armas para volver a sacar tus armas");
  382. SendRconCommand("mapname San Andreas");
  383. for(new i = 0; i < MAX_PLAYERS; i++){
  384. ResetPlayerWeapons(i);
  385. WarWeapons[i] = 0;
  386. }
  387. return GameTextForAll("_~n~_~n~_~n~_~n~_~n~~r~Guerra OFF",4000,6);
  388. }
  389. }
  390. }
  391. return 1;
  392. }
  393. //Configuracion de eventos
  394. if(dialogid == MENU_EVENTOS_CONFIG+1)
  395. {
  396. if(!response) ShowPlayerDialog(playerid,MENU_EVENTOS_CONFIG,DIALOG_STYLE_LIST,"Menu De Eventos","Crear Evento\nPocision del Evento Aqui\nConfigurar El Evento!\nCerrar Evento\nTerminar Evento\nAnunciar Evento\nAbrir Evento\nActivar o Desactivar Evento Granada\nActivar Minigun War\nDesactivar Minigun War","Seleccionar","Salir");
  397.  
  398. else
  399. {
  400. switch(listitem)
  401. {
  402. case 0:
  403. {
  404. if(!Evento[Creado]) return SendClientMessage(playerid,red,"[ERROR]: No hay un evento en progreso");
  405. new Nombre[256];
  406. new string[256];
  407. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  408. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Ha Desarmado A Todos Los Del {FFFFFF}Evento", Nombre);
  409. SendClientMessageToAll(red,string);
  410. for(new i, p = GetMaxPlayers(); i < p; i ++)
  411. {
  412. if(!FueraDeEvento[i]) continue;
  413. ResetPlayerWeapons(i);
  414. }
  415. }
  416. case 1:
  417. {
  418. if(!Evento[Creado]) return SendClientMessage(playerid,red,"[Error]: No hay un evento en progreso");
  419. new Nombre[256];
  420. new string[256];
  421. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  422. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Ha Restaurado Vida Y Chaleco En El {FFFFFF}Evento!.", Nombre);
  423. SendClientMessageToAll(red,string);
  424. for(new i, p = GetMaxPlayers(); i < p; i ++)
  425. {
  426. if(!FueraDeEvento[i]) continue;
  427. SetPlayerHealth(i, 100);
  428. SetPlayerArmour(i, 100);
  429. }
  430. }
  431. case 2:
  432. {
  433. if(!Evento[Creado]) return SendClientMessage(playerid,red,"[ERROR]: No hay un evento en progreso");
  434. //if(!Evento[Cerrado]) return SendClientMessage(playerid,red,"No esta abierto");
  435. ShowPlayerDialog(playerid,4,1,"Armar Evento","Armar Evento usa la id de la arma q quieres","Aceptar","Cancelar");
  436. }
  437. case 3:
  438. {
  439. SendClientMessage(playerid,red,"Por favor usa /AutosEvento [ID/NAME]");
  440. }
  441. case 4:
  442. {
  443. if(!Evento[Creado]) return SendClientMessage(playerid,red,"[ERROR]: No hay un evento en progreso");
  444. new Nombre[256];
  445. new string[256];
  446. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  447. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Activo Los Comandos En El {FFFFFF}Evento", Nombre);
  448. SendClientMessageToAll(red,string);
  449. for(new i, p = GetMaxPlayers(); i < p; i ++)
  450. {
  451. if(!FueraDeEvento[i]) continue;
  452. SinComandos[i] = 0;
  453. }
  454. }
  455. case 5:
  456. {
  457. if(!Evento[Creado]) return SendClientMessage(playerid,red,"[Error]: No hay un evento en progreso");
  458. new Nombre[256];
  459. new string[256];
  460. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  461. format(string, 256,"{FFFF00}El Administrador %s {FFFF00}Ha Desactivado Los Comandos En El {FFFFFF}Evento", Nombre);
  462. SendClientMessageToAll(red,string);
  463. for(new i, p = GetMaxPlayers(); i < p; i ++)
  464. {
  465. if(!FueraDeEvento[i]) continue;
  466. SinComandos[i] = 1;
  467. }
  468. }
  469. case 6:
  470. {
  471. if(!Evento[Creado]) return SendClientMessage(playerid,red,"[ERROR]: No hay un evento en progreso");
  472. new Nombre[256];
  473. new string[256];
  474. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  475. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Ha Congelado A Todos En El {FFFFFF}Evento", Nombre);
  476. SendClientMessageToAll(red,string);
  477. for(new i, p = GetMaxPlayers(); i < p; i ++)
  478. {
  479. if(!FueraDeEvento[i]) continue;
  480. TogglePlayerControllable(i, 0);
  481. }
  482. }
  483. case 7:
  484. {
  485. if(!Evento[Creado]) return SendClientMessage(playerid,red,"[ERROR]: No hay un evento en progreso");
  486. new Nombre[256];
  487. new string[256];
  488. GetPlayerName(playerid, Nombre, sizeof(Nombre));
  489. format(string, 256,"{FFFF00}El Administrador {FFFFFF}%s {FFFF00}Ha Descongelado A Todos En El {FFFFFF}Evento", Nombre);
  490. SendClientMessageToAll(red,string);
  491. for(new i, p = GetMaxPlayers(); i < p; i ++)
  492. {
  493. if(!FueraDeEvento[i]) continue;
  494. TogglePlayerControllable(i, 1);
  495. }
  496. }
  497. case 8:
  498. {
  499. if(!Evento[Creado]) return SendClientMessage(playerid,red,"No hay evento");
  500. //if(!Evento[Cerrado]) return SendClientMessage(playerid,red,"Evento Cerrado");
  501. ShowPlayerDialog(playerid,2,1,"Setear Skin Evento","Introdusca la id del skin que desea setear en el evento","Setear","Cancelar");
  502. }
  503. }
  504. }
  505. return 1;
  506. }
  507. if(dialogid == 8)
  508. {
  509. if(!response) return 1;
  510. if(!strlen(inputtext)) return ShowPlayerDialog(playerid,8,1,"Autos Evento","{0000FF}Escoja Nombre o ID del auto","Acpetar","Salir");
  511. new Modelo = strval(inputtext),Float:x,Float:y,Float:z;
  512. if(Modelo < 400 || Modelo > 611) return ShowPlayerDialog(playerid,8,1,"Autos Evento","{0000FF}Escoja Nombre o ID del auto 400 611","Acpetar","Salir");
  513. for(new i = 0; i < sizeof Cars; i ++) { DestroyVehicle(Cars[i]); Cars[i] = -1; }
  514. new String[256],name[256];
  515. GetPlayerName(playerid,name,256);
  516. format(String, sizeof String, "El Administrador {FFFFFF}%s{0000FF} A Dado El Vehiculo {FFFFFF}%s{0000FF} para todos En El Evento!", name, VehicleNames[Modelo-400]);
  517. SendClientMessageToAll(azul, String);
  518. for(new i, p = GetMaxPlayers(); i < p; i++)
  519. {
  520. if(!FueraDeEvento[i] == false) continue;
  521. GetPlayerPos(i, x, y, z);
  522. Cars[i] = CreateVehicle(Modelo, x, y, z, 0, random(255), random(255), -1);
  523. PutPlayerInVehicle(i, Cars[i], 0);
  524. LinkVehicleToInterior(Cars[i], GetPlayerInterior(i));
  525. AddVehicleComponent(Cars[i], 1010);
  526. }
  527. return 1;
  528. }
  529. if(dialogid == 2)
  530. {
  531. if(!response) return ShowPlayerDialog(playerid,2,1,"Setear Skin Evento","Introdusca la id del skin que desea setear en el evento","Setear","Cancelar");
  532. if(!strlen(inputtext)) return ShowPlayerDialog(playerid,2,1,"Setear Skin Evento","Introdusca la id del skin que desea setear en el evento","Setear","Cancelar");
  533. new skin = strval(inputtext);
  534. if(skin <0 || skin >299) return ShowPlayerDialog(playerid,2,1,"Setear Skin Evento","Introdusca la id del skin que desea setear en el evento de 0 a 299","Setear","Cancelar");
  535. new name[256],string[256];
  536. GetPlayerName(playerid,name,256);
  537. format(string,256,"El administrador {FFFFFF}%s{0000FF} ha setado el skin {FFFFFF}(%d){0000FF} a todos en el evento",name,skin);
  538. SendClientMessageToAll(azul,string);
  539. Evento[SkinEvento] = skin;
  540. for(new i, p = GetMaxPlayers(); i < p; i ++)
  541. {
  542. //FueraDeEvento[playerid] = true;
  543. if(!FueraDeEvento[i]) continue;
  544. SetPlayerSkin(i,skin);
  545. }
  546. return 1;
  547. }
  548. if(dialogid == 4)
  549. {
  550. if(!response) return SendClientMessage(playerid,red,"Has Cancelado");
  551. if(!strlen(inputtext)) ShowPlayerDialog(playerid,4,1,"Armar Evento","{FF0000}No has introducido la id de tu arma","Aceptar","Cancelar");
  552. new arma = strval(inputtext);
  553. new weaponname[256];
  554. GetWeaponName(arma,weaponname,sizeof(weaponname));
  555. new name[256],string[256];
  556. GetPlayerName(playerid,name,256);
  557. format(string,256,"El Administrador {FFFFFF}%s{0000FF} ha dado un/a {FFFFFF}(%s){0000FF} a todos en el evento",name,weaponname);
  558. SendClientMessageToAll(azul,string);
  559. for(new i, p = GetMaxPlayers(); i < p; i ++)
  560. {
  561. if(!FueraDeEvento[i]) continue;
  562. //FueraDeEvento[playerid] = true;
  563. GivePlayerWeapon(i,arma,500);
  564. }
  565. return 1;
  566. }
  567. return 1;
  568. }
  569. strtok(const string[], &index)
  570. {
  571. new length = strlen(string);
  572. while ((index < length) && (string[index] <= ' '))
  573. {
  574. index++;
  575. }
  576.  
  577. new offset = index;
  578. new result[20];
  579. while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  580. {
  581. result[index - offset] = string[index];
  582. index++;
  583. }
  584. result[index - offset] = EOS;
  585. return result;
  586. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement