Advertisement
Guest User

MECK: EVENT SYSTEM.

a guest
Jan 1st, 2017
910
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.32 KB | None | 0 0
  1. // CREDITOS AO FILTERSCRIPT: MECK
  2. // FAVOR NÃO REMOVER OS DEVIDOS CREDITOS!
  3. // http://forum.sa-mp.com/member.php?u=291136
  4. //==============================================================================
  5. //==============================================================================
  6. //================================INCLUDES======================================
  7. #include <a_samp>
  8. #include <sscanf2>
  9. #include <ZCMD>
  10. //==============================================================================
  11. //==============================================================================
  12. //=============================DEFINES==========================================
  13. #define FILTERSCRIPT
  14. #if defined FILTERSCRIPT
  15.  
  16. #define SCM SendClientMessage
  17. #define SCMT SendClientMessageToAll
  18. #define EVENTOCMD 0
  19. //==============================================================================
  20. //==============================================================================
  21. //=============================CORES============================================
  22. #define EVENTOVERMELHO 0xFF0000AA
  23. #define EVENTOAMARELO 0xF5DEB3AA
  24. #define EVENTOAZUL 0x8000FF96
  25. //==============================================================================
  26. //==============================================================================
  27. //=============================NEWS=============================================
  28. new Float:eX,Float:eY,Float:eZ, NoEvento[MAX_PLAYERS], EventoAtivo;
  29. new Restante, Contador, Fim, Ganhador = 50;
  30. //==============================================================================
  31. //==============================================================================
  32. //=============================INICIO===========================================
  33.  
  34. #endif
  35.  
  36. public OnFilterScriptInit()
  37. {
  38. print("\n--------------------------------------");
  39. print("-------FILTERSCRIPT CRIADO POR MECK-------");
  40. print("-------NÃO REMOVA OS CREDITOS!------------");
  41. print("-------http://forum.sa-mp.com/member.php?u=291136!------------");
  42. print("--------------------------------------\n");
  43. return 1;
  44. }
  45.  
  46. public OnFilterScriptExit()
  47. {
  48. return 1;
  49. }
  50.  
  51. public OnPlayerConnect(playerid)
  52. {
  53. return 1;
  54. }
  55.  
  56. public OnPlayerDisconnect(playerid, reason)
  57. {
  58. return 1;
  59. }
  60.  
  61. public OnPlayerSpawn(playerid)
  62. {
  63. if(NoEvento[playerid] == 1)
  64. {
  65. ResetPlayerWeapons(playerid);
  66. SetPlayerHealth(playerid,100);
  67. }
  68.  
  69. return 1;
  70. }
  71.  
  72. public OnPlayerDeath(playerid, killerid, reason)
  73. {
  74. new string[128], KillerP[MAX_PLAYER_NAME], DeathP[MAX_PLAYER_NAME];
  75. if(NoEvento[playerid] == 1)
  76. {
  77. GetPlayerName(playerid, KillerP, sizeof(KillerP));
  78. GetPlayerName(playerid, DeathP, sizeof(DeathP));
  79. format(string, sizeof(string), " [EVENTO] O Jogador %d foi morto por %d [EVENTO] ", KillerP, DeathP);
  80. SCMT(EVENTOAMARELO, string);
  81. NoEvento[playerid] = 0;
  82. }
  83.  
  84. if(NoEvento[playerid] != 1)
  85. {
  86. NoEvento[killerid] ++;
  87. if(NoEvento[killerid] > Ganhador)
  88. {
  89. Ganhador = killerid;
  90. Ganhador = NoEvento[killerid];
  91.  
  92. }
  93. }
  94. return 1;
  95. }
  96.  
  97. //==============================================================================
  98. //==============================================================================
  99. //=================================COMANDOS=====================================
  100. //COMANDOS ADMIN
  101. CMD:ecriar(playerid, params[])
  102. {
  103. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  104. {
  105. if(EventoAtivo != 1)
  106. {
  107. new string[128], name[MAX_PLAYER_NAME], players = 20;
  108. GetPlayerName(playerid, name, sizeof(name));
  109. format(string, sizeof(string), " O Administrador %s criou um evento com %d vagas use /irevento", name, players);
  110. SCM(playerid, -1, "Veja os comandos de evento /ecmds");
  111. SCMT(-1,string);
  112. GameTextForAll("/irevento", 5000, 4);
  113. GetPlayerPos(playerid, eX,eY,eZ);
  114. EventoAtivo = 1;
  115. } else{
  116. SCM(playerid, -1,"Um evento já foi criado para destruir utilize /edestruir");
  117. }
  118. }
  119. return 1;
  120. }
  121.  
  122. CMD:ecmds(playerid, params[])
  123. {
  124. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  125. {
  126. new ecmd[128];
  127. strcat(ecmd, "{FFFFFF}/ecriar /etrancar /einiciar /ecolete\n");
  128. strcat(ecmd, "{FFFFFF}/evida /earmas /edestruir /irplayer /armasadm\n");
  129. strcat(ecmd, "{FFFFFF}/irevento /sairevento\n");
  130. ShowPlayerDialog(playerid, EVENTOCMD, DIALOG_STYLE_MSGBOX, "COMANDOS DE EVENTO", ecmd, "Concluido","");
  131. }
  132. return 1;
  133. }
  134.  
  135. CMD:irplayer(playerid, params[])
  136. {
  137. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  138. {
  139. new pid, Float:pix, Float:pidy, Float:pidz, string[128],name[MAX_PLAYER_NAME];
  140. GetPlayerName(playerid, name, sizeof(name));
  141. if(sscanf(params, "d", pid)) return SCM(playerid, -1, "Use /irplayer [id]");
  142. format(string, sizeof(string), "O Administrador %s foi até você",name);
  143. SCM(playerid,-1,string);
  144. GetPlayerPos(pid, pix,pidy,pidz);
  145. SetPlayerPos(playerid, pix,pidy,pidz);
  146.  
  147. }
  148. return 1;
  149. }
  150.  
  151. CMD:etrancar(playerid, params[])
  152. {
  153. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  154. {
  155. if(EventoAtivo !=2)
  156. {
  157. new string[128], name[MAX_PLAYER_NAME];
  158. GetPlayerName(playerid, name, sizeof(name));
  159. format(string, sizeof(string), "O Administrador %s trancou o evento, preparem-se o evento vai ser iniciado",name);
  160. SCMT(-1,string);
  161. SCM(playerid, -1, "Para iniciar o evento utilize /ecarregar");
  162. EventoAtivo = 2;
  163. }else{
  164. SCM(playerid, -1, " Não existe nenhum evento ativo");
  165. }
  166. }
  167. return 1;
  168. }
  169.  
  170. CMD:einiciar(playerid, params[])
  171. {
  172. if(!IsPlayerAdmin(playerid))
  173. {
  174. if(EventoAtivo == 2)
  175. {
  176. new string[128];
  177. if(sscanf(params, "i", Restante)) return SendClientMessage(playerid,-1,"Use: /contagem [segundos]");
  178. if((Restante < 1) || (Restante > 60)) return SendClientMessage(playerid, -1, "Máximo de segundos: 60");
  179. format(string, sizeof(string), "Contagem de %d segundos iniciada.", Restante);
  180. SCMT(-1, string);
  181. Contador= SetTimer("Contando", 1000, true);
  182. }
  183. }
  184. return 1;
  185. }
  186. CMD:edestruir(playerid, params[])
  187. {
  188. if(!IsPlayerAdmin(playerid))
  189. {
  190. if(EventoAtivo !=0)
  191. {
  192. for(new i = 0; i < MAX_PLAYERS; i++)
  193. {
  194. if(IsPlayerConnected(i))
  195. {
  196. if(NoEvento[i] == 1)
  197. {
  198. NoEvento[i] = 0;
  199. SpawnPlayer(i);
  200. SCM(playerid, -1," O Evento foi cancelado");
  201. }
  202. }
  203. }
  204. SCM(playerid, -1,"Você cancelou o evento, todos foram re-spawnados");
  205. KillTimer(Fim);
  206. EventoAtivo = 0;
  207. }else{
  208. SCM(playerid, -1,"Não existe nenhum evento iniciado!");
  209. }
  210. }
  211. return 1;
  212. }
  213. CMD:evida(playerid, params[])
  214. {
  215. for(new i = 0; i < MAX_PLAYERS; i++)
  216. {
  217. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  218. {
  219. if(IsPlayerConnected(i))
  220. {
  221. if(NoEvento[i] != 1)
  222. {
  223. new string[128], vida, name[MAX_PLAYER_NAME];
  224. if(sscanf(params, "i", vida)) return SCM(playerid, -1, "Use /evida [quantidade]");
  225. format(string, sizeof(string), " O Administrador %d deu a todos no evento %i de vida", name, vida);
  226. SCMT(-1, string);
  227. SetPlayerHealth(i, vida);
  228. }else{
  229. SCM(playerid, -1," Você não está em um evento");
  230. }
  231. }
  232. }
  233. }
  234. return 1;
  235. }
  236.  
  237. CMD:ecolete(playerid, params[])
  238. {
  239. for(new i = 0; i < MAX_PLAYERS; i++)
  240. {
  241. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  242. {
  243. if(IsPlayerConnected(i))
  244. {
  245. if(NoEvento[i] != 1)
  246. {
  247. new string[128], armour, name[MAX_PLAYER_NAME];
  248. if(sscanf(params, "i", armour)) return SCM(playerid, -1, "Use /ecolete [quantidade]");
  249. format(string, sizeof(string), " O Administrador %d deu a todos no evento %i de colete", name, armour);
  250. SCMT(-1, string);
  251. SetPlayerArmour(i, armour);
  252. }else{
  253. SCM(playerid, -1," Você não está em um evento");
  254. }
  255. }
  256. }
  257. }
  258. return 1;
  259. }
  260. CMD:earmas(playerid, params[])
  261. {
  262. for(new i = 0; i < MAX_PLAYERS; i++)
  263. {
  264. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  265. {
  266. if(IsPlayerConnected(i))
  267. {
  268. if(NoEvento[i] != 1)
  269. {
  270. new string[128], name[MAX_PLAYER_NAME];
  271. format(string, sizeof(string), " O Administrador %d deu armas a todos no evento", name);
  272. SCMT(-1, string);
  273. GivePlayerWeapon(i, 25,900);
  274. GivePlayerWeapon(i, 29,900);
  275. GivePlayerWeapon(i, 31,900);
  276. GivePlayerWeapon(i, 33,900);
  277. }else{
  278. SCM(playerid, -1," Você não está em um evento");
  279. }
  280. }
  281. }
  282. }
  283. return 1;
  284. }
  285.  
  286. CMD:armasadm(playerid, params[])
  287. {
  288. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  289. {
  290. GivePlayerWeapon(playerid, 16,900);
  291. GivePlayerWeapon(playerid, 35,900);
  292. GivePlayerWeapon(playerid, 38,900);
  293. GivePlayerWeapon(playerid, 39,900);
  294. }
  295. return 1;
  296. }
  297.  
  298. //-========COMANDOS JOGADORES===========
  299. //-========COMANDOS JOGADORES===========
  300. //-========COMANDOS JOGADORES===========
  301. //-========COMANDOS JOGADORES===========
  302. CMD:irevento(playerid, params[])
  303. {
  304. if(IsPlayerConnected(playerid))
  305. {
  306. if(EventoAtivo == 1)
  307. {
  308. if(NoEvento[playerid] == 0)
  309. {
  310. new string[128], name[MAX_PLAYER_NAME];
  311. GetPlayerName(playerid, name, sizeof(name));
  312. format(string, sizeof(string), "[EVENTO] O Jogador %s foi ao evento, vá você também use /irevento", name);
  313. SCM(playerid, EVENTOVERMELHO," Você teve todas as armas resetadas pelo evento para sair digite /sairevento");
  314. SCMT(EVENTOAZUL,string);
  315. TogglePlayerControllable(playerid, 0);
  316. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  317. ResetPlayerWeapons(playerid);
  318. SetPlayerPos(playerid, eX,eY,eZ);
  319. NoEvento[playerid] = 1;
  320. }else{
  321. SCM(playerid, -1, "Você já está em um evento");
  322. } }else{
  323. SCM(playerid, -1, "Um evento não foi criado ou está fechado ");
  324. } } else{
  325. SCM(playerid, -1, "Você não está conectado!");
  326. }
  327. return 1;
  328. }
  329.  
  330. CMD:sairevento(playerid, params[])
  331. {
  332. if(NoEvento[playerid] == 1)
  333. {
  334. SCM(playerid, EVENTOVERMELHO,"Você saiu do evento e teve armas e sua vida restauradas");
  335. SetPlayerHealth(playerid, 100);
  336. ResetPlayerWeapons(playerid);
  337. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  338. SetPlayerPos(playerid, 0.0, 0.0, 0.0); // cordenadas para o jogador ir depois de sair do evento
  339. NoEvento[playerid] = 0;
  340. } else{
  341. SCM(playerid, -1, " Você não está em um evento para sair!");
  342. }
  343. return 1;
  344. }
  345.  
  346. //==============================================================================
  347. //==============================================================================
  348. //=================================FORWARDS/PUBLICS=============================
  349. forward Contando();
  350. public Contando()
  351. {
  352. new string[128];
  353. if(Restante == 0)
  354. {
  355. KillTimer(Contador);
  356. GameTextForAll("~r~Evento Iniciado", 1000, 6);
  357. EventoIniciado();
  358.  
  359. return 1;
  360. }
  361. format(string, sizeof(string), "~g~%d", Restante);
  362. GameTextForAll(string, 1000, 6);
  363. Restante--;
  364. return 1;
  365. }
  366.  
  367. forward EventoIniciado();
  368. public EventoIniciado()
  369. {
  370. Ganhador = 50;
  371. for(new i = 0; i < MAX_PLAYERS; i++)
  372. {
  373. if(IsPlayerConnected(i))
  374. {
  375. if(NoEvento[i] == 1)
  376. {
  377. SCM(i, EVENTOAMARELO, " O Evento foi iniciado, e vai ser encerrado automaticamente em 10 minutos");
  378. TogglePlayerControllable(i, 1);
  379. PlayerPlaySound(i, 1057, 0.0, 0.0, 0.0);
  380. }
  381. }
  382. }
  383. Fim = SetTimer("FimDeEvento", 600000, 0);
  384. return 1;
  385. }
  386.  
  387. forward FimDeEvento();
  388. public FimDeEvento()
  389. {
  390. new string[128], name[MAX_PLAYER_NAME];
  391. for(new i = 0; i < MAX_PLAYERS; i++)
  392. {
  393. if(IsPlayerConnected(i))
  394. {
  395. if(NoEvento[i] != 0)
  396. {
  397. if(IsPlayerConnected(Ganhador))
  398. {
  399. GetPlayerName(Ganhador, name, sizeof(name));
  400. format(string, sizeof(string), "[EVENTO] O Jogador %d foi o ultimo sobrevivente do servidor, parabéns!",name);
  401. SCMT(EVENTOAZUL, string);
  402. }
  403. ResetPlayerWeapons(i);
  404. NoEvento[i] = 0;
  405. SpawnPlayer(i);
  406. GameTextForAll(" EVENTO TERMINADO ", 3000, 3);
  407. }
  408. }
  409. }
  410. return 1;
  411. }
  412. // CREDITOS AO FILTERSCRIPT: MECK
  413. // FAVOR NÃO REMOVER OS DEVIDOS CREDITOS!
  414. // http://forum.sa-mp.com/member.php?u=291136
  415. //==============================================================================
  416. //==============================================================================
  417. //================================INCLUDES======================================
  418. #include <a_samp>
  419. #include <sscanf2>
  420. #include <ZCMD>
  421. //==============================================================================
  422. //==============================================================================
  423. //=============================DEFINES==========================================
  424. #define FILTERSCRIPT
  425. #if defined FILTERSCRIPT
  426.  
  427. #define SCM SendClientMessage
  428. #define SCMT SendClientMessageToAll
  429. #define EVENTOCMD 0
  430. //==============================================================================
  431. //==============================================================================
  432. //=============================CORES============================================
  433. #define EVENTOVERMELHO 0xFF0000AA
  434. #define EVENTOAMARELO 0xF5DEB3AA
  435. #define EVENTOAZUL 0x8000FF96
  436. //==============================================================================
  437. //==============================================================================
  438. //=============================NEWS=============================================
  439. new Float:eX,Float:eY,Float:eZ, NoEvento[MAX_PLAYERS], EventoAtivo;
  440. new Restante, Contador, Fim, Ganhador = 50;
  441. //==============================================================================
  442. //==============================================================================
  443. //=============================INICIO===========================================
  444.  
  445. #endif
  446.  
  447. public OnFilterScriptInit()
  448. {
  449. print("\n--------------------------------------");
  450. print("-------FILTERSCRIPT CRIADO POR MECK-------");
  451. print("-------NÃO REMOVA OS CREDITOS!------------");
  452. print("-------http://forum.sa-mp.com/member.php?u=291136!------------");
  453. print("--------------------------------------\n");
  454. return 1;
  455. }
  456.  
  457. public OnFilterScriptExit()
  458. {
  459. return 1;
  460. }
  461.  
  462. public OnPlayerConnect(playerid)
  463. {
  464. return 1;
  465. }
  466.  
  467. public OnPlayerDisconnect(playerid, reason)
  468. {
  469. return 1;
  470. }
  471.  
  472. public OnPlayerSpawn(playerid)
  473. {
  474. if(NoEvento[playerid] == 1)
  475. {
  476. ResetPlayerWeapons(playerid);
  477. SetPlayerHealth(playerid,100);
  478. }
  479.  
  480. return 1;
  481. }
  482.  
  483. public OnPlayerDeath(playerid, killerid, reason)
  484. {
  485. new string[128], KillerP[MAX_PLAYER_NAME], DeathP[MAX_PLAYER_NAME];
  486. if(NoEvento[playerid] == 1)
  487. {
  488. GetPlayerName(playerid, KillerP, sizeof(KillerP));
  489. GetPlayerName(playerid, DeathP, sizeof(DeathP));
  490. format(string, sizeof(string), " [EVENTO] O Jogador %d foi morto por %d [EVENTO] ", KillerP, DeathP);
  491. SCMT(EVENTOAMARELO, string);
  492. NoEvento[playerid] = 0;
  493. }
  494.  
  495. if(NoEvento[playerid] != 1)
  496. {
  497. NoEvento[killerid] ++;
  498. if(NoEvento[killerid] > Ganhador)
  499. {
  500. Ganhador = killerid;
  501. Ganhador = NoEvento[killerid];
  502.  
  503. }
  504. }
  505. return 1;
  506. }
  507.  
  508. //==============================================================================
  509. //==============================================================================
  510. //=================================COMANDOS=====================================
  511. //COMANDOS ADMIN
  512. CMD:ecriar(playerid, params[])
  513. {
  514. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  515. {
  516. if(EventoAtivo != 1)
  517. {
  518. new string[128], name[MAX_PLAYER_NAME], players = 20;
  519. GetPlayerName(playerid, name, sizeof(name));
  520. format(string, sizeof(string), " O Administrador %s criou um evento com %d vagas use /irevento", name, players);
  521. SCM(playerid, -1, "Veja os comandos de evento /ecmds");
  522. SCMT(-1,string);
  523. GameTextForAll("/irevento", 5000, 4);
  524. GetPlayerPos(playerid, eX,eY,eZ);
  525. EventoAtivo = 1;
  526. } else{
  527. SCM(playerid, -1,"Um evento já foi criado para destruir utilize /edestruir");
  528. }
  529. }
  530. return 1;
  531. }
  532.  
  533. CMD:ecmds(playerid, params[])
  534. {
  535. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  536. {
  537. new ecmd[128];
  538. strcat(ecmd, "{FFFFFF}/ecriar /etrancar /einiciar /ecolete\n");
  539. strcat(ecmd, "{FFFFFF}/evida /earmas /edestruir /irplayer /armasadm\n");
  540. strcat(ecmd, "{FFFFFF}/irevento /sairevento\n");
  541. ShowPlayerDialog(playerid, EVENTOCMD, DIALOG_STYLE_MSGBOX, "COMANDOS DE EVENTO", ecmd, "Concluido","");
  542. }
  543. return 1;
  544. }
  545.  
  546. CMD:irplayer(playerid, params[])
  547. {
  548. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  549. {
  550. new pid, Float:pix, Float:pidy, Float:pidz, string[128],name[MAX_PLAYER_NAME];
  551. GetPlayerName(playerid, name, sizeof(name));
  552. if(sscanf(params, "d", pid)) return SCM(playerid, -1, "Use /irplayer [id]");
  553. format(string, sizeof(string), "O Administrador %s foi até você",name);
  554. SCM(playerid,-1,string);
  555. GetPlayerPos(pid, pix,pidy,pidz);
  556. SetPlayerPos(playerid, pix,pidy,pidz);
  557.  
  558. }
  559. return 1;
  560. }
  561.  
  562. CMD:etrancar(playerid, params[])
  563. {
  564. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  565. {
  566. if(EventoAtivo !=2)
  567. {
  568. new string[128], name[MAX_PLAYER_NAME];
  569. GetPlayerName(playerid, name, sizeof(name));
  570. format(string, sizeof(string), "O Administrador %s trancou o evento, preparem-se o evento vai ser iniciado",name);
  571. SCMT(-1,string);
  572. SCM(playerid, -1, "Para iniciar o evento utilize /ecarregar");
  573. EventoAtivo = 2;
  574. }else{
  575. SCM(playerid, -1, " Não existe nenhum evento ativo");
  576. }
  577. }
  578. return 1;
  579. }
  580.  
  581. CMD:einiciar(playerid, params[])
  582. {
  583. if(!IsPlayerAdmin(playerid))
  584. {
  585. if(EventoAtivo == 2)
  586. {
  587. new string[128];
  588. if(sscanf(params, "i", Restante)) return SendClientMessage(playerid,-1,"Use: /contagem [segundos]");
  589. if((Restante < 1) || (Restante > 60)) return SendClientMessage(playerid, -1, "Máximo de segundos: 60");
  590. format(string, sizeof(string), "Contagem de %d segundos iniciada.", Restante);
  591. SCMT(-1, string);
  592. Contador= SetTimer("Contando", 1000, true);
  593. }
  594. }
  595. return 1;
  596. }
  597. CMD:edestruir(playerid, params[])
  598. {
  599. if(!IsPlayerAdmin(playerid))
  600. {
  601. if(EventoAtivo !=0)
  602. {
  603. for(new i = 0; i < MAX_PLAYERS; i++)
  604. {
  605. if(IsPlayerConnected(i))
  606. {
  607. if(NoEvento[i] == 1)
  608. {
  609. NoEvento[i] = 0;
  610. SpawnPlayer(i);
  611. SCM(playerid, -1," O Evento foi cancelado");
  612. }
  613. }
  614. }
  615. SCM(playerid, -1,"Você cancelou o evento, todos foram re-spawnados");
  616. KillTimer(Fim);
  617. EventoAtivo = 0;
  618. }else{
  619. SCM(playerid, -1,"Não existe nenhum evento iniciado!");
  620. }
  621. }
  622. return 1;
  623. }
  624. CMD:evida(playerid, params[])
  625. {
  626. for(new i = 0; i < MAX_PLAYERS; i++)
  627. {
  628. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  629. {
  630. if(IsPlayerConnected(i))
  631. {
  632. if(NoEvento[i] != 1)
  633. {
  634. new string[128], vida, name[MAX_PLAYER_NAME];
  635. if(sscanf(params, "i", vida)) return SCM(playerid, -1, "Use /evida [quantidade]");
  636. format(string, sizeof(string), " O Administrador %d deu a todos no evento %i de vida", name, vida);
  637. SCMT(-1, string);
  638. SetPlayerHealth(i, vida);
  639. }else{
  640. SCM(playerid, -1," Você não está em um evento");
  641. }
  642. }
  643. }
  644. }
  645. return 1;
  646. }
  647.  
  648. CMD:ecolete(playerid, params[])
  649. {
  650. for(new i = 0; i < MAX_PLAYERS; i++)
  651. {
  652. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  653. {
  654. if(IsPlayerConnected(i))
  655. {
  656. if(NoEvento[i] != 1)
  657. {
  658. new string[128], armour, name[MAX_PLAYER_NAME];
  659. if(sscanf(params, "i", armour)) return SCM(playerid, -1, "Use /ecolete [quantidade]");
  660. format(string, sizeof(string), " O Administrador %d deu a todos no evento %i de colete", name, armour);
  661. SCMT(-1, string);
  662. SetPlayerArmour(i, armour);
  663. }else{
  664. SCM(playerid, -1," Você não está em um evento");
  665. }
  666. }
  667. }
  668. }
  669. return 1;
  670. }
  671. CMD:earmas(playerid, params[])
  672. {
  673. for(new i = 0; i < MAX_PLAYERS; i++)
  674. {
  675. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  676. {
  677. if(IsPlayerConnected(i))
  678. {
  679. if(NoEvento[i] != 1)
  680. {
  681. new string[128], name[MAX_PLAYER_NAME];
  682. format(string, sizeof(string), " O Administrador %d deu armas a todos no evento", name);
  683. SCMT(-1, string);
  684. GivePlayerWeapon(i, 25,900);
  685. GivePlayerWeapon(i, 29,900);
  686. GivePlayerWeapon(i, 31,900);
  687. GivePlayerWeapon(i, 33,900);
  688. }else{
  689. SCM(playerid, -1," Você não está em um evento");
  690. }
  691. }
  692. }
  693. }
  694. return 1;
  695. }
  696.  
  697. CMD:armasadm(playerid, params[])
  698. {
  699. if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, " Você não é um administrador RCON");
  700. {
  701. GivePlayerWeapon(playerid, 16,900);
  702. GivePlayerWeapon(playerid, 35,900);
  703. GivePlayerWeapon(playerid, 38,900);
  704. GivePlayerWeapon(playerid, 39,900);
  705. }
  706. return 1;
  707. }
  708.  
  709. //-========COMANDOS JOGADORES===========
  710. //-========COMANDOS JOGADORES===========
  711. //-========COMANDOS JOGADORES===========
  712. //-========COMANDOS JOGADORES===========
  713. CMD:irevento(playerid, params[])
  714. {
  715. if(IsPlayerConnected(playerid))
  716. {
  717. if(EventoAtivo == 1)
  718. {
  719. if(NoEvento[playerid] == 0)
  720. {
  721. new string[128], name[MAX_PLAYER_NAME];
  722. GetPlayerName(playerid, name, sizeof(name));
  723. format(string, sizeof(string), "[EVENTO] O Jogador %s foi ao evento, vá você também use /irevento", name);
  724. SCM(playerid, EVENTOVERMELHO," Você teve todas as armas resetadas pelo evento para sair digite /sairevento");
  725. SCMT(EVENTOAZUL,string);
  726. TogglePlayerControllable(playerid, 0);
  727. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  728. ResetPlayerWeapons(playerid);
  729. SetPlayerPos(playerid, eX,eY,eZ);
  730. NoEvento[playerid] = 1;
  731. }else{
  732. SCM(playerid, -1, "Você já está em um evento");
  733. } }else{
  734. SCM(playerid, -1, "Um evento não foi criado ou está fechado ");
  735. } } else{
  736. SCM(playerid, -1, "Você não está conectado!");
  737. }
  738. return 1;
  739. }
  740.  
  741. CMD:sairevento(playerid, params[])
  742. {
  743. if(NoEvento[playerid] == 1)
  744. {
  745. SCM(playerid, EVENTOVERMELHO,"Você saiu do evento e teve armas e sua vida restauradas");
  746. SetPlayerHealth(playerid, 100);
  747. ResetPlayerWeapons(playerid);
  748. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  749. SetPlayerPos(playerid, 0.0, 0.0, 0.0); // cordenadas para o jogador ir depois de sair do evento
  750. NoEvento[playerid] = 0;
  751. } else{
  752. SCM(playerid, -1, " Você não está em um evento para sair!");
  753. }
  754. return 1;
  755. }
  756.  
  757. //==============================================================================
  758. //==============================================================================
  759. //=================================FORWARDS/PUBLICS=============================
  760. forward Contando();
  761. public Contando()
  762. {
  763. new string[128];
  764. if(Restante == 0)
  765. {
  766. KillTimer(Contador);
  767. GameTextForAll("~r~Evento Iniciado", 1000, 6);
  768. EventoIniciado();
  769.  
  770. return 1;
  771. }
  772. format(string, sizeof(string), "~g~%d", Restante);
  773. GameTextForAll(string, 1000, 6);
  774. Restante--;
  775. return 1;
  776. }
  777.  
  778. forward EventoIniciado();
  779. public EventoIniciado()
  780. {
  781. Ganhador = 50;
  782. for(new i = 0; i < MAX_PLAYERS; i++)
  783. {
  784. if(IsPlayerConnected(i))
  785. {
  786. if(NoEvento[i] == 1)
  787. {
  788. SCM(i, EVENTOAMARELO, " O Evento foi iniciado, e vai ser encerrado automaticamente em 10 minutos");
  789. TogglePlayerControllable(i, 1);
  790. PlayerPlaySound(i, 1057, 0.0, 0.0, 0.0);
  791. }
  792. }
  793. }
  794. Fim = SetTimer("FimDeEvento", 600000, 0);
  795. return 1;
  796. }
  797.  
  798. forward FimDeEvento();
  799. public FimDeEvento()
  800. {
  801. new string[128], name[MAX_PLAYER_NAME];
  802. for(new i = 0; i < MAX_PLAYERS; i++)
  803. {
  804. if(IsPlayerConnected(i))
  805. {
  806. if(NoEvento[i] != 0)
  807. {
  808. if(IsPlayerConnected(Ganhador))
  809. {
  810. GetPlayerName(Ganhador, name, sizeof(name));
  811. format(string, sizeof(string), "[EVENTO] O Jogador %d foi o ultimo sobrevivente do servidor, parabéns!",name);
  812. SCMT(EVENTOAZUL, string);
  813. }
  814. ResetPlayerWeapons(i);
  815. NoEvento[i] = 0;
  816. SpawnPlayer(i);
  817. GameTextForAll(" EVENTO TERMINADO ", 3000, 3);
  818. }
  819. }
  820. }
  821. return 1;
  822. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement