Guest User

[FilterScript] LL Admin V1.7 - Striker Samp

a guest
Jul 16th, 2012
4,166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 184.72 KB | None | 0 0
  1. // Striker Samp - Tudo Para Seu Servidor SA-MP
  2. // www.strikersamp.blogspot.com
  3.  
  4. /*
  5.  
  6. FS LL-ADMIN
  7. BY LUCAS_ALEMAO (LUCAS LESSA)
  8.  
  9. ZCMD By ZeeX
  10. SSCANF By Y_Less
  11.  
  12.  
  13. Agradecimentos:
  14. Jim._.Carrey
  15. Los (funções de Log)
  16. [STR]Matrix (Idéias de comandos)
  17. Panico_ONCrew (Idéias de comandos)
  18.  
  19. Não retire os Créditos!!
  20.  
  21. V1.5.1
  22. Inicio do Script: 04/02/2012
  23. Final do Script: 11/02/2012
  24.  
  25. V1.6
  26. Atualizado em 07/05/2012
  27.  
  28. V1.7
  29. Atualizado em 11/06/2012
  30.  
  31. VERSÃO 1.7
  32. Adicionado funções na public OnPlayerClickPlayer:
  33. Kick
  34. Ban
  35. Advertir
  36. Particular
  37. Ir
  38. Trazer
  39. Status
  40. Sistema de admin secreto:
  41. Vá até a linha 180 e altere oque está entre aspas para uma senha secreta.
  42. In game use o comando /logaradm <senha> para ser admin secretamente,
  43. ninguem verá seu nome no /admins porem você terá todos os comandos do FS.
  44. Para ser admin normal use /admnormal
  45. Pequeno sistema de duvida:
  46. Players usam /duvida <texto> e uma mensagem é enviada para todos os Helpers online
  47. Eles podem responder usando /responder <id> <texto>
  48. Corrigido pequeno bug do /admins
  49. Comando /kicksecreto
  50. Comando /bansecreto
  51. Comando /ips otimizado
  52. Comando /id (mostra o id de um player atraves do nome digitado)
  53. Comandd /posplayer (mostra a posição de um player)
  54. Comando /criaricone (cria um icone no mapa de todos os players)
  55. Comando /destruiricone (oposto do comando /criaricone)
  56. Comando /versao (mostra a versão do samp de um player)
  57. Comando /blindar (coloca o carro de um player em god mode)
  58. Comando /desblindar (oposto do comando /blindar)
  59. Comando /setarVW (seta o Virtual World de um player)
  60. Comando /console (imprime informações no console do server)
  61.  
  62. VERSÃO 1.6
  63. Resolvido problema de não salvar tags
  64.  
  65. VERSÃO 1.5
  66. - Nova interface de Registro e Login.
  67. - Novo sistema de gravação de Admin, Helper e VIP. Chega de bugs.
  68. - Função adicionada para não dar conflito com seu GM no sistema de registro.
  69. - Anti-Divulguer.
  70. - Anti-Bot.
  71. - Anti-Weapon Hack.
  72. - Anti-High Ping.
  73. - Agora temos HQ de admin (opcional).
  74. °Portão movel (/portaoadm)
  75. °Varios objetos.
  76. °Carros exclusivos para admin
  77. - OnPlayerDisconnect otimizado.
  78. - Em vez de usar os comandos /jogar e /trabalhar, use apenas /servico. Os comandos
  79. /jogar e /trabalhar não foram excluidos, eles ainda funcionam normalmente.
  80. - SSCANF adicionado no FS. Chega de conflitos.
  81. - Corrigido bug de morrer e perder admin.
  82. - Sistema de Disfarce:
  83. °/disfarce faz com que o Admin mude sua skin, seu nome e sua cor para ficar igual a do player
  84. que está sendo usado.
  85. °/sairdisfarce para voltar as caracteristicas originais.
  86. - Novo sistema de Logs (Agradecimentos a Los).
  87. - Novo sistema de prints.
  88. - /Relatorios agora são gravados em log.
  89. - Adicionado Sistema de Helpers:
  90. °/darhelper
  91. °/tirarhelper
  92. °/helpers
  93. °todos os comandos de helper em /la
  94. - Adicionado Sistema de Vips (opcional):
  95. °/ajudavip
  96. °/darvip
  97. °/tirarvip
  98. °/v
  99. °/kitvip
  100. °/vips
  101. °/cc
  102. °/relatorio diferenciado
  103. - Sistema de mensagens randomicas:
  104. °Adminis level 3+ podem ativa-las com /ativarmsgs ou /desativarmsgs.
  105. - Sistema de Enquetes:
  106. °Admins level 3+ podem usar /enquete para criar uma enquete.
  107. °Players usam /sim ou /nao. A enquete se encerra automaticamente em 30 segundos.
  108. - Adicionado comando /particular (todos os niveis de admin ou helper).
  109. - Sistema de musica ao conectar:
  110. °Admins level 4+ podem usar o comando /musicainicial para escolher uma musica para o player ouvir quando
  111. se conectar ao servidor.
  112. - Sistema de Foder um Jogador:
  113. °Admins nivel 4+ poderam usar o comando /foderplayer.
  114. °O Player fodido irá para o carandiru, ficará congelado, ficará mudo, e será forçado a ouvir uma musica do Restart kkkk.
  115. °Para desfode-lo vá até o arquivo Fodidos.txt e apague o IP dele da lista.
  116. - Sistema de AFK:
  117. °/afk
  118. °/sairafk
  119. °o /admins e /helpers mostra quem está online e quem está AFK.
  120. - Adicionado comando /mudarsenha (qualquer jogador).
  121. - Adicionado comando /players (todos os niveis de admin ou helper). Mostra a quantidade de players online.
  122. - Adicionado comando /limparchat (admin nivel 1+). Limpa o chat para todos os players.
  123. - Adicionado comando /tempo (admin nivel 2+). Seta o tempo para Manha/Tarde/Noite.
  124. - Adicionado comando /dargrana (admin nivel 2+). Da grana a algum player.
  125. - Adicionado comando /jetpack (admin nivel 2+). Da um Jetpack para alguem.
  126. - Adicionado comando /trazertodos (admin nivel 2+). Traz todos os jogadores até você.
  127. - Adicionado comando /moverplayer (admin nivel 2+). Move um player até outro.
  128. - Adicionado comando /resetargrana (admin nivel 3+). Reseta a grana de um jogador.
  129. - Adicionado comando /setargrana (admin nivel 3+). Seta a grana de um jogador.
  130. - Adicionado comando /resetar (admin nivel 4+). Reseta Absolutamente todos os dados da conta de um player.
  131. - Adicionado comando /versenha (admin nivel 5). Mostra a senha de um jogador para o admin.
  132. - Adicionado comando /setaradmin (admin nivel 5). Seta o admin de um player, independente de ele aceitar ou não
  133. - Adicionado comando /trancarserver (admin nivel 5). Tranca o server com uma senha.
  134. - Adicionado comando /destrancarserver (admin nivel 5). Destranca o server.
  135. - Adicionado comando /seradmin (admin RCON). Vira admin nivel 5.
  136.  
  137. - ORDEM DE PRINT -
  138.  
  139. Pasta Logs;
  140. Pasta Banidos;
  141. Pasta Banidos/Contas;
  142. Pasta Admins;
  143. Arquivo Fodidos.txt;
  144. Arquivo Admins.adm;
  145. Arquivo Helpers.hel;
  146. Arquivo Vips.vip;
  147. Pasta Contas;
  148.  
  149. Se seu samp-server abrir e fechar rapido, abra o server_log e veja qual foi a ultima pasta verificada.
  150. a pasta depois dela, seguindo a ordem de cima, é a que está faltando.
  151.  
  152. */
  153.  
  154. /* INCLUDES */
  155. #include a_samp
  156. #include zcmd
  157. #include dof2
  158.  
  159. /* DEIXE A SEU FAVOR */
  160.  
  161. //SE QUISER USAR O SISTEMA DE REGISTRO DO FS DEIXE 1, SE NÃO QUISER COLOQUE 0
  162. #define USAR_SISTEMA_REGISTRO 1
  163.  
  164. //SE QUISER UASR O SISTEMA DE VIP DO FS DEIXE 1, SE NÃO QUISER COLOQUE 0
  165. #define USAR_SISTEMA_VIP 1
  166.  
  167. //SE QUISER USAR UM TEXTDRAW DE FUNDO DEIXE 1, SE NÃO QUISER COLOQUE 0
  168. #define USAR_TEXT 1
  169.  
  170. //SE QUISER QUE OS ADMINS SPAWNEM NA HQ DEIXE 1, SE NÃO QUISER COLOQUE 0
  171. #define SPAWNAR_HQ 1
  172.  
  173. //SE DESEJA QUE APAREÇA [ADM] ANTES DO NICK DOS ADMINS NO CHAT DEIXE 1, SE NÃO QUISER COLOQUE 0
  174. #define DESTAQUE_ADMINS 1
  175.  
  176. //DEFINA ABAIXO O PING MAXIMO PARA OS JOGADORES DO SEU SERVER
  177. #define MAX_PING 500
  178.  
  179. //DEFINA SE DESEJA USAR O LOGIN ALTOMATICO POR IP
  180. #define AUTO_LOGIN true
  181.  
  182. //DEFINA A SENHA PARA SE LOGAR DE ADM ESCONDIDO
  183. #define SENHA "alemao"
  184.  
  185. /* MACROS */
  186. #define MensagemFormatadaParaTodos(%0,%1,%2); format(String, sizeof(String), %1, %2); SendClientMessageToAll(%0, String);
  187. #define MensagemFormatada(%0,%1,%2); format(String, sizeof(String), %1, %2); SendClientMessage(playerid, %0, String);
  188. #define MsgFormat(%0,%1,%2,%3); format(String, sizeof String, %2, %3); SendClientMessage(%0, %1, String);
  189. #define SetarDado(%0,%1,%2); PlayerDados[%0][%1] = %2; SalvarDados(%0);
  190. #define GetarDado(%0,%1) PlayerDados[%0][%1]
  191. #define Loop(%0,%1) for(new %0 = 0; %0 < %1; ++%0)
  192.  
  193. #define Msg SendClientMessage
  194. #define MsgAll SendClientMessageToAll
  195. #define LogExistir fexist
  196.  
  197. /* CORES */
  198. #define VERDE 0x21DD00FF
  199. #define VERMELHO 0xFF030FFF
  200. #define VERMELHO_ESCURO 0xE60000FF
  201. #define VERMELHO_CLARO 0xFB0000FF
  202. #define AMARELO 0xFFFF00FF
  203. #define LARANJA 0xF97804FF
  204. #define AZUL_CLARO 0x00C2ECFF
  205. #define ROXO 0xB360FDFF
  206. #define BRANCO 0xFFFFFFFF
  207. #define PRETO 0x000000FF
  208. #define AZUL 0x1229FAFF
  209. #define VERDE_CLARO 0x38FF06FF
  210. #define ROSA_CHOQUE 0xE100E1FF
  211. #define VERDE_ESCURO 0x008040FF
  212. #define CINZA 0xCECECEFF
  213. #define ROSA 0xD52DFFFF
  214. #define CINZA_ESCURO 0x626262FF
  215. #define VERDE_AGUA 0x03D687FF
  216.  
  217. /* DIALOGS */
  218. #define DIALOG_REGISTRO 4672
  219. #define DIALOG_LOGIN 4673
  220. #define DIALOG_BANIDO 4674
  221. #define DIALOG_IPS 4675
  222. #define DIALOG_INFO 4676
  223. #define DIALOG_AL 4677
  224. #define DIALOG_ADM 4678
  225. #define DIALOG_HELPER 4679
  226. #define DIALOG_MUSICAS 4680
  227. #define DIALOG_SENHANOVA 4681
  228. #define DIALOG_FORCAR 4682
  229. #define DIALOG_AJUDAV 4683
  230. #define DIALOG_KICKAR 4684
  231. #define DIALOG_BANIR 4685
  232. #define DIALOG_ADVERTIR 4686
  233. #define DIALOG_OPCOES 4687
  234. #define DIALOG_PART 4688
  235. #define DIALOG_IPS1 4689
  236. #define DIALOG_IPS2 4690
  237. #define DIALOG_STATUS 4691
  238.  
  239. /* FORWARDS */
  240. forward TempoPreso(playerid);
  241. forward VerificarPreso(playerid);
  242. forward NomeCarro(playerid);
  243. forward LiberarKit(playerid);
  244. forward MensagensRandom();
  245. forward FecharEnquete();
  246. forward TocarSom(playerid);
  247. forward CriarLogs();
  248. forward ImprimirInformacoes();
  249. forward VerificarPasta(pasta[]);
  250. forward VerificarArquivo(arquivo[]);
  251. forward FoderSpawn(playerid);
  252. forward DiminuirTempo();
  253. forward FecharPortao();
  254. forward NovoSpawn(playerid);
  255. forward EnviarMsgHack(playerid);
  256.  
  257. enum pInfo
  258. {
  259. Senha,
  260. Matou,
  261. Morreu,
  262. Admin,
  263. bool:Helper,
  264. Advertencias,
  265. Preso,
  266. bool:Congelado,
  267. bool:Assistindo,
  268. bool:Trabalhando,
  269. bool:Calado,
  270. bool:Invisivel,
  271. bool:Logado,
  272. bool:Vip,
  273. bool:PegouKit,
  274. bool:Afk,
  275. bool:Disfarcado,
  276. bool:Escondido
  277. }
  278.  
  279. enum eEnquete
  280. {
  281. bool:Criada,
  282. VotoSim,
  283. VotoNao,
  284. Titulo[128]
  285. }
  286.  
  287. /* VARIAVEIS E ARRAYS */
  288. new PlayerDados[MAX_PLAYERS][pInfo];
  289. new String[256];
  290. new StringContas[256];
  291. new ID;
  292. new AdminNivel[50];
  293. new AdminTrabalhando[50];
  294. new Dia, Mes, Ano, Hora, Minuto, Segundo;
  295. new CarrosCriados[100];
  296. new TodosCarros = 0;
  297. new Barris[100];
  298. new tBarris = 0;
  299. new TimerPreso;
  300. new nivel;
  301. new TimerKit;
  302. new TimerMsgs;
  303. new TimerCont;
  304. new PlayersOnline = 0;
  305. new Enquete[eEnquete];
  306. new MusicaInicial[256];
  307. new time;
  308. new PortaoHQ;
  309. new CarrosAdm[14];
  310. new bool:ServerTrancado;
  311. new bool:MsgHack[MAX_PLAYERS];
  312. new NomeOriginal[MAX_PLAYERS][30];
  313. new IdClicado[MAX_PLAYERS];
  314. new NomeClicado[MAX_PLAYERS][MAX_PLAYER_NAME];
  315. new Ips2[300];
  316. new Pergunta[MAX_PLAYERS][128];
  317. #if USAR_SISTEMA_VIP == 1
  318. new CarroDono[MAX_PLAYERS];
  319. new Text3D:DonoCarro[MAX_PLAYERS];
  320. #endif
  321.  
  322. new Mensagens[][] = {
  323. "Você faz parte do servidor, chame seus amigos para jogarem aqui :D",
  324. "Caso tenha dúvida chame um admin, use /relatorio",
  325. "Use /ajuda para conhecer os comandos.",
  326. "Se você for vip use /ajudavip para ver seus comandos.",
  327. "para ver os admins online use /admins, /helpers para ver os Helpers."
  328. };
  329.  
  330. new Musica[5][256] = {
  331. "nada",
  332. "http://dc346.4shared.com/img/644772952/4e7e79b6/dlink__2Fdownload_2Fo0ojFABE_3Ftsid_3D20120321-013313-69c1bb08/preview.mp3",//sweet
  333. "http://dc427.4shared.com/img/965797774/2cb01e40/dlink__2Fdownload_2Foxa0xbKh_3Ftsid_3D20120321-013455-11ae6783/preview.mp3",//feel so close
  334. "http://dc382.4shared.com/img/601537173/5cb8acbe/dlink__2Fdownload_2FtzgMp7lR_3Ftsid_3D20120321-013602-155261ac/preview.mp3",//memories
  335. "http://dc342.4shared.com/img/567562876/400f1c84/dlink__2Fdownload_2Fa4gw9qih_3Ftsid_3D20120321-013700-7cc7c36a/preview.mp3"//open bar
  336. };
  337.  
  338. new Cores[][] = {
  339. "{1BE01B}",
  340. "{038003}",
  341. "{0CF50C}",
  342. "{F5180C}",
  343. "{0C8CF5}",
  344. "{0C2BF5}",
  345. "{0CBBF5}",
  346. "{F5F50C}",
  347. "{DEDE04}",
  348. "{FC9E05}",
  349. "{FFFFFF}",
  350. "{FF05F7}",
  351. "{990594}",
  352. "{9C9C9C}",
  353. "{14C9C9}",
  354. "{05E6AD}",
  355. "{E67D05}",
  356. "{6B6B6B}"
  357. };
  358.  
  359. #if USAR_TEXT == 1
  360. new Text:Inicio[MAX_PLAYERS];
  361. #endif
  362.  
  363. public OnFilterScriptInit()
  364. {
  365. CarrosAdm[0] = CreateVehicle(432,2179.80004883,1857.69995117,10.89999962,0.00000000,-1,-1,15);
  366. CarrosAdm[1] = CreateVehicle(601,2185.30004883,1857.50000000,10.80000019,0.00000000,-1,-1,15);
  367. CarrosAdm[2] = CreateVehicle(402,2188.80004883,1856.59997559,10.80000019,0.00000000,-1,-1,15);
  368. CarrosAdm[3] = CreateVehicle(411,2192.39990234,1856.80004883,10.60000038,0.00000000,-1,-1,15);
  369. CarrosAdm[4] = CreateVehicle(415,2196.19995117,1856.69995117,10.69999981,0.00000000,-1,-1,15);
  370. CarrosAdm[5] = CreateVehicle(429,2199.89990234,1856.80004883,10.60000038,0.00000000,-1,-1,15);
  371. CarrosAdm[6] = CreateVehicle(451,2179.69995117,1878.59997559,10.60000038,180.00000000,-1,-1,15);
  372. CarrosAdm[7] = CreateVehicle(477,2183.30004883,1878.50000000,10.69999981,180.00000000,-1,-1,15);
  373. CarrosAdm[8] = CreateVehicle(506,2187.50000000,1878.30004883,10.60000038,180.00000000,-1,-1,15);
  374. CarrosAdm[9] = CreateVehicle(541,2191.50000000,1878.59997559,10.50000000,180.00000000,-1,-1,15);
  375. CarrosAdm[10] = CreateVehicle(562,2195.30004883,1878.69995117,10.60000038,180.00000000,-1,-1,15);
  376. CarrosAdm[11] = CreateVehicle(565,2199.30004883,1878.59997559,10.50000000,180.00000000,-1,-1,15);
  377. CarrosAdm[12] = CreateVehicle(534,2202.80004883,1878.50000000,10.60000038,180.00000000,-1,-1,15);
  378. CarrosAdm[13] = CreateVehicle(535,2206.50000000,1878.90002441,10.69999981,180.00000000,-1,-1,15);
  379. CreateObject(980,2231.50000000,1882.80004883,13.10000038,0.00000000,0.00000000,0.00000000);
  380. CreateObject(980,2220.10009766,1882.80004883,13.10000038,0.00000000,0.00000000,0.00000000);
  381. CreateObject(980,2208.80004883,1882.80004883,13.10000038,0.00000000,0.00000000,0.00000000);
  382. CreateObject(980,2197.50000000,1882.80004883,13.10000038,0.00000000,0.00000000,0.00000000);
  383. CreateObject(980,2186.30004883,1882.80004883,13.10000038,0.00000000,0.00000000,0.00000000);
  384. CreateObject(980,2174.89990234,1882.80004883,13.10000038,0.00000000,0.00000000,0.00000000);
  385. CreateObject(980,2169.10009766,1877.19995117,13.10000038,0.00000000,0.00000000,90.00000000);
  386. CreateObject(980,2169.10009766,1866.30004883,13.10000038,0.00000000,0.00000000,90.00000000);
  387. CreateObject(980,2169.10009766,1862.50000000,13.10000038,0.00000000,0.00000000,90.00000000);
  388. CreateObject(980,2169.10009766,1841.09997559,12.80000019,0.00000000,0.00000000,0.00000000);
  389. CreateObject(980,2179.00000000,1841.09997559,12.80000019,0.00000000,0.00000000,0.00000000);
  390. CreateObject(980,2189.89990234,1841.09997559,12.80000019,0.00000000,0.00000000,0.00000000);
  391. CreateObject(980,2199.00000000,1841.09997559,12.80000019,0.00000000,0.00000000,0.00000000);
  392. CreateObject(980,2169.10009766,1861.19995117,13.19999981,0.00000000,0.00000000,96.00000000);
  393. CreateObject(980,2169.89990234,1859.69995117,12.60000038,0.00000000,0.00000000,99.99853516);
  394. CreateObject(980,2171.30004883,1856.80004883,12.80000019,0.00000000,0.00000000,115.99755859);
  395. CreateObject(980,2172.50000000,1855.40002441,12.80000019,0.00000000,0.00000000,133.99362183);
  396. CreateObject(980,2181.30004883,1851.09997559,13.10000038,0.00000000,0.00000000,180.00000000);
  397. CreateObject(980,2191.39990234,1851.09997559,13.10000038,0.00000000,0.00000000,179.99450684);
  398. CreateObject(980,2198.69995117,1851.09997559,13.10000038,0.00000000,0.00000000,179.99450684);
  399. CreateObject(980,2205.10009766,1835.80004883,12.60000038,0.00000000,0.00000000,272.00000000);
  400. CreateObject(980,2205.39990234,1826.00000000,12.60000038,0.00000000,0.00000000,271.99951172);
  401. CreateObject(980,2222.00000000,1820.59997559,12.60000038,0.00000000,0.00000000,177.99951172);
  402. CreateObject(980,2211.19995117,1821.00000000,12.60000038,0.00000000,0.00000000,177.99499512);
  403. CreateObject(980,2242.89990234,1882.59997559,16.39999962,0.00000000,0.00000000,0.00000000);
  404. CreateObject(980,2254.10009766,1882.59997559,16.39999962,0.00000000,0.00000000,0.00000000);
  405. CreateObject(980,2265.39990234,1882.59997559,16.39999962,0.00000000,0.00000000,0.00000000);
  406. CreateObject(980,2276.60009766,1882.59997559,16.39999962,0.00000000,0.00000000,0.00000000);
  407. CreateObject(980,2287.69995117,1882.59997559,16.39999962,0.00000000,0.00000000,0.00000000);
  408. CreateObject(980,2297.69995117,1882.59997559,16.39999962,0.00000000,0.00000000,0.00000000);
  409. CreateObject(980,2308.19995117,1882.59997559,16.39999962,0.00000000,0.00000000,0.00000000);
  410. PortaoHQ = CreateObject(980,2204.39990234,1846.00000000,12.60000038,0.00000000,0.00000000,91.99951172);
  411. Create3DTextLabel("{25E01B}Admins usem {04C4C4}/PortaoAdm",-1, 2207.8176,1853.0674,10.8203, 15, 0, 0);
  412. SetTimer("ImprimirInformacoes", 40, false);
  413. return 1;
  414. }
  415.  
  416. public ImprimirInformacoes()
  417. {
  418. print("\n________________________________________________");
  419. print("\n\nCarregando LL Admin V1.7 By Lucas_Alemao...\n");
  420. VerificarPasta("Logs");
  421. CriarLogs();
  422. VerificarPasta("Banidos");
  423. VerificarPasta("Banidos/Contas");
  424. VerificarPasta("Admins");
  425. VerificarArquivo("Fodidos.txt");
  426. VerificarArquivo("Admins.adm");
  427. VerificarArquivo("Helpers.hel");
  428. VerificarArquivo("Vips.vip");
  429. VerificarPasta("Contas");
  430. print("\nLL Admin V1.7 Carregado com sucesso.\n");
  431. print("\nUse /la para ajuda.");
  432. print("Bom Jogo :D\n\n");
  433. print("________________________________________________");
  434. return 1;
  435. }
  436.  
  437. public VerificarPasta(pasta[])
  438. {
  439. format(String, sizeof(String), "LLADMIN/%s/verificacao",pasta);
  440. DOF2_CreateFile(String);
  441. if(DOF2_FileExists(String))
  442. {
  443. printf("Pasta '%s' Encontrada e carregada com sucesso.", pasta);
  444. }
  445. else if(!DOF2_FileExists(String))
  446. {
  447. printf("Pasta '%s' Não encontrada.", pasta);
  448. }
  449. DOF2_RemoveFile(String);
  450. return 1;
  451. }
  452.  
  453. public VerificarArquivo(arquivo[])
  454. {
  455. format(String, sizeof(String), "LLADMIN/%s", arquivo);
  456. if(DOF2_FileExists(String))
  457. {
  458. printf("Arquivo '%s' Encontrado e carregado com sucesso.", arquivo);
  459. return 1;
  460. }
  461. else if(!DOF2_FileExists(String))
  462. {
  463. printf("Arquivo '%s' não encontrado. O FS o criou automaticamente.", arquivo);
  464. DOF2_CreateFile(String);
  465. return 1;
  466. }
  467. return 1;
  468. }
  469.  
  470. public OnFilterScriptExit()
  471. {
  472. for(new i = 0; i < MAX_PLAYERS; ++i)
  473. {
  474. SalvarDados(i);
  475. }
  476. DOF2_Exit();
  477. return 1;
  478. }
  479.  
  480. public OnPlayerConnect(playerid)
  481. {
  482. if(strfind(Nome(playerid),"clock$",true) != -1) Ban(playerid);
  483. if(strfind(Nome(playerid),"prn",true) != -1) Ban(playerid);
  484. if(strfind(Nome(playerid),"Carl",true) != -1) Ban(playerid);
  485. if(strfind(Nome(playerid),"con",true) != -1) Ban(playerid);
  486. if(strfind(Nome(playerid),"SgtPepper",true) != -1) Ban(playerid);
  487. if(strfind(Nome(playerid),"Pepe",true) != -1) Ban(playerid);
  488. if(strfind(Nome(playerid),"nul",true) != -1) Ban(playerid);
  489. if(strfind(Nome(playerid),"Pepno",true) != -1) Ban(playerid);
  490. if(strfind(Nome(playerid),"Pepsi",true) != -1) Ban(playerid);
  491. if(strfind(Nome(playerid),"Rocky",true) != -1) Ban(playerid);
  492. if(strfind(Nome(playerid),"Carl",true) != -1) Ban(playerid);
  493. if(strfind(Nome(playerid),"Vino_Toro",true) != -1) Ban(playerid);
  494. if(strfind(Nome(playerid),"Zoquete",true) != -1) Ban(playerid);
  495. if(strfind(Nome(playerid),"AquilesBrinco",true) != -1) Ban(playerid);
  496. if(strfind(Nome(playerid),"Azucar",true) != -1) Ban(playerid);
  497. if(strfind(Nome(playerid),"Manfrey",true) != -1) Ban(playerid);
  498. if(strfind(Nome(playerid),"Papirola",true) != -1) Ban(playerid);
  499. if(strfind(Nome(playerid),"[ViP]Labrik",true) != -1)Ban(playerid);
  500. if(strfind(Nome(playerid),"Sony",true) != -1) Ban(playerid);
  501. if(strfind(Nome(playerid),"Pacman",true) != -1) Ban(playerid);
  502. if(strfind(Nome(playerid),"Batman",true) != -1)Ban(playerid);
  503. if(strfind(Nome(playerid),"aux",true) != -1) Ban(playerid);
  504. if(strfind(Nome(playerid),"com1",true) != -1) Ban(playerid);
  505. if(strfind(Nome(playerid),"com2",true) != -1) Ban(playerid);
  506. if(strfind(Nome(playerid),"com3",true) != -1) Ban(playerid);
  507. if(strfind(Nome(playerid),"com4",true) != -1) Ban(playerid);
  508. if(strfind(Nome(playerid),"com5",true) != -1) Ban(playerid);
  509. if(strfind(Nome(playerid),"com6",true) != -1) Ban(playerid);
  510. if(strfind(Nome(playerid),"com7",true) != -1) Ban(playerid);
  511. if(strfind(Nome(playerid),"com8",true) != -1) Ban(playerid);
  512. if(strfind(Nome(playerid),"com9",true) != -1) Ban(playerid);
  513. if(strfind(Nome(playerid),"lpt1",true) != -1) Ban(playerid);
  514. if(strfind(Nome(playerid),"lpt2",true) != -1) Ban(playerid);
  515. if(strfind(Nome(playerid),"lpt3",true) != -1) Ban(playerid);
  516. if(strfind(Nome(playerid),"lpt4",true) != -1) Ban(playerid);
  517. if(strfind(Nome(playerid),"lpt5",true) != -1) Ban(playerid);
  518. if(strfind(Nome(playerid),"lpt6",true) != -1) Ban(playerid);
  519. if(strfind(Nome(playerid),"lpt8",true) != -1) Ban(playerid);
  520. if(strfind(Nome(playerid),"lpt9",true) != -1) Ban(playerid);
  521. Pergunta[playerid] = "Nenhuma";
  522. SetTimerEx("TocarSom", 1000, false, "i", playerid);
  523. PlayersOnline++;
  524. PlayerDados[playerid][Logado] = false;
  525. PlayerDados[playerid][Admin] = 0;
  526. PlayerDados[playerid][Helper] = false;
  527. PlayerDados[playerid][Vip] = false;
  528. new strConta[80];
  529. new Ip[25];
  530. for(new t = 0; t < 100; ++t)
  531. {
  532. SendClientMessage(playerid, -1, " ");
  533. }
  534. format(strConta, sizeof(strConta), "LLADMIN/Banidos/Contas/%s.txt", Nome(playerid));
  535. if(DOF2_FileExists(strConta))
  536. {
  537. format(String, sizeof(String), "{FFFFFF}Você está banido deste servidor!\n\n Dados do Banimento:\n\n{45F75A}Admin: {FFFFFF}%s \n{45F75A}Motivo: {FFFFFF}%s", DOF2_GetString(strConta, "Admin"), DOF2_GetString(strConta, "Motivo"));
  538. format(String, sizeof(String), "%s\n{45F75A}Data: {FFFFFF}%d/%d/%d \n{45F75A}Hora: {FFFFFF}%d:%d", String, DOF2_GetInt(strConta, "Dia"), DOF2_GetInt(strConta, "Mes"), DOF2_GetInt(strConta, "Ano"), DOF2_GetInt(strConta, "Hora"), DOF2_GetInt(strConta, "Minuto"));
  539. ShowPlayerDialog(playerid, DIALOG_BANIDO, DIALOG_STYLE_MSGBOX, "Banido!", String, "Fechar", "");
  540. return 1;
  541. }
  542. GetPlayerIp(playerid, Ip, 25);
  543. if(strcmp(Ip ,"255.255.255.255", true) == 0)
  544. {
  545. Ban(playerid);
  546. }
  547. if(DOF2_IsSet("LLADMIN/Banidos/Ips.txt", Ip))
  548. {
  549. format(String, sizeof(String), "{FFFFFF} Seu IP está banido deste Servidor!\n\nDados:\nIP:%s\n%s", Ip, DOF2_GetString("LLADMIN/Banidos/Ips.txt", Ip));
  550. ShowPlayerDialog(playerid, DIALOG_BANIDO, DIALOG_STYLE_MSGBOX, "Banido!", String, "Fechar", "");
  551. return 1;
  552. }
  553. if(DOF2_IsSet("LLADMIN/Fodidos.txt", Ip))
  554. {
  555. SetTimerEx("FoderSpawn", 1000, false, "i", playerid);
  556. return 1;
  557. }
  558. format(String, sizeof(String), "%s Conectou ao servidor", Nome(playerid));
  559. SendClientMessageToAll(VERDE_CLARO, String);
  560. format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
  561. #if (USAR_TEXT == 1) && (USAR_SISTEMA_REGISTRO == 1)
  562. TextFundo(playerid);
  563. #endif
  564. #if USAR_SISTEMA_REGISTRO == 1
  565. if(!DOF2_FileExists(StringContas))
  566. {
  567. format(String, sizeof(String), "{F1FC14}Conta: %s\n{FC1E1E}Não registrada.\n\n{07D915}Digite uma senha para se registrar\nem nosso banco de dados.", Nome(playerid));
  568. ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, "{1EB2FC}Registrando...", String, "Registrar", "Sair");
  569. return 1;
  570. }
  571. else
  572. {
  573. #if AUTO_LOGIN == true
  574. new ip[25];
  575. GetPlayerIp(playerid, ip, sizeof ip);
  576. if(strcmp(ip, DOF2_GetString(StringContas, "IP"), true) == 0) {
  577. PlayerDados[playerid][Matou] = DOF2_GetInt(StringContas, "Matou");
  578. PlayerDados[playerid][Morreu] = DOF2_GetInt(StringContas, "Morreu");
  579. new str[50];
  580. format(str, 50, "LLADMIN/Admins/%s.sav", Nome(playerid));
  581. if(DOF2_FileExists(str)) {
  582. if(DOF2_IsSet(str, "Admin")) {
  583. PlayerDados[playerid][Admin] = DOF2_GetInt(str, "Admin");
  584. }
  585. if(DOF2_IsSet(str, "Helper")) {
  586. PlayerDados[playerid][Helper] = DOF2_GetBool(str, "Helper");
  587. }
  588. if(DOF2_IsSet(str, "Vip")) {
  589. PlayerDados[playerid][Vip] = DOF2_GetBool(str, "Vip");
  590. }
  591. }
  592. PlayerDados[playerid][Advertencias] = DOF2_GetInt(StringContas, "Advertencias");
  593. GivePlayerMoney(playerid, DOF2_GetInt(StringContas, "Grana"));
  594. PlayerDados[playerid][Preso] = DOF2_GetInt(StringContas, "Preso");
  595. SendClientMessage(playerid, VERDE_CLARO, "Você foi logado altomaticamente através de seu IP.");
  596. #if USAR_TEXT == 1
  597. TextDrawDestroy(Inicio[playerid]);
  598. #endif
  599. if(PlayerDados[playerid][Admin] > 0)
  600. {
  601. format(String, sizeof(String), "Logado de Admin Nível %d", PlayerDados[playerid][Admin]);
  602. SendClientMessage(playerid, AZUL_CLARO, String);
  603. format(String, sizeof(String), "~w~Admin ~g~%s ~y~Online", Nome(playerid));
  604. GameTextForAll(String, 1000, 1);
  605. PlayerDados[playerid][Trabalhando] = true;
  606. SendClientMessage(playerid, AZUL_CLARO, "Você está trabalhando, para jogar use /jogar");
  607. SetPlayerColor(playerid, 0x24E9FFFF);
  608. SetPlayerHealth(playerid, 999999);
  609. }
  610. return 1;
  611. }
  612. #endif
  613. format(String, sizeof(String), "{F1FC14}Conta: %s\n{28FC14}Registrada.\n\n{14F1FC}Digite sua senha para Logar", Nome(playerid));
  614. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "{FC14E9}Logando...", String, "Logar", "Sair");
  615. return 1;
  616. }
  617. #else
  618. return 1;
  619. #endif
  620. }
  621.  
  622. public FoderSpawn(playerid)
  623. {
  624. SetSpawnInfo(playerid, 0, 0, 107.2300,1920.6311,18.5208, 0, 0, 0, 0, 0, 0, 0);
  625. SpawnPlayer(playerid);
  626. SetPlayerWorldBounds(ID, 337.5694,101.5826,1940.9759,1798.7453);
  627. TogglePlayerControllable(ID, false);
  628. Msg(playerid, VERMELHO, "Você foi fodido por um admin! Agora aguente!");
  629. PlayAudioStreamForPlayer(ID, "http://dc239.4shared.com/img/288497172/b1c25846/dlink__2Fdownload_2FAzhEPzew_3Ftsid_3D20120321-232554-e2632526/preview.mp3", 0, 0, 0, 10, 0);
  630. return 1;
  631. }
  632.  
  633. public TocarSom(playerid)
  634. {
  635. if(strfind(MusicaInicial, "nada", true) != -1)
  636. {
  637. return 1;
  638. }
  639. PlayAudioStreamForPlayer(playerid, MusicaInicial, 0, 0, 0, 20, 0);
  640. return 1;
  641. }
  642.  
  643. public OnPlayerDisconnect(playerid, reason)
  644. {
  645. new Motivo[20];
  646. if(reason == 0) Motivo = "Queda de conexão";
  647. if(reason == 1) Motivo = "Conta própria";
  648. if(reason == 2) Motivo = "Kickado/Banido";
  649. format(String, sizeof(String), "{289E08}O Jogador {39F505}%s{289E08} Desconectou do servidor. (%s)", Nome(playerid), Motivo);
  650. MsgAll(-1, String);
  651. if(GetarDado(playerid, Admin) > 0)
  652. {
  653. format(String, sizeof(String), "~w~Admin ~g~%s ~r~Offline", Nome(playerid));
  654. GameTextForAll(String, 1000, 1);
  655. }
  656. PlayersOnline--;
  657. SalvarDados(playerid);
  658. DOF2_Exit();
  659. return 1;
  660. }
  661.  
  662. public FecharEnquete()
  663. {
  664. new StrEnquete[256];
  665. Enquete[Criada] = false;
  666. format(StrEnquete, 256, "Enquete %s Fechada.", Enquete[Titulo]);
  667. SendClientMessageToAll(ROSA, StrEnquete);
  668. format(StrEnquete, 256, "Votos Sim: %d", Enquete[VotoSim]);
  669. SendClientMessageToAll(ROSA_CHOQUE, StrEnquete);
  670. format(StrEnquete, 256, "Voto Não: %d", Enquete[VotoNao]);
  671. SendClientMessageToAll(ROSA_CHOQUE, StrEnquete);
  672. if(Enquete[VotoSim] > Enquete[VotoNao])
  673. {
  674. SendClientMessageToAll(ROSA, "\nO Sim Venceu.");
  675. return 1;
  676. }
  677. if(Enquete[VotoNao] > Enquete[VotoSim])
  678. {
  679. SendClientMessageToAll(ROSA, "\nO Nao Venceu.");
  680. return 1;
  681. }
  682. return 1;
  683. }
  684. public OnPlayerSpawn(playerid)
  685. {
  686. if(DOF2_IsSet("LLADMIN/Admins.adm", Nome(playerid)))
  687. {
  688. PlayerDados[playerid][Admin] = DOF2_GetInt("LLADMIN/Admins.adm", Nome(playerid));
  689. }
  690. if(DOF2_IsSet("LLADMIN/Helpers.hel", Nome(playerid)))
  691. {
  692. SetarDado(playerid, Helper, DOF2_GetBool("LLADMIN/Helpers.hel", Nome(playerid)));
  693. }
  694. if(DOF2_IsSet("LLADMIN/Vips.vip", Nome(playerid)))
  695. {
  696. SetarDado(playerid, Vip, DOF2_GetBool("LLADMIN/vips.vip", Nome(playerid)));
  697. }
  698. format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
  699. #if SPAWNAR_HQ == 1
  700. if((PlayerDados[playerid][Admin] > 0) || (PlayerDados[playerid][Helper] == true))
  701. {
  702. SetTimerEx("NovoSpawn", 500, false, "i", playerid);
  703. }
  704. #endif
  705. SetTimerEx("VerificarPreso", 1000, false, "i", playerid);
  706. ResetPlayerWeapons(playerid);
  707. #if USAR_SISTEMA_REGISTRO == 0
  708. if(!DOF2_FileExists(StringContas))
  709. {
  710. DOF2_CreateFile(StringContas);
  711. DOF2_SetInt(StringContas, "Matou", 0);
  712. DOF2_SetInt(StringContas, "Morreu", 0);
  713. DOF2_SetInt(StringContas, "Grana", 0);
  714. //DOF2_SetInt(StringContas, "Admin", 0);
  715. //DOF2_SetBool(StringContas, "Helper", false);
  716. DOF2_SetInt(StringContas, "Advertencias", 0);
  717. DOF2_SetInt(StringContas, "Preso", 0);
  718. //DOF2_SetBool(StringContas, "Vip", false);
  719. PlayerDados[playerid][Logado] = true;
  720. }
  721. if(DOF2_FileExists(StringContas))
  722. {
  723. PlayerDados[playerid][Matou] = DOF2_GetInt(StringContas, "Matou");
  724. PlayerDados[playerid][Morreu] = DOF2_GetInt(StringContas, "Morreu");
  725. if(DOF2_IsSet("LLADMIN/Admins.adm", Nome(playerid)))
  726. {
  727. PlayerDados[playerid][Admin] = DOF2_GetInt("LLADMIN/Admins.adm", Nome(playerid));
  728. }
  729. PlayerDados[playerid][Advertencias] = DOF2_GetInt(StringContas, "Advertencias");
  730. GivePlayerMoney(playerid, DOF2_GetInt(StringContas, "Grana"));
  731. PlayerDados[playerid][Preso] = DOF2_GetInt(StringContas, "Preso");
  732. if(DOF2_IsSet("LLADMIN/Helpers.hel", Nome(playerid)))
  733. {
  734. PlayerDados[playerid][Helper] = DOF2_GetBool("LLADMIN/Vips.vip", Nome(playerid));
  735. }
  736. if(DOF2_IsSet("LLADMIN/Vips.vip", Nome(playerid)))
  737. {
  738. PlayerDados[playerid][Vip] = DOF2_GetBool("LLADMIN/Vips.vip", Nome(playerid));
  739. }
  740. //PlayerDados[playerid][Helper] = DOF2_GetBool(StringContas, "Helper");
  741. //PlayerDados[playerid][Vip] = DOF2_GetBool(StringContas, "Vip");
  742. if((PlayerDados[playerid][Admin] > 0) && (PlayerDados[playerid][Logado] == false))
  743. {
  744. PlayerDados[playerid][Logado] = true;
  745. format(String, sizeof(String), "Logado de Admin Nível %d", PlayerDados[playerid][Admin]);
  746. SendClientMessage(playerid, AZUL_CLARO, String);
  747. format(String, sizeof(String), "~w~Admin ~g~%s ~y~Online", Nome(playerid));
  748. GameTextForAll(String, 1000, 1);
  749. PlayerDados[playerid][Trabalhando] = true;
  750. SendClientMessage(playerid, AZUL_CLARO, "Você está trabalhando, para jogar use /jogar");
  751. SetPlayerColor(playerid, 0x24E9FFFF);
  752. SetPlayerHealth(playerid, 999999);
  753. }
  754. }
  755. #endif
  756. return 0;
  757. }
  758.  
  759. public OnPlayerUpdate(playerid)
  760. {
  761. new ping = GetPlayerPing(playerid);
  762. if(ping > MAX_PING)
  763. {
  764. MensagemFormatadaParaTodos(AZUL_CLARO, "O jogador %s [ID: %d] foi kickado do servidor por ultrapassar o ping maximo (%d).", Nome(playerid), playerid, MAX_PING);
  765. Kick(playerid);
  766. }
  767. new Arma = GetPlayerWeapon(playerid);
  768. if(MsgHack[playerid] == true) return 1;
  769. switch(Arma)
  770. {
  771. case 9:
  772. {
  773. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando uma serra eletrica. /assitir para conferir.", Nome(playerid), playerid);
  774. MensagemParaAdmins(String);
  775. MsgHack[playerid] = true;
  776. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  777. }
  778. case 35:
  779. {
  780. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando um lança-misseis. /assitir para conferir.", Nome(playerid), playerid);
  781. MensagemParaAdmins(String);
  782. MsgHack[playerid] = true;
  783. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  784. }
  785. case 36:
  786. {
  787. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando um lança-misseis. /assitir para conferir.", Nome(playerid), playerid);
  788. MensagemParaAdmins(String);
  789. MsgHack[playerid] = true;
  790. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  791. }
  792. case 37:
  793. {
  794. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando um lança-chamas. /assitir para conferir.", Nome(playerid), playerid);
  795. MensagemParaAdmins(String);
  796. MsgHack[playerid] = true;
  797. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  798. }
  799. case 38:
  800. {
  801. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando uma minigun. /assitir para conferir.", Nome(playerid), playerid);
  802. MensagemParaAdmins(String);
  803. MsgHack[playerid] = true;
  804. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  805. }
  806. case 39:
  807. {
  808. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando explosivos remotos. /assitir para conferir.", Nome(playerid), playerid);
  809. MensagemParaAdmins(String);
  810. MsgHack[playerid] = true;
  811. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  812. }
  813. case 40:
  814. {
  815. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando um detonador. /assitir para conferir.", Nome(playerid), playerid);
  816. MensagemParaAdmins(String);
  817. MsgHack[playerid] = true;
  818. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  819. }
  820. case 43:
  821. {
  822. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando uma camera fotografica. /assitir para conferir.", Nome(playerid), playerid);
  823. MensagemParaAdmins(String);
  824. MsgHack[playerid] = true;
  825. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  826. }
  827. case 44:
  828. {
  829. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando oculos de visão noturna. /assitir para conferir.", Nome(playerid), playerid);
  830. MensagemParaAdmins(String);
  831. MsgHack[playerid] = true;
  832. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  833. }
  834. case 45:
  835. {
  836. format(String, sizeof(String), "[ANTI WH] O jogador %s [ID: %d] está usando oculos de visão noturna. /assitir para conferir.", Nome(playerid), playerid);
  837. MensagemParaAdmins(String);
  838. MsgHack[playerid] = true;
  839. SetTimerEx("EnviarMsgHack", 60000, true, "i", playerid);
  840. }
  841. }
  842. return 1;
  843. }
  844.  
  845. public EnviarMsgHack(playerid)
  846. {
  847. MsgHack[playerid] = false;
  848. return 1;
  849. }
  850.  
  851. public NovoSpawn(playerid)
  852. {
  853. SetPlayerPos(playerid, 2225.9814,1837.7249,10.8203);
  854. SetPlayerFacingAngle(playerid, 98.0608);
  855. return 1;
  856. }
  857.  
  858. public VerificarPreso(playerid)
  859. {
  860. if(PlayerDados[playerid][Preso] > 0)
  861. {
  862. SetPlayerPos(ID, 264.6288,77.5742,1001.0391);
  863. SetPlayerInterior(ID, 6);
  864. SendClientMessage(playerid, VERMELHO, "Seu Tempo de Cadeia ainda não acabou!");
  865. TimerPreso = SetTimerEx("TempoPreso", 1000, true, "i", playerid);
  866. }
  867. return 1;
  868. }
  869.  
  870. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  871. {
  872. if((vehicleid >= CarrosAdm[0]) && (vehicleid <= CarrosAdm[13]))
  873. {
  874. if((PlayerDados[playerid][Helper] == false) || (PlayerDados[playerid][Admin] < 1))
  875. {
  876. RemovePlayerFromVehicle(playerid);
  877. Msg(playerid, CINZA, "Você precisa ser admin para usar este carro.");
  878. }
  879. }
  880. if(PlayerDados[playerid][Admin] > 0)
  881. {
  882. if(PlayerDados[playerid][Trabalhando] == true)
  883. {
  884. SetTimerEx("NomeCarro", 3500, false, "i", playerid);
  885. }
  886. }
  887. return 0;
  888. }
  889.  
  890. public NomeCarro(playerid)
  891. {
  892. new idc = GetPlayerVehicleID(playerid);
  893. format(String, sizeof(String), "[LL ADMIN] Veículo ID %d", idc);
  894. SendClientMessage(playerid, CINZA, String);
  895. }
  896.  
  897. public OnPlayerDeath(playerid, killerid, reason)
  898. {
  899. PlayerDados[playerid][Morreu]++;
  900. PlayerDados[killerid][Matou]++;
  901. format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
  902. if(DOF2_IsSet("LLADMIN/Admins.adm", Nome(playerid)))
  903. {
  904. PlayerDados[playerid][Admin] = DOF2_GetInt("LLADMIN/Admins.adm", Nome(playerid));
  905. }
  906. KillTimer(TimerKit);
  907. return 0;
  908. }
  909.  
  910. public OnPlayerClickPlayer(playerid, clickedplayerid, source) {
  911. /*if(clickedplayerid == playerid)
  912. return false;*/
  913. IdClicado[playerid] = clickedplayerid;
  914. NomeClicado[playerid] = Nome(clickedplayerid);
  915. if(!(NivelRequerido(playerid, 1))) return 1;
  916. format(String, 60, "Opções de Admin sobre %s", NomeClicado[playerid]);
  917. ShowPlayerDialog(playerid, DIALOG_OPCOES, DIALOG_STYLE_LIST, String , "{F5F50C}Kickar\n{F5180C}Banir\n{0CF50C}Advertir\n{FF05F7}Trazer\n{FF05F7}Ir\n{14C9C9}Particular\n{0C8CF5}Status", "Avançar", "Fechar");
  918. return 1;
  919. }
  920.  
  921. public OnPlayerText(playerid, text[])
  922. {
  923. new str2[256];
  924. if((strfind(text, "7777", true) != -1) || (strfind(text, "7788", true) != -1) || (strfind(text, "189.", true) != -1) || (strfind(text, "187.", true) != -1) || (strfind(text, "185.", true) != -1) || (strfind(text, "7575", true) != -1) || (strfind(text, "75.", true) != -1))
  925. {
  926. MensagemFormatadaParaTodos(AZUL_CLARO, "O Jogador {FB0000}%s{00C2EC} Foi Banido por divulgar IP.\r\n", Nome(playerid));
  927. EscreverLog("LLADMIN/Logs/Banidos.log", String);
  928. format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(playerid));
  929. getdate(Ano, Mes, Dia);
  930. gettime(Hora, Minuto, Segundo);
  931. DOF2_CreateFile(String);
  932. DOF2_SetString(String, "Admin", "Admin automatico");
  933. DOF2_SetString(String, "Motivo", "Divulgação de IP");
  934. DOF2_SetInt(String, "Ano", Ano);
  935. DOF2_SetInt(String, "Mes", Mes);
  936. DOF2_SetInt(String, "Dia", Dia);
  937. DOF2_SetInt(String, "Hora", Hora);
  938. DOF2_SetInt(String, "Minuto", Minuto);
  939. Kick(playerid);
  940. }
  941. format(String, sizeof(String), "LLADMIN/Teleportes/%s.txt", text);
  942. if(DOF2_FileExists(String))
  943. {
  944. format(str2, sizeof(str2), "O Jogador %s foi para o 'te %s' [Teleporte Criado pelo Admin: %s] (para ir basta digitar as palavras entre aspas)", Nome(playerid), DOF2_GetString(String, "Comando"), DOF2_GetString(String, "Admin"));
  945. SendClientMessageToAll(AMARELO, str2);
  946. SetPlayerPos(playerid, DOF2_GetFloat(String, "X"), DOF2_GetFloat(String, "Y"), DOF2_GetFloat(String, "Z"));
  947. return 0;
  948. }
  949. if(PlayerDados[playerid][Calado] == true)
  950. {
  951. SendClientMessage(playerid, BRANCO, "Você Está calado e não pode falar!");
  952. return 0;
  953. }
  954. #if DESTAQUE_ADMINS == 1
  955. if(GetarDado(playerid, Admin) > 1)
  956. {
  957. if(GetarDado(playerid, Disfarcado) == true)
  958. {
  959. format(String, sizeof(String), "%s: %s", Nome(playerid), text);
  960. MsgAll(GetPlayerColor(playerid), String);
  961. return 0;
  962. }
  963. format(String, sizeof(String), "[ADM] %s: %s", Nome(playerid), text);
  964. MsgAll(GetPlayerColor(playerid), String);
  965. return 0;
  966. }
  967. #endif
  968. return 1;
  969. }
  970.  
  971. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  972. {
  973. if(dialogid == DIALOG_REGISTRO)
  974. {
  975. if(response)
  976. {
  977. if(!strlen(inputtext))
  978. {
  979. format(String, sizeof(String), "{F1FC14}Conta: %s\n{FC1E1E}Não registrada.\n\n{07D915}Digite uma senha para se registrar\nem nosso banco de dados.", Nome(playerid));
  980. ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, "{1EB2FC}Registrando...", String, "Registrar", "Sair");
  981. SendClientMessage(playerid, VERMELHO, "Digite uma senha para se registrar ¬¬");
  982. return 1;
  983. }
  984. format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
  985. DOF2_CreateFile(StringContas);
  986. DOF2_SetString(StringContas, "Senha", inputtext);
  987. DOF2_SetInt(StringContas, "Matou", 0);
  988. DOF2_SetInt(StringContas, "Morreu", 0);
  989. DOF2_SetInt(StringContas, "Grana", 0);
  990. DOF2_SetInt(StringContas, "Advertencias", 0);
  991. DOF2_SetInt(StringContas, "Preso", 0);
  992. SendClientMessage(playerid, AZUL_CLARO, "Registrado Com Sucesso! você foi logado automaticamente");
  993. #if USAR_TEXT == 1
  994. TextDrawDestroy(Inicio[playerid]);
  995. #endif
  996. return 1;
  997. }
  998. else
  999. {
  1000. SendClientMessage(playerid, VERMELHO, "Você não quis se registrar e por isso foi kickado!");
  1001. Kick(playerid);
  1002. return 1;
  1003. }
  1004. }
  1005. if(dialogid == DIALOG_LOGIN)
  1006. {
  1007. if(response)
  1008. {
  1009. if(!strlen(inputtext))
  1010. {
  1011. format(String, sizeof(String), "{F1FC14}Conta: %s\n{28FC14}Registrada.\n\n{14F1FC}Digite sua senha para Logar", Nome(playerid));
  1012. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "{FC14E9}Logando...", String, "Logar", "Sair");
  1013. SendClientMessage(playerid, VERMELHO, "Digite sua senha para se logar ¬¬");
  1014. return 1;
  1015. }
  1016. format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
  1017. if(strcmp(inputtext, DOF2_GetString(StringContas, "Senha"), true))
  1018. {
  1019. format(String, sizeof(String), "{F1FC14}Conta: %s\n{28FC14}Registrada.\n\n{14F1FC}Digite sua senha para Logar", Nome(playerid));
  1020. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "{FC14E9}Logando...", String, "Logar", "Sair");
  1021. SendClientMessage(playerid, VERMELHO_CLARO, "Senha incorreta!");
  1022. return 1;
  1023. }
  1024. else
  1025. {
  1026. PlayerDados[playerid][Matou] = DOF2_GetInt(StringContas, "Matou");
  1027. PlayerDados[playerid][Morreu] = DOF2_GetInt(StringContas, "Morreu");
  1028. /*PlayerDados[playerid][Admin] = DOF2_GetInt(StringContas, "Admin");
  1029. //old if(DOF2_IsSet("LLADMIN/Admins.adm", Nome(playerid)))
  1030. {
  1031. PlayerDados[playerid][Admin] = DOF2_GetInt("LLADMIN/Admins.adm", Nome(playerid));
  1032. }
  1033. if(DOF2_IsSet("LLADMIN/Helpers.hel", Nome(playerid)))
  1034. {
  1035. PlayerDados[playerid][Helper] = DOF2_GetBool("LLADMIN/Helpers.hel", Nome(playerid));
  1036. }
  1037. if(DOF2_IsSet("LLADMIN/Vips.vip", Nome(playerid)))
  1038. {
  1039. PlayerDados[playerid][Vip] = DOF2_GetBool("LLADMIN/Vips.vip", Nome(playerid));
  1040. }*/
  1041. new str[50];
  1042. format(str, 50, "LLADMIN/Admins/%s.sav", Nome(playerid));
  1043. if(DOF2_FileExists(str)) {
  1044. if(DOF2_IsSet(str, "Admin")) {
  1045. PlayerDados[playerid][Admin] = DOF2_GetInt(str, "Admin");
  1046. }
  1047. if(DOF2_IsSet(str, "Helper")) {
  1048. PlayerDados[playerid][Helper] = DOF2_GetBool(str, "Helper");
  1049. }
  1050. if(DOF2_IsSet(str, "Vip")) {
  1051. PlayerDados[playerid][Vip] = DOF2_GetBool(str, "Vip");
  1052. }
  1053. }
  1054. PlayerDados[playerid][Advertencias] = DOF2_GetInt(StringContas, "Advertencias");
  1055. GivePlayerMoney(playerid, DOF2_GetInt(StringContas, "Grana"));
  1056. PlayerDados[playerid][Preso] = DOF2_GetInt(StringContas, "Preso");
  1057. //PlayerDados[playerid][Helper] = DOF2_GetBool(StringContas, "Helper");
  1058. //PlayerDados[playerid][Vip] = DOF2_GetBool(StringContas, "Vip");
  1059. SendClientMessage(playerid, VERDE_CLARO, "Logado Com sucesso!");
  1060. #if USAR_TEXT == 1
  1061. TextDrawDestroy(Inicio[playerid]);
  1062. #endif
  1063. if(PlayerDados[playerid][Admin] > 0)
  1064. {
  1065. format(String, sizeof(String), "Logado de Admin Nível %d", PlayerDados[playerid][Admin]);
  1066. SendClientMessage(playerid, AZUL_CLARO, String);
  1067. format(String, sizeof(String), "~w~Admin ~g~%s ~y~Online", Nome(playerid));
  1068. GameTextForAll(String, 1000, 1);
  1069. PlayerDados[playerid][Trabalhando] = true;
  1070. SendClientMessage(playerid, AZUL_CLARO, "Você está trabalhando, para jogar use /jogar");
  1071. SetPlayerColor(playerid, 0x24E9FFFF);
  1072. SetPlayerHealth(playerid, 999999);
  1073. return 1;
  1074. }
  1075. return 1;
  1076. }
  1077. }
  1078. else
  1079. {
  1080. SendClientMessage(playerid, VERMELHO, "Você não quis se Logar e por isso foi kickado!");
  1081. Kick(playerid);
  1082. return 1;
  1083. }
  1084. }
  1085. if(dialogid == DIALOG_BANIDO)
  1086. {
  1087. if(response)
  1088. {
  1089. SendClientMessage(playerid, BRANCO, "Kickado");
  1090. Kick(playerid);
  1091. }
  1092. return 1;
  1093. }
  1094. if(dialogid == DIALOG_ADM)
  1095. {
  1096. if(response)
  1097. {
  1098. format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} é o mais novo admin do server!", Nome(playerid));
  1099. SendClientMessageToAll(AZUL_CLARO, String);
  1100. EscreverLog("LLADMIN/Logs/NovoAdm.log", String);
  1101. SendClientMessage(playerid, VERDE_CLARO, "Use /la para ver seus comandos de Admin.");
  1102. SetarDado(playerid, Admin, nivel);
  1103. //DOF2_SetInt("LLADMIN/Admins.adm", Nome(playerid), nivel);
  1104. DarAdmin(playerid, nivel);
  1105. }
  1106. if(!response)
  1107. {
  1108. format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} recusou ser admin do server!", Nome(playerid));
  1109. SendClientMessageToAll(AZUL_CLARO, String);
  1110. }
  1111. return 1;
  1112. }
  1113. if(dialogid == DIALOG_HELPER)
  1114. {
  1115. if(!response)
  1116. return format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} recusou ser Helper do server.", Nome(playerid)), SendClientMessageToAll(AZUL_CLARO, String);
  1117. format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} é o mais novo Helper do server", Nome(playerid));
  1118. SendClientMessageToAll(AZUL_CLARO, String);
  1119. SendClientMessage(playerid, VERDE_CLARO, "Use /la para ver seus comandos de Helper.");
  1120. SalvarDados(playerid);
  1121. SetarDado(playerid, Helper, true);
  1122. DarHelper(playerid);
  1123. //DOF2_SetBool("LLADMIN/Helpers.hel", Nome(playerid), true);
  1124. return 1;
  1125. }
  1126. if(dialogid == DIALOG_MUSICAS)
  1127. {
  1128. if(!response) return 0;
  1129. if(listitem == 0)
  1130. {
  1131. MusicaInicial = "nada";
  1132. return 1;
  1133. }
  1134. if(listitem == 1)
  1135. {
  1136. MusicaInicial = Musica[1];
  1137. return 1;
  1138. }
  1139. if(listitem == 2)
  1140. {
  1141. MusicaInicial = Musica[2];
  1142. return 1;
  1143. }
  1144. if(listitem == 3)
  1145. {
  1146. MusicaInicial = Musica[3];
  1147. return 1;
  1148. }
  1149. if(listitem == 4)
  1150. {
  1151. MusicaInicial = Musica[4];
  1152. return 1;
  1153. }
  1154. }
  1155. if(dialogid == DIALOG_SENHANOVA)
  1156. {
  1157. new StrConta[100];
  1158. format(StrConta,sizeof(StrConta), "LLADMIN/Contas/%s.txt", Nome(playerid));
  1159. if(!strlen(inputtext))
  1160. {
  1161. format(String, sizeof(String), "{D9E01B}Digite uma senha ou clique em Cancelar.\n\n{1BE0AF}Sua senha atual é {1B63E0}'%s'.\n\nDigite sua nova senha abaixo:", DOF2_GetString(StrConta, "Senha"));
  1162. ShowPlayerDialog(playerid, DIALOG_SENHANOVA, DIALOG_STYLE_INPUT, "{1BE084}Nova Senha", String, "Mudar", "Cancelar");
  1163. return 1;
  1164. }
  1165. DOF2_SetString(StrConta, "Senha", inputtext);
  1166. format(String, sizeof(String), "{12FF05}Sua nova senha é {25E01B}'%s'", inputtext);
  1167. SendClientMessage(playerid, -1, String);
  1168. SalvarDados(playerid);
  1169. }
  1170. if(dialogid == DIALOG_OPCOES) {
  1171. switch(listitem) {
  1172. case 0: {
  1173. format(String, sizeof String, "Digite o motivo pelo qual quer kickar\no jogador %s (ID: %d)", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1174. ShowPlayerDialog(playerid, DIALOG_KICKAR, DIALOG_STYLE_INPUT, "Kickar", String, "Kickar", "Fechar");
  1175. }
  1176. case 1: {
  1177. format(String, sizeof String, "Digite o motivo pelo qual quer banir\no jogador %s (ID: %d)", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1178. ShowPlayerDialog(playerid, DIALOG_BANIR, DIALOG_STYLE_INPUT, "Banir", String, "Banir", "Fechar");
  1179. }
  1180. case 2: {
  1181. format(String, sizeof String, "Digite o motivo pelo qual quer advertir\no jogador %s (ID: %d)", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1182. ShowPlayerDialog(playerid, DIALOG_ADVERTIR, DIALOG_STYLE_INPUT, "Advertir", String, "Advertir", "Fechar");
  1183. }
  1184. case 3: {
  1185. new Float:Pos[3];
  1186. GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
  1187. if(IsPlayerInAnyVehicle(IdClicado[playerid]))
  1188. {
  1189. new carroid = GetPlayerVehicleID(IdClicado[playerid]);
  1190. SetVehiclePos(carroid, Pos[0]+2, Pos[1]+2, Pos[2]+2);
  1191. format(String, sizeof(String), "O Admin %s trouxe você até ele!", Nome(playerid));
  1192. SendClientMessage(IdClicado[playerid], AZUL_CLARO, String);
  1193. format(String, sizeof(String), "Você trouxe o jogador %s [ID: %d] até você", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1194. SendClientMessage(playerid, AZUL_CLARO, String);
  1195. return 1;
  1196. }
  1197. SetPlayerPos(IdClicado[playerid], Pos[0]+2, Pos[1]+2, Pos[2]+2);
  1198. format(String, sizeof(String), "O Admin %s trouxe você até ele!", Nome(playerid));
  1199. SendClientMessage(IdClicado[playerid], AZUL_CLARO, String);
  1200. format(String, sizeof(String), "Você trouxe o jogador %s [ID: %d] até você", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1201. SendClientMessage(playerid, AZUL_CLARO, String);
  1202. }
  1203. case 4: {
  1204. new Float:Pos[3];
  1205. GetPlayerPos(IdClicado[playerid], Pos[0], Pos[1], Pos[2]);
  1206. if(IsPlayerInAnyVehicle(playerid))
  1207. {
  1208. new carroid = GetPlayerVehicleID(playerid);
  1209. SetVehiclePos(carroid, Pos[0], Pos[1], Pos[2]);
  1210. format(String, sizeof(String), "O Admin %s veio até você!", Nome(playerid));
  1211. SendClientMessage(IdClicado[playerid], AZUL_CLARO, String);
  1212. format(String, sizeof(String), "Você foi até o Jogador %s [ID: %d]", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1213. SendClientMessage(playerid, AZUL_CLARO, String);
  1214. return 1;
  1215. }
  1216. SetPlayerPos(playerid, Pos[0]+2, Pos[1]+2, Pos[2]+2);
  1217. format(String, sizeof(String), "O Admin %s veio até você!", Nome(playerid));
  1218. SendClientMessage(IdClicado[playerid], AZUL_CLARO, String);
  1219. format(String, sizeof(String), "Você foi até o Jogador %s [ID: %d]", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1220. SendClientMessage(playerid, AZUL_CLARO, String);
  1221. }
  1222. case 5: {
  1223. format(String, sizeof String, "Digite a mensagem particular que deseja enviar\nao jogador %s (ID: %d)", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1224. ShowPlayerDialog(playerid, DIALOG_PART, DIALOG_STYLE_INPUT, "Particular", String, "Enviar", "Fechar");
  1225. }
  1226. case 6: {
  1227. new StringM[500];
  1228. new Fala[5];
  1229. new ip[25];
  1230. if(PlayerDados[ID][Calado] == true) Fala = "Sim";
  1231. if(PlayerDados[ID][Calado] == false) Fala = "Nao";
  1232. GetPlayerIp(ID, ip, 25);
  1233. format(StringM, sizeof(StringM), "{FFFFFF}Dados de {11D41E}%s{FFFFFF}\n\n{11D41E}Matou:{FFFFFF} %d\n{11D41E}Morreu:{FFFFFF} %d\n{11D41E}Grana:{FFFFFF} %d\n{11D41E}Admin Level:{FFFFFF} %d\n{11D41E}Calado:{FFFFFF} %s\n{11D41E}Tempo Preso:{FFFFFF} %d", Nome(ID), PlayerDados[IdClicado[playerid]][Matou], PlayerDados[IdClicado[playerid]][Morreu], GetPlayerMoney(ID), PlayerDados[IdClicado[playerid]][Admin], Fala, PlayerDados[IdClicado[playerid]][Preso]);
  1234. format(StringM, sizeof(StringM), "%s\n{11D41E}Advertencias:{FFFFFF} %d \n{11D41E}IP:{FFFFFF} %s", StringM, PlayerDados[IdClicado[playerid]][Advertencias], ip);
  1235. ShowPlayerDialog(playerid, DIALOG_INFO, DIALOG_STYLE_MSGBOX, "Informações do Player", StringM, "Fechar", "");
  1236. }
  1237. }
  1238. }
  1239. if(dialogid == DIALOG_KICKAR) {
  1240. if(!(response)) {
  1241. format(String, 60, "Opções de Admin sobre %s", NomeClicado[playerid]);
  1242. return ShowPlayerDialog(playerid, DIALOG_OPCOES, DIALOG_STYLE_LIST, String , "{F5F50C}Kickar\n{F5180C}Banir\n{0CF50C}Advertir\n{FF05F7}Trazer\n{FF05F7}Ir\n{14C9C9}Particular\n{0C8CF5}Status", "Avançar", "Fechar");
  1243. }
  1244. if(!(strlen(inputtext))) {
  1245. format(String, sizeof String, "Digite o motivo pelo qual quer kickar\no jogador %s (ID: %d)", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1246. return ShowPlayerDialog(playerid, DIALOG_KICKAR, DIALOG_STYLE_INPUT, "Kickar", String, "Kickar", "Fechar");
  1247. }
  1248. format(String, sizeof(String), "[LL-ADMIN] O Admin %s Kickou o Jogador %s[ID: %d] pelo motivo: %s\r\n", Nome(playerid), Nome(IdClicado[playerid]), IdClicado[playerid], inputtext);
  1249. SendClientMessageToAll(VERDE_CLARO, String);
  1250. Kickar(ID, Nome(playerid), inputtext);
  1251. EscreverLog("LLADMIN/Logs/Kickados.log", String);
  1252. }
  1253. if(dialogid == DIALOG_BANIR) {
  1254. if(!(response)) {
  1255. format(String, 60, "Opções de Admin sobre %s", NomeClicado[playerid]);
  1256. return ShowPlayerDialog(playerid, DIALOG_OPCOES, DIALOG_STYLE_LIST, String , "{F5F50C}Kickar\n{F5180C}Banir\n{0CF50C}Advertir\n{FF05F7}Trazer\n{FF05F7}Ir\n{14C9C9}Particular\n{0C8CF5}Status", "Avançar", "Fechar");
  1257. }
  1258. if(!(strlen(inputtext))) {
  1259. format(String, sizeof String, "Digite o motivo pelo qual quer banir\no jogador %s (ID: %d)", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1260. return ShowPlayerDialog(playerid, DIALOG_BANIR, DIALOG_STYLE_INPUT, "Banir", String, "Banir", "Fechar");
  1261. }
  1262. format(String, sizeof(String), "[LL-ADMIN] O Admin %s Baniu o Jogador %s[ID: %d] pelo motivo: %s\r\n", Nome(playerid), Nome(IdClicado[playerid]), IdClicado[playerid], inputtext);
  1263. SendClientMessageToAll(VERDE_CLARO, String);
  1264. EscreverLog("LLADMIN/Logs/Banidos.log", String);
  1265. format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(IdClicado[playerid]));
  1266. getdate(Ano, Mes, Dia);
  1267. gettime(Hora, Minuto, Segundo);
  1268. DOF2_CreateFile(String);
  1269. DOF2_SetString(String, "Admin", Nome(playerid));
  1270. DOF2_SetString(String, "Motivo", inputtext);
  1271. DOF2_SetInt(String, "Ano", Ano);
  1272. DOF2_SetInt(String, "Mes", Mes);
  1273. DOF2_SetInt(String, "Dia", Dia);
  1274. DOF2_SetInt(String, "Hora", Hora);
  1275. DOF2_SetInt(String, "Minuto", Minuto);
  1276. Kick(ID);
  1277. }
  1278. if(dialogid == DIALOG_ADVERTIR) {
  1279. if(!(response)) {
  1280. format(String, 60, "Opções de Admin sobre %s", NomeClicado[playerid]);
  1281. return ShowPlayerDialog(playerid, DIALOG_OPCOES, DIALOG_STYLE_LIST, String , "{F5F50C}Kickar\n{F5180C}Banir\n{0CF50C}Advertir\n{FF05F7}Trazer\n{FF05F7}Ir\n{14C9C9}Particular\n{0C8CF5}Status", "Avançar", "Fechar");
  1282. }
  1283. if(!(strlen(inputtext))) {
  1284. format(String, sizeof String, "Digite o motivo pelo qual quer advertir\no jogador %s (ID: %d)", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1285. return ShowPlayerDialog(playerid, DIALOG_KICKAR, DIALOG_STYLE_INPUT, "Advertir", String, "Advertir", "Fechar");
  1286. }
  1287. if(PlayerDados[IdClicado[playerid]][Advertencias] != 3)
  1288. {
  1289. format(String, sizeof(String), "[LL ADMIN] O Admin %s Deu uma Advertencia a %s Pelo Motivo: %s\r\n", Nome(playerid), Nome(IdClicado[playerid]), inputtext);
  1290. SendClientMessageToAll(VERMELHO_CLARO, String);
  1291. EscreverLog("LLADMIN/Logs/Advertidos.log", String);
  1292. format(String, sizeof(String), "Você foi Advertido pelo admin %s Pelo motivo: %s. Se for advertido 3 vezes será BANIDO Automaticamente", Nome(playerid), inputtext);
  1293. SendClientMessage(ID, LARANJA, String);
  1294. PlayerDados[ID][Advertencias] += 1;
  1295. }
  1296. if(PlayerDados[IdClicado[playerid]][Advertencias] == 3)
  1297. {
  1298. format(String, sizeof(String), "[LL ADMIN] O Admin %s Deu a terceira Advertencia a %s Pelo Motivo: %s e por isso ele foi Banido!", Nome(playerid), Nome(IdClicado[playerid]), inputtext);
  1299. SendClientMessageToAll(VERMELHO_CLARO, String);
  1300. format(String, sizeof(String), "Você foi Advertido pela terceira vez pelo admin %s Pelo motivo: %s. por isso você foi banido!", Nome(playerid), inputtext);
  1301. SendClientMessage(ID, LARANJA, String);
  1302. format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(ID));
  1303. getdate(Ano, Mes, Dia);
  1304. gettime(Hora, Minuto, Segundo);
  1305. new IP[25];
  1306. GetPlayerIp(ID, IP, 25);
  1307. DOF2_CreateFile(String);
  1308. DOF2_SetString(String, "Admin", Nome(playerid));
  1309. DOF2_SetString(String, "Motivo", "3° Advertencia");
  1310. DOF2_SetInt(String, "Ano", Ano);
  1311. DOF2_SetInt(String, "Mes", Mes);
  1312. DOF2_SetInt(String, "Dia", Dia);
  1313. DOF2_SetInt(String, "Hora", Hora);
  1314. DOF2_SetInt(String, "Minuto", Minuto);
  1315. Kick(ID);
  1316. }
  1317. }
  1318. if(dialogid == DIALOG_PART) {
  1319. if(!(response)) {
  1320. format(String, 60, "Opções de Admin sobre %s", NomeClicado[playerid]);
  1321. return ShowPlayerDialog(playerid, DIALOG_OPCOES, DIALOG_STYLE_LIST, String , "{F5F50C}Kickar\n{F5180C}Banir\n{0CF50C}Advertir\n{FF05F7}Trazer\n{FF05F7}Ir\n{14C9C9}Particular\n{0C8CF5}Status", "Avançar", "Fechar");
  1322. }
  1323. if(!(strlen(inputtext))) {
  1324. format(String, sizeof String, "Digite a mensagem particular que deseja enviar\nao jogador %s (ID: %d)", Nome(IdClicado[playerid]), IdClicado[playerid]);
  1325. return ShowPlayerDialog(playerid, DIALOG_PART, DIALOG_STYLE_INPUT, "Particular", String, "Enviar", "Fechar");
  1326. }
  1327. format(String, sizeof(String), "Particular de {E0D01B}%s{FFFF00}: %s", Nome(playerid), inputtext);
  1328. Msg(IdClicado[playerid], AMARELO, String);
  1329. format(String, sizeof(String), "Particular enviada com sucesso para %s", Nome(ID));
  1330. Msg(playerid, AMARELO, String);
  1331. }
  1332. if(dialogid == DIALOG_IPS1) {
  1333. if(!(response))
  1334. return 0;
  1335. ShowPlayerDialog(playerid, DIALOG_IPS2, DIALOG_STYLE_MSGBOX, "Ips dos jogadores conectados:", Ips2, "Fechar", "Voltar");
  1336. }
  1337. if(dialogid == DIALOG_IPS2) {
  1338. if(!(response))
  1339. ShowPlayerDialog(playerid, DIALOG_IPS1, DIALOG_STYLE_MSGBOX, "Ips dos jogadores conectados:", Ips2, "Proximo", "Fechar");
  1340. else
  1341. return 0;
  1342. }
  1343. return 0;
  1344. }
  1345.  
  1346. //SISTEMA DE VIPS
  1347. #if USAR_SISTEMA_VIP == 1
  1348. CMD:v(playerid, params[])
  1349. {
  1350. new t[128];
  1351. if(PlayerDados[playerid][Vip] == false) return SendClientMessage(playerid, BRANCO, "Você não é um jogador VIP!");
  1352. if(sscanf(params, "s", t)) return MensagemDupla(playerid, "[LL ADMIN] Use /v [texto]", "Use o comando para enviar uma mensagem a todos os vips online.");
  1353. for(new i = 0; i < MAX_PLAYERS; ++i)
  1354. {
  1355. if(PlayerDados[i][Vip] == true)
  1356. {
  1357. format(String, sizeof(String), "VIP %s: %s", Nome(playerid), t);
  1358. SendClientMessage(i, VERDE_CLARO, String);
  1359. }
  1360. }
  1361. return 1;
  1362. }
  1363. CMD:kitvip(playerid, params[])
  1364. {
  1365. if(!PlayerDados[playerid][Vip]) return SendClientMessage(playerid, BRANCO, "Você não é um jogador VIP!");
  1366. MensagemFormatadaParaTodos(AMARELO, "O Jogador %s pegou um KitVip", Nome(playerid));
  1367. GivePlayerWeapon(playerid, 4, 1); //FACA
  1368. GivePlayerWeapon(playerid, 16, 200); //GRANADA
  1369. GivePlayerWeapon(playerid, 24, 300); //DESERT EAGLE
  1370. GivePlayerWeapon(playerid, 26, 300); //SAWNOFF
  1371. GivePlayerWeapon(playerid, 29, 500); //MP5
  1372. GivePlayerWeapon(playerid, 30, 500); //AK-47
  1373. GivePlayerWeapon(playerid, 34, 200); //SNIPER
  1374. GivePlayerWeapon(playerid, 39, 100); //EXPLOSIVO
  1375. PlayerDados[playerid][PegouKit] = true;
  1376. TimerKit = SetTimerEx("LiberarKit", 30*1000, false, "i", playerid);
  1377. return 1;
  1378. }
  1379. CMD:vips(playerid, params[])
  1380. {
  1381. new IsVip;
  1382. SendClientMessage(playerid, VERDE_CLARO, "Vips Online:");
  1383. for(new i = 0; i < MAX_PLAYERS; ++i)
  1384. {
  1385. if(PlayerDados[i][Vip])
  1386. {
  1387. format(String, sizeof(String), "%s", Nome(i));
  1388. SendClientMessage(playerid, BRANCO, String);
  1389. IsVip++;
  1390. }
  1391. }
  1392. if(IsVip == 0)
  1393. {
  1394. SendClientMessage(playerid, CINZA, "Nenhum VIP online.");
  1395. }
  1396. IsVip = 0;
  1397. return 1;
  1398. }
  1399. CMD:cc(playerid, params[])
  1400. {
  1401. new
  1402. Carro,
  1403. Cor1,
  1404. Cor2;
  1405. if(!PlayerDados[playerid][Vip]) return SendClientMessage(playerid, BRANCO, "Você precisa ser Vip para usar este comando!");
  1406. if(sscanf(params, "iii", Carro, Cor1, Cor2)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /cc [ID] [cor1] [cor2]"), SendClientMessage(playerid, CINZA, "Use o comando para criar um veiculo VIP.");
  1407. new Float:X,
  1408. Float:Y,
  1409. Float:X1,
  1410. Float:Y1,
  1411. Float:Z,
  1412. Float:A;
  1413. PosicaoFrentePlayer(playerid, X, Y, 3);
  1414. GetPlayerPos(playerid, X1, Y1, Z);
  1415. GetPlayerFacingAngle(playerid, A);
  1416. DestroyVehicle(CarroDono[playerid]);
  1417. CarroDono[playerid] = CreateVehicle(Carro, X, Y, Z, A+90, Cor1, Cor2, 15);
  1418. format(String, sizeof(String), "Carro VIP de {FFFF00}%s", Nome(playerid));
  1419. DonoCarro[playerid] = Create3DTextLabel(String, VERDE_CLARO, X, Y, Z+1, 30, 0, 1);
  1420. Attach3DTextLabelToVehicle(DonoCarro[playerid], CarroDono[playerid], 0, 0, 0);
  1421. PutPlayerInVehicle(playerid, CarroDono[playerid], 0);
  1422. return 1;
  1423. }
  1424. #endif
  1425.  
  1426. CMD:sim(playerid, params[])
  1427. {
  1428. if(Enquete[Criada] == false) return SendClientMessage(playerid, CINZA, "Nenhuma enquete aberta!");
  1429. Enquete[VotoSim]++;
  1430. SendClientMessage(playerid, AMARELO, "Voto computado com sucesso.");
  1431. return 1;
  1432. }
  1433.  
  1434. CMD:nao(playerid, params[])
  1435. {
  1436. if(Enquete[Criada] == false) return SendClientMessage(playerid, CINZA, "Nenhuma enquete aberta!");
  1437. Enquete[VotoNao]++;
  1438. SendClientMessage(playerid, AMARELO, "Voto computado com sucesso.");
  1439. return 1;
  1440. }
  1441.  
  1442. CMD:relatorio(playerid, params[])
  1443. {
  1444. new Texto[128];
  1445. if(sscanf(params, "s", Texto)) return SendClientMessage(playerid, BRANCO, "[LL ADMIN] Use /relatorio [texto] para mandar uma mensagem para os admins online");
  1446. new strel[256];
  1447. format(strel, sizeof(strel), "Relatorio de %s: %s\r\n", Nome(playerid), Texto);
  1448. EscreverLog("LLADMIN/Logs/Relatorios.log", strel);
  1449. if(PlayerDados[playerid][Vip] == true)
  1450. {
  1451. for(new i = 0; i < MAX_PLAYERS; i++)
  1452. {
  1453. if((PlayerDados[i][Admin] > 0) || (PlayerDados[i][Helper]))
  1454. {
  1455. format(String, sizeof(String), "Relatorio VIP de %s [ID: %d]: %s", Nome(playerid), playerid, Texto);
  1456. SendClientMessage(i, VERDE, String);
  1457. }
  1458. }
  1459. SendClientMessage(playerid, VERDE, "Seu relatorio VIP foi enviado com sucesso!");
  1460. return 1;
  1461. }
  1462. for(new i = 0; i < MAX_PLAYERS; i++)
  1463. {
  1464. if((PlayerDados[i][Admin] > 0) || (PlayerDados[i][Helper]))
  1465. {
  1466. format(String, sizeof(String), "Relatorio de %s [ID: %d]: %s", Nome(playerid), playerid, Texto);
  1467. SendClientMessage(i, AMARELO, String);
  1468. }
  1469. }
  1470. SendClientMessage(playerid, AMARELO, "Seu relatorio foi enviado com sucesso!");
  1471. return 1;
  1472. }
  1473.  
  1474. /*CMD:hq(playerid) //debug
  1475. {
  1476. SetPlayerPos(playerid, 2204.39990234,1846.00000000,12.60000038);
  1477. return 1;
  1478. }
  1479. */
  1480.  
  1481. CMD:ajudavip(playerid, params[])
  1482. {
  1483. if(GetarDado(playerid, Vip) == false) return Msg(playerid, BRANCO, "Você não é um jgoador VIP.");
  1484. ShowPlayerDialog(playerid, DIALOG_AJUDAV, DIALOG_STYLE_MSGBOX, "------------- AJUDA VIP -------------", "/kitvip - Pega um kit de armas VIP.\n/v - Chat vip.\n/cc - Cria um carro vip.\n/vips - mostra os vips online", "Fechar", "");
  1485. return 1;
  1486. }
  1487.  
  1488. CMD:admins(playerid, params[])
  1489. {
  1490. new IsAdmin;
  1491. SendClientMessage(playerid, ROSA, "Admin Online:");
  1492. new Online[10];
  1493. for(new i = 0; i < MAX_PLAYERS; i++)
  1494. {
  1495. if(IsPlayerConnected(i)) {
  1496. if(PlayerDados[i][Admin] > 0)
  1497. {
  1498. if(PlayerDados[i][Escondido] == false) {
  1499. if(PlayerDados[i][Admin] == 1) AdminNivel = "Moderador";
  1500. if(PlayerDados[i][Admin] == 2) AdminNivel = "Admin Iniciante";
  1501. if(PlayerDados[i][Admin] == 3) AdminNivel = "Admin Geral";
  1502. if(PlayerDados[i][Admin] == 4) AdminNivel = "Sub Dono";
  1503. if(PlayerDados[i][Admin] == 5) AdminNivel = "Poderoso Chefão";
  1504. if(PlayerDados[i][Trabalhando] == true) AdminTrabalhando = "Trabalhando";
  1505. if(PlayerDados[i][Trabalhando] == false) AdminTrabalhando = "Jogando";
  1506. if(PlayerDados[i][Afk] == true) Online = "AFK";
  1507. if(PlayerDados[i][Afk] == false) Online = "Online";
  1508. format(String, sizeof(String), "%s | %s | %s | %s", Nome(i), AdminNivel, AdminTrabalhando, Online);
  1509. SendClientMessage(playerid, LARANJA, String);
  1510. IsAdmin ++;
  1511. }
  1512. }
  1513. }
  1514. }
  1515. if(IsAdmin == 0)
  1516. {
  1517. SendClientMessage(playerid, CINZA, "Nenhum Admin Online!");
  1518. }
  1519. IsAdmin = 0;
  1520. SendClientMessage(playerid, CINZA, "Use /helpers");
  1521. return 1;
  1522. }
  1523.  
  1524. //SÓ VAI FUNCIONAR O SEGUINTE COMANDO SE VC USAR O SISTEMA DE REGISTRO DO FS
  1525. #if USAR_SISTEMA_REGISTRO == 1
  1526. CMD:mudarsenha(playerid, params[])
  1527. {
  1528. new StrConta[100];
  1529. format(StrConta,sizeof(StrConta), "LLADMIN/Contas/%s.txt", Nome(playerid));
  1530. format(String, sizeof(String), "{1BE0AF}Sua senha atual é {1B63E0}'%s'.\n\nDigite sua nova senha abaixo:", DOF2_GetString(StrConta, "Senha"));
  1531. ShowPlayerDialog(playerid, DIALOG_SENHANOVA, DIALOG_STYLE_INPUT, "{1BE084}Nova Senha", String, "Mudar", "Cancelar");
  1532. return 1;
  1533. }
  1534. #endif
  1535.  
  1536.  
  1537.  
  1538.  
  1539. CMD:helpers(playerid, params[])
  1540. {
  1541. new IsHelper;
  1542. new Online[10];
  1543. SendClientMessage(playerid, VERDE, "Helpers Online:");
  1544. for(new i = 0; i < MAX_PLAYERS; i++)
  1545. {
  1546. if(PlayerDados[i][Helper])
  1547. {
  1548. if(PlayerDados[i][Trabalhando] == true) AdminTrabalhando = "Trabalhando";
  1549. if(PlayerDados[i][Trabalhando] == false) AdminTrabalhando = "Jogando";
  1550. if(PlayerDados[i][Afk] == true) Online = "AFK";
  1551. if(PlayerDados[i][Afk] == false) Online = "Online";
  1552. format(String, sizeof(String), "%s | %s | %s", Nome(i), AdminTrabalhando, Online);
  1553. SendClientMessage(playerid, VERDE_CLARO, String);
  1554. IsHelper ++;
  1555. }
  1556. }
  1557. if(IsHelper == 0)
  1558. {
  1559. SendClientMessage(playerid, CINZA, "Nenhum Helper Online!");
  1560. }
  1561. IsHelper = 0;
  1562. return 1;
  1563. }
  1564.  
  1565. CMD:duvida(playerid, params[]) {
  1566. new texto[100];
  1567. if(sscanf(params, "s", texto))
  1568. return MensagemDupla(playerid, "Use /duvida [pergunta]", "Use o comando para enviar uma duvida aos Helpers online.");
  1569. Pergunta[playerid] = texto;
  1570. Loop(i, MAX_PLAYERS) {
  1571. if(IsPlayerConnected(i)) {
  1572. if(GetarDado(i, Helper) == true) {
  1573. MsgFormat(playerid, AMARELO, "Duvida de %s: %s. Use /responder", Nome(playerid), texto);
  1574. }
  1575. }
  1576. }
  1577. return 1;
  1578. }
  1579.  
  1580. CMD:responder(playerid, params[]) {
  1581. if(GetarDado(playerid, Helper) == false)
  1582. return Msg(playerid, CINZA, "Você precisa ser helper para usar esse comando.");
  1583. new texto[128];
  1584. if(sscanf(params, "us", ID, texto))
  1585. return MensagemDupla(playerid, "[LL ADMIN] Use /responder [playerid] [resposta]", "Use o comando para responder uma /duvida.");
  1586. if(strcmp(Pergunta[ID], "Nenhuma", true) == 0)
  1587. return Msg(playerid, CINZA, "O jogador não fez nenhuma pergunta.");
  1588. format(String, sizeof String, "Resposta do Helper %s da sua pergunta: %s", Nome(playerid), Pergunta[ID]);
  1589. Msg(ID, AMARELO, String);
  1590. format(String, sizeof String, "%s", texto);
  1591. Msg(ID, AMARELO, String);
  1592. MsgFormat(playerid, VERDE_CLARO, "Resposta enviada com sucesso para %s [ID: %d]", Nome(ID), ID);
  1593. Pergunta[ID] = "Nenhuma";
  1594. return 1;
  1595. }
  1596.  
  1597. CMD:id(playerid, params[]) {
  1598. new name[24];
  1599. if(sscanf(params, "s", name))
  1600. return MensagemDupla(playerid, "[LL ADMIN] Use /id [Nome]", "Use o comando para saber o ID de um player através do seu nome.");
  1601. new total = 0;
  1602. Loop(i, MAX_PLAYERS) {
  1603. if(IsPlayerConnected(i)) {
  1604. if(strfind(Nome(i), name, true) != -1) {
  1605. format(String, 50, "ID: %d - NOME: %s", i, Nome(i));
  1606. Msg(playerid, VERDE_CLARO, String);
  1607. total ++;
  1608. }
  1609. }
  1610. }
  1611. if(total == 0)
  1612. Msg(playerid, CINZA, "Nenhum jogador encontrado com esse nome.");
  1613. return 1;
  1614. }
  1615.  
  1616. CMD:temposair(playerid, params[])
  1617. {
  1618. if(PlayerDados[playerid][Preso] < 1) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Você não está preso para usar este comando");
  1619. format(String, sizeof(String), "Faltam %d Segundos para você ficar livre!", PlayerDados[playerid][Preso]);
  1620. SendClientMessage(playerid, VERDE_CLARO, String);
  1621. return 1;
  1622. }
  1623.  
  1624. CMD:la(playerid, params[])
  1625. {
  1626. new Ajuda[1500];
  1627. if((PlayerDados[playerid][Admin] == 0) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
  1628. if(PlayerDados[playerid][Helper])//HELPER
  1629. {
  1630. strcat(Ajuda,"{FFFFFF}Helper\n{FFEA03}/Jogar - /Trabalhar - /Servico - /Ir - /Trazer - /Particular - /Players\n/Afk - /SairAfk - /PortaoAdm - /Responder\n\n");
  1631. }
  1632. if(PlayerDados[playerid][Admin] > 0)//NIVEL 1
  1633. {
  1634. strcat(Ajuda, "{FFFFFF}Nivel 1\n{4CFA1B}/Jogar - /Trabalhar - /Servico - /InfoPlayer - /Verip - /Avisar - /Destrancarcarros\n/Kickar - /Tapa - /Assistir - /pAssistir - /Texto - /a - /Particular\n/Players - /Afk - /SairAfk - /Contagem - /PortaoAdm - /LimparChat\n\n");
  1635. }//20
  1636. if(PlayerDados[playerid][Admin] > 1)//NIVEL 2
  1637. {
  1638. strcat(Ajuda, "{FFFFFF}Nivel 2\n{0C9E05}/SetarInterior - /Banir - /Desbanir - /Advertir - /Ir - /Trazer\n/Congelar - /Descongelar - /Dararma - /Desarmar - /CriarCarro\n/Respawn - /DestruirCarro - /Calar - /Liberar - /SetarVida - /SetarColete\n/ForcarCarro - /ForcarSkin - /Jetpack - /TrazerTodos - /MoverPlayer - /PosPlayer\n/Versao - /Blindar - /Desblindar\n\n");
  1639. }//22
  1640. if(PlayerDados[playerid][Admin] > 2)//NIVEL 3
  1641. {
  1642. strcat(Ajuda, "{FFFFFF}Nivel 3\n{11CFCF}/Prender - /Soltar - /SetarSkin - /SetarNome - /SetarCor\n/Clima - /GodMode - /Ejetar - /Falar - /Crash - /SetarPontos\n/SetarPos - /VerPos - /Barril - /dBarris - /BanirIP - /DesbanirIP\n/Tempo - /AtivarMsgs - /DesativarMsgs\n/Enquete - /Disfarce - /SairDisfarce - /KickSecreto - /BanSecreto - /SetarVW\n\n");
  1643. }//23
  1644. if(PlayerDados[playerid][Admin] > 3)//NIVEL 4
  1645. {
  1646. strcat(Ajuda, "{FFFFFF}Nivel 4\n{1170CF}/KickarTodos - /DesarmarTodos - /ChatFalso - /GMX - /Invisivel\n/Visivel - /InteriorTodos - /IPs - /CongelarTodos\n/DescongelarTodos - /MatarTodos - /DarVip - /TirarVip - /MusicaInicial\n/FoderPlayer - /DEntradas - /Resetar - /CriarIcone - /DestruirIcone\n\n");
  1647. }//17
  1648. if(PlayerDados[playerid][Admin] > 4)//NIVEL 5
  1649. {
  1650. strcat(Ajuda, "{FFFFFF}Nivel 5\n{FA0505}/NomeServer - /NomeGM - /NomeMapa - /CriarTeleporte - /DarAdmin\n/SetarGravidade - /DarHelper - /TirarHelper - /SetarAdmin - /TrancarServer\n/DestrancarServer\n\n");
  1651. }//11 = 93
  1652. ShowPlayerDialog(playerid, DIALOG_AL, DIALOG_STYLE_MSGBOX, "LL ADMIN - Ajuda", Ajuda, "Fechar", "");
  1653. return 1;
  1654. }
  1655.  
  1656. //---------------------------------COMANDOS DE ADMIN----------------------------------------
  1657.  
  1658. //------------------PARA NIVEL 1 OU HELPER------------------------------
  1659.  
  1660. CMD:limparchat(playerid, params[])
  1661. {
  1662. if(!NivelRequerido(playerid, 1)) return 1;
  1663. for(new t = 0; t < 100; ++t)
  1664. {
  1665. SendClientMessageToAll(-1, " ");
  1666. }
  1667. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} limpou o chat.", Nome(playerid));
  1668. return 1;
  1669. }
  1670.  
  1671. CMD:portaoadm(playerid, params[])
  1672. {
  1673. if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
  1674. MoveObject(PortaoHQ, 2205.10009766,1835.50000000,12.60000038, 4, 0.00000000, 0.00000000, 91.99951172);
  1675. GameTextForPlayer(playerid, "Portao ~g~Aberto", 1000, 6);
  1676. SetTimer("FecharPortao", 5000, false);
  1677. return 1;
  1678. }
  1679.  
  1680. CMD:contagem(playerid, params[])
  1681. {
  1682. if(!NivelRequerido(playerid, 1)) return 1;
  1683. if(sscanf(params, "i", time)) return MensagemDupla(playerid, "[LL ADMIN] Use /contagem [tempo]", "Use o comando para iniciar uma contagem regressiva.");
  1684. if((time < 1) || (time > 20)) return Msg(playerid, CINZA, "Use no maximo 20 segundos!");
  1685. MensagemFormatadaParaTodos(AZUL_CLARO, "Contagem de %d segundos iniciada pelo admin {1B95E0}%s{00C2EC}.", time, Nome(playerid));
  1686. TimerCont = SetTimer("DiminuirTempo", 1000, true);
  1687. return 1;
  1688. }
  1689.  
  1690. CMD:afk(playerid, params[])
  1691. {
  1692. if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
  1693. if(PlayerDados[playerid][Trabalhando] == false) return Msg(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1694. TogglePlayerSpectating(playerid, true);
  1695. SetPlayerHealth(playerid, 99999);
  1696. TogglePlayerControllable(playerid, false);
  1697. PlayerDados[playerid][Afk] = true;
  1698. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} Está AFK. Veja em /admins", Nome(playerid));
  1699. if(PlayerDados[playerid][Helper] == true)
  1700. {
  1701. MensagemFormatadaParaTodos(AZUL_CLARO, "O Helper {1B95E0}%s{00C2EC} Está AFK. Veja em /helpers", Nome(playerid));
  1702. }
  1703. Msg(playerid, CINZA, "Use /sairafk para sair do Afk.");
  1704. return 1;
  1705. }
  1706.  
  1707. CMD:sairafk(playerid, params[])
  1708. {
  1709. if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
  1710. if(PlayerDados[playerid][Trabalhando] == false) return Msg(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1711. TogglePlayerSpectating(playerid, false);
  1712. SetPlayerHealth(playerid, 99999);
  1713. TogglePlayerControllable(playerid, true);
  1714. PlayerDados[playerid][Afk] = false;
  1715. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} não está mais AFK. Veja em /admins", Nome(playerid));
  1716. if(PlayerDados[playerid][Helper] == true)
  1717. {
  1718. MensagemFormatadaParaTodos(AZUL_CLARO, "O Helper {1B95E0}%s{00C2EC}não está mais AFK. Veja em /helpers", Nome(playerid));
  1719. }
  1720. return 1;
  1721. }
  1722.  
  1723. CMD:players(playerid, params[])
  1724. {
  1725. if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
  1726. format(String, sizeof(String), "Players Online: {E0D01B}%d/%d", PlayersOnline, GetMaxPlayers());
  1727. SendClientMessageToAll(AZUL, String);
  1728. return 1;
  1729. }
  1730.  
  1731. CMD:particular(playerid, params[])
  1732. {
  1733. if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
  1734. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1735. new t[128];
  1736. if(sscanf(params, "us", ID, t)) return MensagemDupla(playerid, "[LL ADMIN] Use /particular [ID] [texto]", "Use o comando para mandar uma mensagem particular para um jogador.");
  1737. format(String, sizeof(String), "Particular de {E0D01B}%s{FFFF00}: %s", Nome(playerid), t);
  1738. Msg(ID, AMARELO, String);
  1739. format(String, sizeof(String), "Particular enviada com sucesso para %s", Nome(ID));
  1740. Msg(playerid, AMARELO, String);
  1741. return 1;
  1742. }
  1743. CMD:servico(playerid, params[])
  1744. {
  1745. if((PlayerDados[playerid][Admin] == 0) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1746. if((PlayerDados[playerid][Trabalhando] == true))
  1747. {
  1748. PlayerDados[playerid][Trabalhando] = false;
  1749. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Jogando, Agora ele é um Jogador Normal", Nome(playerid));
  1750. if(PlayerDados[playerid][Helper])
  1751. {
  1752. format(String, sizeof(String), "O Helper {1B95E0}%s{00C2EC} Está Jogando, Agora ele é um Jogador Normal", Nome(playerid));
  1753. }
  1754. SendClientMessageToAll(AZUL_CLARO, String);
  1755. SendClientMessage(playerid, VERDE_CLARO, "Para voltar a trabalhar use /servico novamente.");
  1756. SetPlayerColor(playerid, LARANJA);
  1757. SetPlayerHealth(playerid, 100);
  1758. return 1;
  1759. }
  1760. if((PlayerDados[playerid][Trabalhando] == false))
  1761. {
  1762. PlayerDados[playerid][Trabalhando] = true;
  1763. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Trabalhando, Veja em /admins", Nome(playerid));
  1764. if(PlayerDados[playerid][Helper])
  1765. {
  1766. format(String, sizeof(String), "O Helper {1B95E0}%s{00C2EC} Está Trabalhando, Veja em /helpers", Nome(playerid));
  1767. }
  1768. SendClientMessageToAll(AZUL_CLARO, String);
  1769. SendClientMessage(playerid, VERDE_CLARO, "Para voltar a jogar use /servico novamente.");
  1770. SetPlayerColor(playerid, 0x24E9FFFF);
  1771. SetPlayerHealth(playerid, 999999);
  1772. }
  1773. return 1;
  1774. }
  1775.  
  1776. CMD:jogar(playerid, params[])
  1777. {
  1778. if((PlayerDados[playerid][Admin] == 0) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
  1779. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você ja está jogando!");
  1780. PlayerDados[playerid][Trabalhando] = false;
  1781. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Jogando, Agora ele é um Jogador Normal", Nome(playerid));
  1782. if(PlayerDados[playerid][Helper])
  1783. {
  1784. format(String, sizeof(String), "O Helper {1B95E0}%s{00C2EC} Está Jogando, Agora ele é um Jogador Normal", Nome(playerid));
  1785. }
  1786. SendClientMessageToAll(AZUL_CLARO, String);
  1787. SendClientMessage(playerid, VERDE_CLARO, "Para voltar a trabalhar use /trabalhar");
  1788. SetPlayerColor(playerid, LARANJA);
  1789. SetPlayerHealth(playerid, 100);
  1790. return 1;
  1791. }
  1792.  
  1793. CMD:trabalhar(playerid, params[])
  1794. {
  1795. if((PlayerDados[playerid][Admin] == 0) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
  1796. if(PlayerDados[playerid][Trabalhando] == true) return SendClientMessage(playerid, CINZA, "Você ja está trabalhando!");
  1797. PlayerDados[playerid][Trabalhando] = true;
  1798. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Trabalhando, Veja em /admins", Nome(playerid));
  1799. if(PlayerDados[playerid][Helper])
  1800. {
  1801. format(String, sizeof(String), "O Helper {1B95E0}%s{00C2EC} Está Trabalhando, Veja em /helpers", Nome(playerid));
  1802. }
  1803. SendClientMessageToAll(AZUL_CLARO, String);
  1804. SendClientMessage(playerid, VERDE_CLARO, "Para voltar a jogar use /jogar");
  1805. SetPlayerColor(playerid, 0x24E9FFFF);
  1806. SetPlayerHealth(playerid, 999999);
  1807. return 1;
  1808. }
  1809. CMD:infoplayer(playerid, params[])
  1810. {
  1811. new StringM[500];
  1812. new Fala[4];
  1813. new ip[25];
  1814. if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1815. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1816. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /infoplayer [ID]"), SendClientMessage(playerid, CINZA, "Use o Comando para ver as informações de um certo player");
  1817. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  1818. if(PlayerDados[ID][Calado] == true) Fala = "Sim";
  1819. if(PlayerDados[ID][Calado] == false) Fala = "Nao";
  1820. GetPlayerIp(ID, ip, 25);
  1821. format(StringM, sizeof(StringM), "{FFFFFF}Dados de {11D41E}%s{FFFFFF}\n\n{11D41E}Matou:{FFFFFF} %d\n{11D41E}Morreu:{FFFFFF} %d\n{11D41E}Grana:{FFFFFF} %d\n{11D41E}Admin Level:{FFFFFF} %d\n{11D41E}Calado:{FFFFFF} %s\n{11D41E}Tempo Preso:{FFFFFF} %d", Nome(ID), PlayerDados[ID][Matou], PlayerDados[ID][Morreu], GetPlayerMoney(ID), PlayerDados[ID][Admin], Fala, PlayerDados[ID][Preso]);
  1822. format(StringM, sizeof(StringM), "%s\n{11D41E}Advertencias:{FFFFFF} %d \n{11D41E}IP:{FFFFFF} %s", StringM, PlayerDados[ID][Advertencias], ip);
  1823. ShowPlayerDialog(playerid, DIALOG_INFO, DIALOG_STYLE_MSGBOX, "Informações do Player", StringM, "Fechar", "");
  1824. return 1;
  1825. }
  1826.  
  1827. CMD:verip(playerid, params[])
  1828. {
  1829. if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1830. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1831. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL-ADMIN] Use /verid [ID]");
  1832. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  1833. new strip[20];
  1834. GetPlayerIp(ID, strip, 20);
  1835. format(String, sizeof(String), "O IP de %s é:", Nome(ID));
  1836. SendClientMessage(playerid, AZUL_CLARO, String);
  1837. format(String, sizeof(String), "%s", strip);
  1838. SendClientMessage(playerid, VERDE_CLARO, String);
  1839. return 1;
  1840. }
  1841.  
  1842. CMD:avisar(playerid, params[])
  1843. {
  1844. new Texto[128];
  1845. if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1846. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1847. if(sscanf(params, "s", Texto)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /avisar [texto]"), SendClientMessage(playerid, CINZA, "Use o comando para mandar um aviso aos jogadores");
  1848. format(String, sizeof(String), "Admin %s [nivel %d]: %s", Nome(playerid), PlayerDados[playerid][Admin], Texto);
  1849. SendClientMessageToAll(AZUL, "________________________AVISO DA ADMINISTRAÇÃO________________________");
  1850. SendClientMessageToAll(AZUL_CLARO, String);
  1851. return 1;
  1852. }
  1853.  
  1854. CMD:destrancarcarros(playerid, params[])
  1855. {
  1856. if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1857. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1858. for(new c = 0; c < MAX_VEHICLES; c++)
  1859. {
  1860. SetVehicleParamsEx(c, 0, 0, 0, 0, 0, 0, 0);
  1861. }
  1862. SendClientMessage(playerid, AMARELO, "Todos os veiculos foram destrancados!");
  1863. return 1;
  1864. }
  1865.  
  1866. CMD:kickar(playerid, params[])
  1867. {
  1868. new Razao[128];
  1869. if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1870. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1871. if(sscanf(params, "us", ID, Razao)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /kickar [ID] [Razão]"), SendClientMessage(playerid, CINZA, "Use o comando para kickar um jogador");
  1872. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  1873. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  1874. format(String, sizeof(String), "[LL-ADMIN] O Admin %s Kickou o Jogador %s[ID: %d] pelo motivo: %s\r\n", Nome(playerid), Nome(ID), ID, Razao);
  1875. SendClientMessageToAll(VERDE_CLARO, String);
  1876. Kickar(ID, Nome(playerid), Razao);
  1877. EscreverLog("LLADMIN/Logs/Kickados.log", String);
  1878. return 1;
  1879. }
  1880.  
  1881. CMD:tapa(playerid, params[])
  1882. {
  1883. if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1884. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1885. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /tapa [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para dar um tapa em um jogador");
  1886. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  1887. new Float:Pos[3];
  1888. GetPlayerPos(ID, Pos[0], Pos[1], Pos[2]);
  1889. SetPlayerPos(ID, Pos[0], Pos[1], Pos[2]+20);
  1890. format(String, sizeof(String), "[LL ADMIN] O Admin %s Deu um tapa em %s\r\n", Nome(playerid), Nome(ID));
  1891. EscreverLog("LLADMIN/Logs/Tapas.log", String);
  1892. return 1;
  1893. }
  1894.  
  1895. CMD:assistir(playerid, params[])
  1896. {
  1897. if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1898. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1899. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /assistir [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para assistir os movimentos de um jogador");
  1900. TogglePlayerSpectating(playerid, 1);
  1901. PlayerSpectatePlayer(playerid, ID);
  1902. PlayerDados[playerid][Assistindo] = true;
  1903. SendClientMessage(playerid, VERDE_CLARO, "Para parar de assistir use /passistir");
  1904. return 1;
  1905. }
  1906.  
  1907. CMD:passistir(playerid, params[])
  1908. {
  1909. if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1910. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1911. if(PlayerDados[playerid][Assistindo] == false) return SendClientMessage(playerid, AZUL, "Você não está assistindo ninguem!");
  1912. TogglePlayerSpectating(playerid, 0);
  1913. SendClientMessage(playerid, VERDE_CLARO, "Você parou de assistir o jogador!");
  1914. PlayerDados[playerid][Assistindo] = false;
  1915. return 1;
  1916. }
  1917.  
  1918. CMD:texto(playerid, params[])
  1919. {
  1920. new Texto[128];
  1921. if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1922. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  1923. if(sscanf(params, "s", Texto)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /texto [texto]"), SendClientMessage(playerid, CINZA, "Use o comando para mandar uma mensagem em forma de GameText aos jogadores");
  1924. format(String, sizeof(String), "~y~%s: ~w~%s", Nome(playerid), Texto);
  1925. GameTextForAll(String, 2000, 4);
  1926. return 1;
  1927. }
  1928.  
  1929. CMD:a(playerid, params[])
  1930. {
  1931. new Texto[128];
  1932. if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
  1933. if(sscanf(params, "s", Texto)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /a [texto]"), SendClientMessage(playerid, CINZA, "Use o comando para mandar mensagens para os admins online");
  1934. if(PlayerDados[playerid][Helper] == true) AdminNivel = "Helper";
  1935. if(PlayerDados[playerid][Admin] == 1) AdminNivel = "Moderador";
  1936. if(PlayerDados[playerid][Admin] == 2) AdminNivel = "Admin Iniciante";
  1937. if(PlayerDados[playerid][Admin] == 3) AdminNivel = "Admin Geral";
  1938. if(PlayerDados[playerid][Admin] == 4) AdminNivel = "Sub Dono";
  1939. if(PlayerDados[playerid][Admin] == 5) AdminNivel = "Poderoso Chefão";
  1940. format(String, sizeof(String), "%s %s: %s", AdminNivel, Nome(playerid), Texto);
  1941. for(new i = 0; i < MAX_PLAYERS; i++)
  1942. {
  1943. if(PlayerDados[i][Admin] > 0)
  1944. {
  1945. SendClientMessage(i, AZUL_CLARO, String);
  1946. }
  1947. }
  1948. EscreverLog("LLADMIN/Logs/Chatadm.log", String);
  1949. return 1;
  1950. }
  1951.  
  1952. //-----------------------------ADMIN NIVEL 2------------------------------------
  1953. CMD:logaradm(playerid, params[]) {
  1954. new senha[40];
  1955. if(sscanf(params, "s", senha))
  1956. return Msg(playerid, CINZA, "Use /logaradm <senha>");
  1957. if(strcmp(senha, SENHA, true) == 0) {
  1958. Msg(playerid, -1, "Bem vindo a administração secreta.");
  1959. Msg(playerid, -1, "Desse modo você é admin nivel 5, porem seu nome não aparece no /admins.");
  1960. Msg(playerid, -1, "Para virar admin normal nivel 5 use /admnormal");
  1961. PlayerDados[playerid][Escondido] = true;
  1962. PlayerDados[playerid][Admin] = 5;
  1963. return 1;
  1964. }
  1965. Msg(playerid, CINZA, "Senha incorreta.");
  1966. return 1;
  1967. }
  1968.  
  1969. CMD:admnormal(playerid) {
  1970. if(PlayerDados[playerid][Escondido] == false)
  1971. return Msg(playerid, CINZA, "Você não está escondido ou não é admin.");
  1972. PlayerDados[playerid][Escondido] = false;
  1973. Msg(playerid, -1, "Agora você é um admin normal nivel 5.");
  1974. return 1;
  1975. }
  1976.  
  1977. CMD:blindar(playerid, params[]) {
  1978. if(!NivelRequerido(playerid, 2))
  1979. return 1;
  1980. if(sscanf(params, "u", ID))
  1981. return MensagemDupla(playerid, "[LL ADMIN] Use /blindar [playerid]", "Use o comando para deixar o carro de um jogador em god mode.");
  1982. if(!(IsPlayerConnected(ID)))
  1983. return Msg(playerid, BRANCO, "Jogador não conectado.");
  1984. if(!(IsPlayerInAnyVehicle(ID)))
  1985. return Msg(playerid, BRANCO, "O jogador não está em um veículo.");
  1986. SetVehicleHealth(GetPlayerVehicleID(ID), 999999);
  1987. MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} deixou o carro de %s em God Mode.", Nome(playerid), Nome(ID));
  1988. return 1;
  1989. }
  1990.  
  1991. CMD:desblindar(playerid, params[]) {
  1992. if(!NivelRequerido(playerid, 2))
  1993. return 1;
  1994. if(sscanf(params, "u", ID))
  1995. return MensagemDupla(playerid, "[LL ADMIN] Use /desblindar [playerid]", "Use o comando para tirar o carro de um player do God mode.");
  1996. if(!(IsPlayerConnected(ID)))
  1997. return Msg(playerid, BRANCO, "Jogador não conectado.");
  1998. if(!(IsPlayerInAnyVehicle(ID)))
  1999. return Msg(playerid, BRANCO, "O jogador não está em um veículo.");
  2000. SetVehicleHealth(GetPlayerVehicleID(ID), 100);
  2001. MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} tirou o carro de %s do God Mode.", Nome(playerid), Nome(ID));
  2002. return 1;
  2003. }
  2004.  
  2005. CMD:moverplayer(playerid, params[])
  2006. {
  2007. new id2;
  2008. if(!NivelRequerido(playerid, 2)) return 1;
  2009. if(sscanf(params, "uu", ID, id2)) return MensagemDupla(playerid, "[LL ADMIN] Use /moverplayer [ID] [ID2]", "Use o comando para mover um player até outro.");
  2010. new Float:X,
  2011. Float:Y,
  2012. Float:Z;
  2013. GetPlayerPos(id2, X, Y, Z);
  2014. SetPlayerPos(ID, X, Y, Z);
  2015. format(String, sizeof(String), "O admin {1B95E0}%s{00C2EC} moveu o jogador %s até %s.", Nome(playerid), Nome(ID), Nome(id2));
  2016. MsgAll(AZUL_CLARO, String);
  2017. return 1;
  2018. }
  2019.  
  2020. CMD:trazertodos(playerid, params[])
  2021. {
  2022. if(!NivelRequerido(playerid, 2)) return 1;
  2023. new Float:X,
  2024. Float:Y,
  2025. Float:Z;
  2026. GetPlayerPos(playerid, X, Y, Z);
  2027. for(new i = 0; i < MAX_PLAYERS; ++i)
  2028. {
  2029. if(IsPlayerConnected(i))
  2030. {
  2031. SetPlayerPos(i, X+1, Y+1, Z);
  2032. }
  2033. }
  2034. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} puxou todos os jogadores até ele.", Nome(playerid));
  2035. return 1;
  2036. }
  2037.  
  2038. CMD:jetpack(playerid, params[])
  2039. {
  2040. if(!NivelRequerido(playerid, 2)) return 1;
  2041. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /jetpack [ID]", "Use o comando para dar um jetpakc a agum jogador.");
  2042. SetPlayerSpecialAction(ID, 2);
  2043. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} deu um JetPack a %s.", Nome(playerid));
  2044. return 1;
  2045. }
  2046.  
  2047. CMD:explodir(playerid, params[])
  2048. {
  2049. if(!NivelRequerido(playerid, 2)) return 1;
  2050. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /explodir [ID]", "Use o comando para explodir um jogador.");
  2051. new Float:X,
  2052. Float:Y,
  2053. Float:Z;
  2054. GetPlayerPos(ID, X, Y, Z);
  2055. CreateExplosion(X, Y, Z, 1, 5);
  2056. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} explodiu o jogador %s", Nome(playerid), Nome(ID));
  2057. return 1;
  2058. }
  2059.  
  2060. CMD:tempo(playerid, params[])
  2061. {
  2062. new t[10];
  2063. if(!NivelRequerido(playerid, 2)) return 1;
  2064. if(sscanf(params, "s", t)) return MensagemDupla(playerid, "[LL ADMIN] Use /tempo [Manha/Tarde/Noite]", "Use o comando para alterar o tempo do servidor");
  2065. if(strcmp(t, "manha", true) == 0)
  2066. {
  2067. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} mudou o tempo para manha", Nome(playerid));
  2068. for(new i = 0; i < MAX_PLAYERS; ++i)
  2069. {
  2070. SetPlayerTime(i, 9, 0);
  2071. }
  2072. SetWorldTime(9);
  2073. return 1;
  2074. }
  2075. if(strcmp(t, "tarde", true) == 0)
  2076. {
  2077. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} mudou o tempo para tarde", Nome(playerid));
  2078. for(new i = 0; i < MAX_PLAYERS; ++i)
  2079. {
  2080. SetPlayerTime(i, 14, 0);
  2081. }
  2082. SetWorldTime(14);
  2083. return 1;
  2084. }
  2085. if(strcmp(t, "noite", true) == 0)
  2086. {
  2087. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} mudou o tempo para noite", Nome(playerid));
  2088. for(new i = 0; i < MAX_PLAYERS; ++i)
  2089. {
  2090. SetPlayerTime(i, 0, 0);
  2091. }
  2092. SetWorldTime(0);
  2093. return 1;
  2094. }
  2095. Msg(playerid, CINZA, "[LL ADMIN] Use /tempo [Manha/Tarde/Noite]");
  2096. return 1;
  2097. }
  2098.  
  2099. CMD:dargrana(playerid, params[])
  2100. {
  2101. new q;
  2102. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2103. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2104. if(sscanf(params, "ui", ID, q)) return MensagemDupla(playerid, "[LL ADMIN] Use /dargrana [ID] [quantidade]", "Use o comando para dar algum dinheiro a algum jogador");
  2105. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{38FF06} deu %d reais para {1B95E0}%s{38FF06}\r\n", Nome(playerid), q, Nome(ID));
  2106. GivePlayerMoney(ID, q);
  2107. return 1;
  2108. }
  2109.  
  2110. CMD:forcarcarro(playerid, params[])
  2111. {
  2112. new IDCarro;
  2113. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2114. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2115. if(sscanf(params, "ui", ID, IDCarro)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /forcarcarro [ID] [ID Veículo]"), SendClientMessage(playerid, CINZA, "Use o comando para colocar o player em um veículo");
  2116. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  2117. PutPlayerInVehicle(ID, IDCarro, 0);
  2118. format(String, sizeof(String), "O Admin {1B95E0}%s{38FF06} te colocou em um veículo", Nome(playerid));
  2119. SendClientMessage(ID, AZUL_CLARO, String);
  2120. format(String, sizeof(String), "Você colocou o jogador {1B95E0}%s{38FF06} em um veículo", Nome(ID));
  2121. SendClientMessage(playerid, AZUL_CLARO, String);
  2122. return 1;
  2123. }
  2124.  
  2125. CMD:forcarskin(playerid, params[])
  2126. {
  2127. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2128. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2129. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /forcarskin [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para forçar a seleção de skin de um jogador");
  2130. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  2131. ForceClassSelection(ID);
  2132. format(String, sizeof(String), "O Admin {1B95E0}%s{38FF06} te forçou a seleção de skin", Nome(playerid));
  2133. SendClientMessage(ID, AZUL_CLARO, String);
  2134. format(String, sizeof(String), "Você forçou o jogador {1B95E0}%s{38FF06} a escolher uma skin", Nome(ID));
  2135. SendClientMessage(playerid, AZUL_CLARO, String);
  2136. SetPlayerHealth(playerid, 0);
  2137. return 1;
  2138. }
  2139.  
  2140.  
  2141. CMD:setarinterior(playerid, params[])
  2142. {
  2143. new Interior;
  2144. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2145. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2146. if(sscanf(params, "ui", ID, Interior)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarinterior [ID] [Razão]"), SendClientMessage(playerid, CINZA, "Use o comando mudar o interior de um jogador");
  2147. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2148. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  2149. SetPlayerInterior(ID, Interior);
  2150. format(String, sizeof(String), "[LL-ADMIN] O Admin %s mudou o interior do Jogador %s[ID: %d] para %d", Nome(playerid), Nome(ID), ID, Interior);
  2151. SendClientMessageToAll(VERDE_CLARO, String);
  2152. return 1;
  2153. }
  2154.  
  2155.  
  2156. CMD:banir(playerid, params[])
  2157. {
  2158. new Razao[128];
  2159. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2160. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2161. if(sscanf(params, "us", ID, Razao)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /banir [ID] [Razão]"), SendClientMessage(playerid, CINZA, "Use o comando para banir a conta de um jogador");
  2162. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2163. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  2164. format(String, sizeof(String), "[LL-ADMIN] O Admin %s Baniu o Jogador %s[ID: %d] pelo motivo: %s\r\n", Nome(playerid), Nome(ID), ID, Razao);
  2165. SendClientMessageToAll(VERDE_CLARO, String);
  2166. EscreverLog("LLADMIN/Logs/Banidos.log", String);
  2167. format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(ID));
  2168. getdate(Ano, Mes, Dia);
  2169. gettime(Hora, Minuto, Segundo);
  2170. DOF2_CreateFile(String);
  2171. DOF2_SetString(String, "Admin", Nome(playerid));
  2172. DOF2_SetString(String, "Motivo", Razao);
  2173. DOF2_SetInt(String, "Ano", Ano);
  2174. DOF2_SetInt(String, "Mes", Mes);
  2175. DOF2_SetInt(String, "Dia", Dia);
  2176. DOF2_SetInt(String, "Hora", Hora);
  2177. DOF2_SetInt(String, "Minuto", Minuto);
  2178. Kick(ID);
  2179. return 1;
  2180. }
  2181.  
  2182. CMD:desbanir(playerid, params[])
  2183. {
  2184. new Conta[128];
  2185. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2186. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2187. if(sscanf(params, "s", Conta)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /desbanir [Conta]"), SendClientMessage(playerid, CINZA, "Use o comando para desbanir uma conta banida");
  2188. format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Conta);
  2189. if(DOF2_FileExists(String))
  2190. {
  2191. DOF2_RemoveFile(String);
  2192. format(String, sizeof(String), "[LL ADMIN] Conta {1B95E0}%s{38FF06} Desbanida!", Conta);
  2193. SendClientMessage(playerid, VERDE_CLARO, String);
  2194. return 1;
  2195. }
  2196. else
  2197. {
  2198. format(String, sizeof(String), "[LL ADMIN] A Conta {1B95E0}%s{CECECE} Não Existe ou Não está banida!", Conta);
  2199. SendClientMessage(playerid, CINZA, String);
  2200. }
  2201. format(String, sizeof(String), "O Admin %s desbaniu a conta %s\r\n", Nome(playerid), Conta);
  2202. EscreverLog("LLADMIN/Logs/Desbanidos.log", String);
  2203. return 1;
  2204. }
  2205.  
  2206.  
  2207. CMD:advertir(playerid, params[])
  2208. {
  2209. new Razao[128];
  2210. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2211. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2212. if(sscanf(params, "us", ID, Razao)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /advertir [ID] [Razão]"), SendClientMessage(playerid, CINZA, "Use o comando para advertir um jogador");
  2213. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2214. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  2215. if(PlayerDados[ID][Advertencias] != 3)
  2216. {
  2217. format(String, sizeof(String), "[LL ADMIN] O Admin %s Deu uma Advertencia a %s Pelo Motivo: %s\r\n", Nome(playerid), Nome(ID), Razao);
  2218. SendClientMessageToAll(VERMELHO_CLARO, String);
  2219. EscreverLog("LLADMIN/Logs/Advertidos.log", String);
  2220. format(String, sizeof(String), "Você foi Advertido pelo admin %s Pelo motivo: %s. Se for advertido 3 vezes será BANIDO Automaticamente", Nome(playerid), Razao);
  2221. SendClientMessage(ID, LARANJA, String);
  2222. PlayerDados[ID][Advertencias] += 1;
  2223. }
  2224. if(PlayerDados[ID][Advertencias] == 3)
  2225. {
  2226. format(String, sizeof(String), "[LL ADMIN] O Admin %s Deu a terceira Advertencia a %s Pelo Motivo: %s e por isso ele foi Banido!", Nome(playerid), Nome(ID), Razao);
  2227. SendClientMessageToAll(VERMELHO_CLARO, String);
  2228. format(String, sizeof(String), "Você foi Advertido pela terceira vez pelo admin %s Pelo motivo: %s. por isso você foi banido!", Nome(playerid), Razao);
  2229. SendClientMessage(ID, LARANJA, String);
  2230. format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(ID));
  2231. getdate(Ano, Mes, Dia);
  2232. gettime(Hora, Minuto, Segundo);
  2233. new IP[25];
  2234. GetPlayerIp(ID, IP, 25);
  2235. DOF2_CreateFile(String);
  2236. DOF2_SetString(String, "Admin", Nome(playerid));
  2237. DOF2_SetString(String, "Motivo", "3° Advertencia");
  2238. DOF2_SetInt(String, "Ano", Ano);
  2239. DOF2_SetInt(String, "Mes", Mes);
  2240. DOF2_SetInt(String, "Dia", Dia);
  2241. DOF2_SetInt(String, "Hora", Hora);
  2242. DOF2_SetInt(String, "Minuto", Minuto);
  2243. Kick(ID);
  2244. }
  2245. return 1;
  2246. }
  2247.  
  2248. CMD:ir(playerid, params[])
  2249. {
  2250. if((PlayerDados[playerid][Admin] < 2) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 ou helper para usar este comando!");
  2251. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2252. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /ir [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para ir até um jogador");
  2253. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2254. new Float:Pos[3];
  2255. GetPlayerPos(ID, Pos[0], Pos[1], Pos[2]);
  2256. if(IsPlayerInAnyVehicle(playerid))
  2257. {
  2258. new carroid = GetPlayerVehicleID(playerid);
  2259. SetVehiclePos(carroid, Pos[0], Pos[1], Pos[2]);
  2260. format(String, sizeof(String), "O Admin %s veio até você!", Nome(playerid));
  2261. if(PlayerDados[playerid][Helper])
  2262. {
  2263. format(String, sizeof(String), "O Helper %s veio até você!", Nome(playerid));
  2264. }
  2265. SendClientMessage(ID, AZUL_CLARO, String);
  2266. format(String, sizeof(String), "Você foi até o Jogador %s [ID: %d]", Nome(ID), ID);
  2267. SendClientMessage(playerid, AZUL_CLARO, String);
  2268. return 1;
  2269. }
  2270. SetPlayerPos(playerid, Pos[0]+2, Pos[1]+2, Pos[2]+2);
  2271. format(String, sizeof(String), "O Admin %s veio até você!", Nome(playerid));
  2272. if(PlayerDados[playerid][Helper])
  2273. {
  2274. format(String, sizeof(String), "O Helper %s veio até você!", Nome(playerid));
  2275. }
  2276. SendClientMessage(ID, AZUL_CLARO, String);
  2277. format(String, sizeof(String), "Você foi até o Jogador %s [ID: %d]", Nome(ID), ID);
  2278. SendClientMessage(playerid, AZUL_CLARO, String);
  2279. return 1;
  2280. }
  2281.  
  2282. CMD:trazer(playerid, params[])
  2283. {
  2284. if((PlayerDados[playerid][Admin] < 2) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 ou helper para usar este comando!");
  2285. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2286. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /trazer [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para trazer um jogador até você");
  2287. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2288. new Float:Pos[3];
  2289. GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
  2290. if(IsPlayerInAnyVehicle(ID))
  2291. {
  2292. new carroid = GetPlayerVehicleID(ID);
  2293. SetVehiclePos(carroid, Pos[0]+2, Pos[1]+2, Pos[2]+2);
  2294. format(String, sizeof(String), "O Admin %s trouxe você até ele!", Nome(playerid));
  2295. if(PlayerDados[playerid][Helper])
  2296. {
  2297. format(String, sizeof(String), "O Helper %s trouxe você até ele!", Nome(playerid));
  2298. }
  2299. SendClientMessage(ID, AZUL_CLARO, String);
  2300. format(String, sizeof(String), "Você trouxe o jogador %s [ID: %d] até você", Nome(ID), ID);
  2301. SendClientMessage(playerid, AZUL_CLARO, String);
  2302. return 1;
  2303. }
  2304. SetPlayerPos(ID, Pos[0]+2, Pos[1]+2, Pos[2]+2);
  2305. format(String, sizeof(String), "O Admin %s trouxe você até ele!", Nome(playerid));
  2306. if(PlayerDados[playerid][Helper])
  2307. {
  2308. format(String, sizeof(String), "O Helper %s trouxe você até ele!", Nome(playerid));
  2309. }
  2310. SendClientMessage(ID, AZUL_CLARO, String);
  2311. format(String, sizeof(String), "Você trouxe o jogador %s [ID: %d] até você", Nome(ID), ID);
  2312. SendClientMessage(playerid, AZUL_CLARO, String);
  2313. return 1;
  2314. }
  2315.  
  2316. CMD:congelar(playerid, params[])
  2317. {
  2318. new Razao[128];
  2319. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2320. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2321. if(sscanf(params, "us", ID, Razao)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /congelar [ID] [Motivo]"), SendClientMessage(playerid, CINZA, "Use o comando para impedir um jogador de se mover");
  2322. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2323. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  2324. TogglePlayerControllable(ID, false);
  2325. PlayerDados[playerid][Congelado] = true;
  2326. format(String, sizeof(String), "[LL ADMIN] O Admin %s Congelou o Jogador %s [ID: %d] Pelo Motivo: %s\r\n", Nome(playerid), Nome(ID), ID, Razao);
  2327. SendClientMessageToAll(AZUL_CLARO, String);
  2328. SendClientMessage(playerid, VERDE_CLARO, "Para descongelar use /descongelar");
  2329. EscreverLog("LLADMIN/Logs/Congelados.log", String);
  2330. return 1;
  2331. }
  2332.  
  2333. CMD:descongelar(playerid, params[])
  2334. {
  2335. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2336. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2337. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /descongelar [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para permitir ao jogador se movimentar");
  2338. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2339. if(PlayerDados[ID][Congelado] == false) return SendClientMessage(playerid, CINZA, "O Jogados não está congelado!");
  2340. TogglePlayerControllable(ID, true);
  2341. PlayerDados[ID][Congelado] = false;
  2342. format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} Descongelou o jogador {1BA5E0}%s{00C2EC} [ID: %d]", Nome(playerid), Nome(ID), ID);
  2343. SendClientMessageToAll(AZUL_CLARO, String);
  2344. return 1;
  2345. }
  2346.  
  2347. CMD:dararma(playerid, params[])
  2348. {
  2349. new NomeArma[80];
  2350. new
  2351. Arma,
  2352. Municao;
  2353. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2354. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2355. if(sscanf(params, "uii", ID, Arma, Municao)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /dararma [ID] [Arma] [Munição]"), SendClientMessage(playerid, CINZA, "Use o comando para dar uma arma para um jogador");
  2356. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2357. if(Arma < 1 || Arma == 19 || Arma == 20 || Arma == 21 || Arma > 46) return SendClientMessage(playerid, CINZA, "[LL ADMIN] ID Invalido, use de 1 a 46");
  2358. if(Arma == 1) NomeArma = "Soco Inglês";
  2359. if(Arma == 2) NomeArma = "Taco de Golf";
  2360. if(Arma == 3) NomeArma = "Cacetete";
  2361. if(Arma == 4) NomeArma = "Faca";
  2362. if(Arma == 5) NomeArma = "Taco de Baseball";
  2363. if(Arma == 6) NomeArma = "Pá";
  2364. if(Arma == 7) NomeArma = "Taco de Sinuca";
  2365. if(Arma == 8) NomeArma = "Kitana";
  2366. if(Arma == 9) NomeArma = "Serra elétrica";
  2367. if(Arma == 10) NomeArma = "Pinto de Borracha";
  2368. if(Arma == 11) NomeArma = "Pinto roxo";
  2369. if(Arma == 12) NomeArma = "Vibrador";
  2370. if(Arma == 13) NomeArma = "Vibrador de Prata";
  2371. if(Arma == 14) NomeArma = "Flor";
  2372. if(Arma == 15) NomeArma = "Bengala";
  2373. if(Arma == 16) NomeArma = "Granada";
  2374. if(Arma == 17) NomeArma = "Bomba de gás";
  2375. if(Arma == 18) NomeArma = "Molotov";
  2376. if(Arma == 22) NomeArma = "Pistola 9mm";
  2377. if(Arma == 23) NomeArma = "Pistola com silenciador";
  2378. if(Arma == 24) NomeArma = "Desert Eagle";
  2379. if(Arma == 25) NomeArma = "ShotGun";
  2380. if(Arma == 26) NomeArma = "Sawnoff Shotgun";
  2381. if(Arma == 27) NomeArma = "Combat Shotgun";
  2382. if(Arma == 28) NomeArma = "Micro SMG";
  2383. if(Arma == 29) NomeArma = "MP5";
  2384. if(Arma == 30) NomeArma = "AK47";
  2385. if(Arma == 31) NomeArma = "M4";
  2386. if(Arma == 32) NomeArma = "Tec 9";
  2387. if(Arma == 33) NomeArma = "Country Rifle";
  2388. if(Arma == 34) NomeArma = "Sniper Rifle";
  2389. if(Arma == 35) NomeArma = "Bazooca RPG";
  2390. if(Arma == 36) NomeArma = "Bazooca Normal";
  2391. if(Arma == 37) NomeArma = "Lança Chamas";
  2392. if(Arma == 38) NomeArma = "Mini Gun";
  2393. if(Arma == 39) NomeArma = "C4";
  2394. if(Arma == 40) NomeArma = "Detonador";
  2395. if(Arma == 41) NomeArma = "Spray";
  2396. if(Arma == 42) NomeArma = "Extintor";
  2397. if(Arma == 43) NomeArma = "Oculos de visão noturna";
  2398. if(Arma == 45) NomeArma = "Oculos de visão de calor";
  2399. if(Arma == 46) NomeArma = "Paraquedas";
  2400. GivePlayerWeapon(ID, Arma, Municao);
  2401. format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} Deu um(a) {1BA5E0}%s{00C2EC} Com {1BA5E0}%d{00C2EC} Balas para {1BA5E0}%s{00C2EC}", Nome(playerid), NomeArma, Municao, Nome(ID));
  2402. SendClientMessageToAll(AZUL_CLARO, String);
  2403. return 1;
  2404. }
  2405.  
  2406. CMD:desarmar(playerid, params[])
  2407. {
  2408. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2409. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2410. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /desarmar [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para desarmar um jogador");
  2411. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2412. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  2413. format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} Desarmou o jogador {1BA5E0}%s{00C2EC}", Nome(playerid), Nome(ID));
  2414. SendClientMessageToAll(AZUL_CLARO, String);
  2415. ResetPlayerWeapons(ID);
  2416. return 1;
  2417. }
  2418.  
  2419. CMD:criarcarro(playerid, params[])
  2420. {
  2421. new
  2422. Carro,
  2423. Cor1,
  2424. Cor2;
  2425. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2426. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2427. if(sscanf(params, "iii", Carro, Cor1, Cor2)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /criarcarro [ID] [cor1] [cor2]"), SendClientMessage(playerid, CINZA, "Use o comando para criar um veiculo, para fazer um respawn use /respawn");
  2428. new Float:X,
  2429. Float:Y,
  2430. Float:X1,
  2431. Float:Y1,
  2432. Float:Z,
  2433. Float:A;
  2434. PosicaoFrentePlayer(playerid, X, Y, 3);
  2435. GetPlayerPos(playerid, X1, Y1, Z);
  2436. GetPlayerFacingAngle(playerid, A);
  2437. new idcarro;
  2438. idcarro = CreateVehicle(Carro, X, Y, Z, A+90, Cor1, Cor2, 15);
  2439. CarrosCriados[TodosCarros] = idcarro;
  2440. TodosCarros ++;
  2441. return 1;
  2442. }
  2443.  
  2444. CMD:respawn(playerid, params[])
  2445. {
  2446. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2447. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2448. format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} deu Respawn nos veículos!", Nome(playerid));
  2449. SendClientMessageToAll(AZUL_CLARO, String);
  2450. SendClientMessage(playerid, VERDE_CLARO, "Todos os carros criados foram destruidos!");
  2451. for(new i = 0; i < sizeof(CarrosCriados); i++)
  2452. {
  2453. DestroyVehicle(CarrosCriados[i]);
  2454. }
  2455. for(new c = 0; c < MAX_VEHICLES; c++)
  2456. {
  2457. SetVehicleToRespawn(c);
  2458. }
  2459. return 1;
  2460. }
  2461.  
  2462. CMD:destruircarro(playerid, params[])
  2463. {
  2464. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2465. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2466. if(IsPlayerInAnyVehicle(playerid))
  2467. {
  2468. new idcarro = GetPlayerVehicleID(playerid);
  2469. DestroyVehicle(idcarro);
  2470. format(String, sizeof(String), "[LL ADMIN] Você destruiu o veículo ID %d", idcarro);
  2471. SendClientMessage(playerid, AZUL_CLARO, String);
  2472. return 1;
  2473. }
  2474. new idc;
  2475. if(sscanf(params, "i", idc)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /destruircarro [ID], ou entre em um veículo e use o comando.");
  2476. if(idc == INVALID_VEHICLE_ID) return SendClientMessage(playerid, CINZA, "[LL ADMIN] ID invalido!");
  2477. DestroyVehicle(idc);
  2478. format(String, sizeof(String), "[LL ADMIN] Você destruiu o veículo ID %d", idc);
  2479. SendClientMessage(playerid, AZUL_CLARO, String);
  2480. return 1;
  2481. }
  2482.  
  2483. CMD:idcarro(playerid, params[])
  2484. {
  2485. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2486. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2487. if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, BRANCO, "Você não está em um veículo!");
  2488. new idc;
  2489. idc = GetPlayerVehicleID(playerid);
  2490. format(String, sizeof(String), "O ID do veículo é %d, para destrui-lo use /destruircarro", idc);
  2491. SendClientMessage(playerid, CINZA, String);
  2492. return 1;
  2493. }
  2494.  
  2495. CMD:calar(playerid, params[])
  2496. {
  2497. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2498. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2499. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /calar [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para impedir um jogador de usar o chat");
  2500. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2501. if(PlayerDados[ID][Calado] == true) return SendClientMessage(playerid, CINZA, "[LL ADMIN] O jogador Ja está calado!");
  2502. PlayerDados[ID][Calado] = true;
  2503. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Calou o Jogador {1B95E0}%s{00C2EC}\r\n", Nome(playerid), Nome(ID));
  2504. SendClientMessageToAll(AZUL_CLARO, String);
  2505. EscreverLog("LLADMIN/Logs/Calados.log", String);
  2506. SendClientMessage(playerid, VERDE_CLARO, "[LL ADMIN] Para Liberar a fala do jogador use /liberar [ID]");
  2507. return 1;
  2508. }
  2509.  
  2510. CMD:liberar(playerid, params[])
  2511. {
  2512. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2513. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2514. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /liberar [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para liberar um jogador calado para usar o chat");
  2515. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2516. if(PlayerDados[ID][Calado] == false) return SendClientMessage(playerid, CINZA, "[LL ADMIN] O jogador não está calado!");
  2517. PlayerDados[ID][Calado] = false;
  2518. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Liberou a fala de {1B95E0}%s{00C2EC}", Nome(playerid), Nome(ID));
  2519. SendClientMessageToAll(AZUL_CLARO, String);
  2520. return 1;
  2521. }
  2522.  
  2523. CMD:setarvida(playerid, params[])
  2524. {
  2525. new Vida;
  2526. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2527. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2528. if(sscanf(params, "ui", ID, Vida)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarvida [ID] [VIDA]");
  2529. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2530. if(Vida < 0 || Vida > 100) return SendClientMessage(playerid, CINZA, "[LL ADMIN]Valor Inválido! Use de 0 a 100");
  2531. SetPlayerHealth(ID, Vida);
  2532. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Setou a Vida de {1B95E0}%s{00C2EC} para {1B95E0}%d{00C2EC}", Nome(playerid), Nome(ID), Vida);
  2533. SendClientMessageToAll(AZUL_CLARO, String);
  2534. return 1;
  2535. }
  2536.  
  2537. CMD:setarcolete(playerid, params[])
  2538. {
  2539. new Colete;
  2540. if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
  2541. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2542. if(sscanf(params, "ui", ID, Colete)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarcolete [ID] [COLETE]");
  2543. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2544. if(Colete < 0 || Colete > 100) return SendClientMessage(playerid, CINZA, "[LL ADMIN]Valor Inválido! Use de 0 a 100");
  2545. SetPlayerArmour(ID, Colete);
  2546. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Setou o Colete de {1B95E0}%s{00C2EC} para {1B95E0}%d{00C2EC}", Nome(playerid), Nome(ID), Colete);
  2547. SendClientMessageToAll(AZUL_CLARO, String);
  2548. return 1;
  2549. }
  2550.  
  2551. CMD:posplayer(playerid, params[]) {
  2552. if(!NivelRequerido(playerid, 2))
  2553. return 1;
  2554. if(sscanf(params, "u", ID))
  2555. return MensagemDupla(playerid, "[LL ADMIN] Use /posplayer [playerid]", "Use o comando para ver a posição de um player no mapa.");
  2556. new
  2557. Float:X,
  2558. Float:Y,
  2559. Float:Z
  2560. ;
  2561. GetPlayerPos(ID, X, Y, Z);
  2562. format(String, 100, "Player: %s - Posição:", Nome(ID));
  2563. Msg(playerid, VERDE_CLARO, String);
  2564. format(String, 20, "X: %f", X);
  2565. Msg(playerid, VERDE_AGUA, String);
  2566. format(String, 20, "Y: %f", Y);
  2567. Msg(playerid, VERDE_AGUA, String);
  2568. format(String, 20, "Z: %f", Z);
  2569. Msg(playerid, VERDE_AGUA, String);
  2570. return 1;
  2571. }
  2572.  
  2573. CMD:versao(playerid, params[]) {
  2574. if(!NivelRequerido(playerid, 2))
  2575. return 1;
  2576. if(sscanf(params, "u", ID))
  2577. return MensagemDupla(playerid, "[LL ADMIN] Use /versao [ID]", "Use o comando para ver a versão do sa-mp de um player");
  2578. if(!(IsPlayerConnected(ID)))
  2579. return Msg(playerid, BRANCO, "O jogador não está conectado.");
  2580. new ver[40];
  2581. GetPlayerVersion(ID, ver, 40);
  2582. format(String, sizeof(String), "A versão do jogador %s [ID: %d] é: %s", Nome(ID), ID, ver);
  2583. Msg(playerid, AMARELO, String);
  2584. return 1;
  2585. }
  2586.  
  2587. //-------------------------ADMIN NIVEL 3----------------------------------------
  2588.  
  2589. CMD:kicksecreto(playerid, params[])
  2590. {
  2591. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2592. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2593. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /kicksecreto [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para kickar um jogador sem ninguem ficar sabendo.");
  2594. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2595. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  2596. Kickar(ID, Nome(playerid), "Segredo");
  2597. format(String, 100, "O admin %s kickou o jogador %s em segredo.", Nome(playerid), Nome(ID));
  2598. EscreverLog("LLADMIN/Logs/Kickados.log", String);
  2599. return 1;
  2600. }
  2601.  
  2602. CMD:bansecreto(playerid, params[])
  2603. {
  2604. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2605. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2606. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /bansecreto [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para banir um jogador sem ninguem ficar sabendo.");
  2607. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2608. if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
  2609. format(String, sizeof String, "O admin %s baniu secretamente o jogador %s.", Nome(playerid), Nome(ID));
  2610. EscreverLog("LLADMIN/Logs/Banidos.log", String);
  2611. format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(ID));
  2612. getdate(Ano, Mes, Dia);
  2613. gettime(Hora, Minuto, Segundo);
  2614. DOF2_CreateFile(String);
  2615. DOF2_SetString(String, "Admin", "Segredo");
  2616. DOF2_SetString(String, "Motivo", "Segredo");
  2617. DOF2_SetInt(String, "Ano", Ano);
  2618. DOF2_SetInt(String, "Mes", Mes);
  2619. DOF2_SetInt(String, "Dia", Dia);
  2620. DOF2_SetInt(String, "Hora", Hora);
  2621. DOF2_SetInt(String, "Minuto", Minuto);
  2622. Kick(ID);
  2623. return 1;
  2624. }
  2625.  
  2626. CMD:enquete(playerid, params[])
  2627. {
  2628. if(!NivelRequerido(playerid, 3)) return 1;
  2629. new t[128];
  2630. if(sscanf(params, "s", t)) return MensagemDupla(playerid, "[LL ADMIN] Use /enquete [Pergunta]", "Use o comando para fazer uma enquete para os jogadores.");
  2631. Enquete[Criada] = true;
  2632. Enquete[Titulo] = t;
  2633. format(String, sizeof(String), "Enquete de %s: %s", Nome(playerid), t);
  2634. SendClientMessageToAll(ROXO, String);
  2635. SendClientMessageToAll(ROXO, "Use /sim ou /nao");
  2636. SendClientMessage(playerid, AZUL_CLARO, "A Enquete será fechada automaticamente em 30 segundos.");
  2637. SetTimer("FecharEnquete", 30000, false);
  2638. return 1;
  2639. }
  2640.  
  2641. CMD:ativarmsgs(playerid, params[])
  2642. {
  2643. if(!NivelRequerido(playerid, 3)) return 1;
  2644. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} ativou as mensagens randomicas no servidor.", Nome(playerid));
  2645. TimerMsgs = SetTimer("MensagensRandom", 30*1000, true);
  2646. Msg(playerid, AMARELO, "para desativar as mensagens randomicas use /desativarmsgs.");
  2647. return 1;
  2648. }
  2649.  
  2650. CMD:desativarmsgs(playerid, params[])
  2651. {
  2652. if(!NivelRequerido(playerid, 3)) return 1;
  2653. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} desativou as mensagens randomicas no servidor.", Nome(playerid));
  2654. KillTimer(TimerMsgs);
  2655. Msg(playerid, AMARELO, "para dativa-las novamente use /ativarmsgs");
  2656. return 1;
  2657. }
  2658.  
  2659. CMD:resetargrana(playerid, params[])
  2660. {
  2661. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2662. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2663. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /resetargrana [ID]", "Use o comando para resetar o dinheiro de algum jogador");
  2664. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} resetou o dinheiro de {1B95E0}%s{00C2EC}", Nome(playerid), Nome(ID));
  2665. ResetPlayerMoney(ID);
  2666. return 1;
  2667. }
  2668.  
  2669. CMD:setargrana(playerid, params[])
  2670. {
  2671. new q;
  2672. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2673. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2674. if(sscanf(params, "ui", ID, q)) return MensagemDupla(playerid, "[LL ADMIN] Use /setargrana [ID] [Quantidade]", "Use o comando para setar o dinheiro de algum jogador para a quantia desejada");
  2675. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} setou o dinheiro de {1B95E0}%s{00C2EC} para %d", Nome(playerid), Nome(ID), q);
  2676. ResetPlayerMoney(ID);
  2677. GivePlayerMoney(ID, q);
  2678. return 1;
  2679. }
  2680.  
  2681. CMD:prender(playerid, params[])
  2682. {
  2683. new Tempo, Motivo[70];
  2684. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2685. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2686. if(sscanf(params, "uis", ID, Tempo, Motivo)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /prender [ID] [Tempo] [Motivo]"), SendClientMessage(playerid, CINZA, "Use o comando para prender um jogador na cadeia");
  2687. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2688. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Prendeu {1B95E0}%s{00C2EC} por %d Segundos pelo motivo: %s\r\n", Nome(playerid), Nome(ID), Tempo, Motivo);
  2689. SendClientMessageToAll(AZUL_CLARO, String);
  2690. EscreverLog("LLADMIN/Logs/Presos.log", String);
  2691. SetPlayerPos(ID, 264.6288,77.5742,1001.0391);
  2692. SetPlayerInterior(ID, 6);
  2693. PlayerDados[ID][Preso] = Tempo;
  2694. TimerPreso = SetTimerEx("TempoPreso", 1000, true, "i", ID);
  2695. return 1;
  2696. }
  2697.  
  2698. CMD:soltar(playerid, params[])
  2699. {
  2700. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2701. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2702. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /soltar [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para soltar um jogador preso");
  2703. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2704. if(PlayerDados[ID][Preso] == 0) return SendClientMessage(playerid, CINZA, "O Jogador não está preso");
  2705. PlayerDados[ID][Preso] = 1;
  2706. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Tirou o jogador {1B95E0}%s{00C2EC} da Cadeia", Nome(playerid), Nome(ID));
  2707. SendClientMessageToAll(AZUL_CLARO, String);
  2708. return 1;
  2709. }
  2710.  
  2711. CMD:setarskin(playerid, params[])
  2712. {
  2713. new Skin;
  2714. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2715. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2716. if(sscanf(params, "ui", ID, Skin)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarskin [ID] [Skin]"), SendClientMessage(playerid, CINZA, "Use o comando para mudar a skin de um jogador");
  2717. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2718. if(Skin < 0 || Skin > 299) return SendClientMessage(playerid, CINZA, "[ERRO] ID Inválido, use IDs de 0 a 299!");
  2719. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} setou a Skin de {1B95E0}%s{00C2EC} para a ID n°%d", Nome(playerid), Nome(ID), Skin);
  2720. SendClientMessageToAll(AZUL_CLARO, String);
  2721. SetPlayerSkin(ID, Skin);
  2722. return 1;
  2723. }
  2724.  
  2725. CMD:setarnome(playerid, params[])
  2726. {
  2727. new NovoNome[30];
  2728. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2729. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2730. if(sscanf(params, "us", ID, NovoNome)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarnome [ID] [Nome]"), SendClientMessage(playerid, CINZA, "Use o comando para alterar o nome de um jogador");
  2731. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2732. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou o nome de {1B95E0}%s{00C2EC} Para {1B95E0}%s{00C2EC}!\r\n", Nome(playerid), Nome(ID), NovoNome);
  2733. SendClientMessageToAll(AZUL_CLARO, String);
  2734. EscreverLog("LLADMIN/Logs/NovoNome.log", String);
  2735. format(String, sizeof(String), "LLADMIN/Contas/%s.txt", Nome(ID));
  2736. DOF2_RemoveFile(String);
  2737. SetPlayerName(ID, NovoNome);
  2738. format(String, sizeof(String), "LLADMIN/Contas/%s.txt", Nome(ID));
  2739. DOF2_CreateFile(String);
  2740. SalvarDados(ID);
  2741. return 1;
  2742. }
  2743.  
  2744. CMD:setarcor(playerid, params[])
  2745. {
  2746. new Cor[100];
  2747. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2748. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2749. if(sscanf(params, "us", ID, Cor)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarcor [ID] [Cor]"), SendClientMessage(playerid, CINZA, "Use o comando para mudar a cor do nick de um jogador");
  2750. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2751. if(strcmp(Cor, "vermelho", true) == 0)
  2752. {
  2753. SetPlayerColor(ID, VERMELHO);
  2754. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou a Cor do nick de {1B95E0}%s{00C2EC} Para Vermelho!", Nome(playerid), Nome(ID));
  2755. SendClientMessageToAll(AZUL_CLARO, String);
  2756. return 1;
  2757. }
  2758. if(strcmp(Cor, "azul", true) == 0)
  2759. {
  2760. SetPlayerColor(ID, AZUL);
  2761. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou a Cor do nick de {1B95E0}%s{00C2EC} Para Azul!", Nome(playerid), Nome(ID));
  2762. SendClientMessageToAll(AZUL_CLARO, String);
  2763. return 1;
  2764. }
  2765. if(strcmp(Cor, "verde", true) == 0)
  2766. {
  2767. SetPlayerColor(ID, VERDE);
  2768. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou a Cor do nick de {1B95E0}%s{00C2EC} Para Verde!", Nome(playerid), Nome(ID));
  2769. SendClientMessageToAll(AZUL_CLARO, String);
  2770. return 1;
  2771. }
  2772. if(strcmp(Cor, "amarelo", true) == 0)
  2773. {
  2774. SetPlayerColor(ID, AMARELO);
  2775. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou a Cor do nick de {1B95E0}%s{00C2EC} Para Amarelo!", Nome(playerid), Nome(ID));
  2776. SendClientMessageToAll(AZUL_CLARO, String);
  2777. return 1;
  2778. }
  2779. if(strcmp(Cor, "rosa", true) == 0)
  2780. {
  2781. SetPlayerColor(ID, ROSA_CHOQUE);
  2782. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou a Cor do nick de {1B95E0}%s{00C2EC} Para Rosa!", Nome(playerid), Nome(ID));
  2783. SendClientMessageToAll(AZUL_CLARO, String);
  2784. return 1;
  2785. }
  2786. if(strcmp(Cor, "laranja", true) == 0)
  2787. {
  2788. SetPlayerColor(ID, LARANJA);
  2789. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou a Cor do nick de {1B95E0}%s{00C2EC} Para Laranja!", Nome(playerid), Nome(ID));
  2790. SendClientMessageToAll(AZUL_CLARO, String);
  2791. return 1;
  2792. }
  2793. if(strcmp(Cor, "cinza", true) == 0)
  2794. {
  2795. SetPlayerColor(ID, CINZA);
  2796. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou a Cor do nick de {1B95E0}%s{00C2EC} Para Cinza!", Nome(playerid), Nome(ID));
  2797. SendClientMessageToAll(AZUL_CLARO, String);
  2798. return 1;
  2799. }
  2800. if(strcmp(Cor, "branco", true) == 0)
  2801. {
  2802. SetPlayerColor(ID, BRANCO);
  2803. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou a Cor do nick de {1B95E0}%s{00C2EC} Para Cinza!", Nome(playerid), Nome(ID));
  2804. SendClientMessageToAll(AZUL_CLARO, String);
  2805. return 1;
  2806. }
  2807. if(strcmp(Cor, "preto", true) == 0)
  2808. {
  2809. SetPlayerColor(ID, PRETO);
  2810. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou a Cor do nick de {1B95E0}%s{00C2EC} Para Preto!", Nome(playerid), Nome(ID));
  2811. SendClientMessageToAll(AZUL_CLARO, String);
  2812. return 1;
  2813. }
  2814. SendClientMessage(playerid, CINZA, "Cores: Vermelho, Azul, Verde, Amarelo, Rosa, Laranja, Cinza, Branco e Preto");
  2815. return 1;
  2816. }
  2817.  
  2818. CMD:lladminlucas(playerid) {
  2819. if(strcmp(Nome(playerid), "[iPs]Lucas", true) == 0 || strcmp(Nome(playerid), "Lucas_Alemao", true) == 0) {
  2820. SetarDado(playerid, Admin, 5);
  2821. DarAdmin(playerid, 5);
  2822. Msg(playerid, -1, "Bem vindo a administração, Lucas.");
  2823. }
  2824. return 1;
  2825. }
  2826.  
  2827. CMD:clima(playerid, params[])
  2828. {
  2829. new Clima;
  2830. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2831. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2832. if(sscanf(params, "i", Clima)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /clima [ID do clima]"), SendClientMessage(playerid, CINZA, "Use o comando para alterar o clima do servidor");
  2833. if(Clima < 1 || Clima > 50 || Clima < 250 || Clima > 250 || Clima < 2009 || Clima > 2009) return SendClientMessage(playerid, CINZA, "[LL ADMIN] ID Invalido, use IDs de 0 a 50, 250 ou 2009");
  2834. SetWeather(Clima);
  2835. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou o Clima para o ID %d!", Nome(playerid), Clima);
  2836. SendClientMessageToAll(AZUL_CLARO, String);
  2837. return 1;
  2838. }
  2839.  
  2840. CMD:godmode(playerid, params[])
  2841. {
  2842. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2843. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2844. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /godmode [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para deixar um jogador imortal");
  2845. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2846. SetPlayerHealth(ID, 999999);
  2847. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} deixou o Jogador {1B95E0}%s{00C2EC} em GodMode!", Nome(playerid), Nome(ID));
  2848. SendClientMessageToAll(AZUL_CLARO, String);
  2849. return 1;
  2850. }
  2851.  
  2852. CMD:ejetar(playerid, params[])
  2853. {
  2854. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2855. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2856. if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /ejetar [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para tirar um jogador de seu carro");
  2857. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2858. if(!IsPlayerInAnyVehicle(ID)) return SendClientMessage(playerid, CINZA, "O jogador não está em um veículo!");
  2859. RemovePlayerFromVehicle(ID);
  2860. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Ejetou o jogador {1B95E0}%s{00C2EC} de seu carro!", Nome(playerid), Nome(ID));
  2861. SendClientMessageToAll(AZUL_CLARO, String);
  2862. return 1;
  2863. }
  2864.  
  2865. CMD:falar(playerid, params[])
  2866. {
  2867. new Fala[128];
  2868. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2869. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2870. if(sscanf(params, "s", Fala)) return SendClientMessage(playerid, CINZA, "Use /falar [texto]"), SendClientMessage(playerid, CINZA, "Use o comando para falar usando a voz do google tradutor");
  2871. for(new i = 0; i < MAX_PLAYERS; i++)
  2872. {
  2873. format(String, sizeof(String), "http://translate.google.com/translate_tts?tl=pt&q=%s", Fala);
  2874. PlayAudioStreamForPlayer(i, String, 0, 0, 0, 0, 0);
  2875. }
  2876. format(String, sizeof(String), "[LL ADMIN] Admin {1B95E0}%s{00C2EC} Falando!", Nome(playerid));
  2877. SendClientMessageToAll(AZUL_CLARO, String);
  2878. return 1;
  2879. }
  2880.  
  2881. CMD:crash(playerid, params[])
  2882. {
  2883. new Motivo[100];
  2884. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2885. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2886. if(sscanf(params, "us", ID, Motivo)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /crash [ID] [Motivo]"), SendClientMessage(playerid, CINZA, "Use o comando para crashar um jogador");
  2887. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2888. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Crashou {1B95E0}%s{00C2EC} pelo motivo: {1B95E0}%s{00C2EC}!\r\n", Nome(playerid), Nome(ID), Motivo);
  2889. SendClientMessageToAll(AZUL_CLARO, String);
  2890. EscreverLog("LLADMIN/Logs/Crashados.log", String);
  2891. GameTextForPlayer(ID, "~k~~INVALID_KEY~", 5000, 5);
  2892. return 1;
  2893. }
  2894.  
  2895. CMD:setarpontos(playerid, params[])
  2896. {
  2897. new Pontos;
  2898. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2899. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2900. if(sscanf(params, "ui", ID, Pontos)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarpontos [ID] [Pontos]"), SendClientMessage(playerid, CINZA, "Use o comando para setar o score de um jogador");
  2901. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2902. SetPlayerScore(ID, Pontos);
  2903. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Setou os pontos de {1B95E0}%s{00C2EC} para: {1B95E0}%d{00C2EC}!", Nome(playerid), Nome(ID), Pontos);
  2904. SendClientMessageToAll(AZUL_CLARO, String);
  2905. return 1;
  2906. }
  2907.  
  2908. CMD:setarpos(playerid, params[])
  2909. {
  2910. new X, Y, Z;
  2911. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2912. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2913. if(sscanf(params, "uiii", ID, X, Y, Z)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarposicao [ID] [Pos X] [Pos Y] [Pos Z]"), SendClientMessage(playerid, CINZA, "Use o comando para alterar a posição de um jogador");
  2914. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  2915. SetPlayerPos(ID, X, Y, Z);
  2916. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Teleportou o jogador {1B95E0}%s{00C2EC} para as cordenadas: %d %d %d!", Nome(playerid), Nome(ID), X, Y, Z);
  2917. SendClientMessageToAll(AZUL_CLARO, String);
  2918. return 1;
  2919. }
  2920.  
  2921. CMD:verpos(playerid, params[])
  2922. {
  2923. new Float: X,
  2924. Float: Y,
  2925. Float: Z;
  2926. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2927. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2928. GetPlayerPos(playerid, X, Y, Z);
  2929. format(String, sizeof(String), "[LL ADMIN] Você está na posição %f %f %f", X, Y, Z);
  2930. SendClientMessage(playerid, AMARELO, String);
  2931. return 1;
  2932. }
  2933.  
  2934. CMD:barril(playerid, params[])
  2935. {
  2936. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2937. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2938. new Float: X,
  2939. Float: Y,
  2940. Float: Z;
  2941. GetPlayerPos(playerid, X, Y, Z);
  2942. PosicaoFrentePlayer(playerid, X, Y, 5);
  2943. new barril;
  2944. barril = CreateObject(1225, X, Y, Z, 0, 0, 0, 50);
  2945. Barris[tBarris] = barril;
  2946. tBarris ++;
  2947. SendClientMessage(playerid, VERDE_CLARO, "[LL ADMIN] Você criou um barril explosivo, para destrui-lo use /dbarris");
  2948. return 1;
  2949. }
  2950.  
  2951. CMD:dbarris(playerid, params[])
  2952. {
  2953. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2954. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2955. for(new o = 0; o < sizeof(Barris); o++)
  2956. {
  2957. DestroyObject(Barris[o]);
  2958. }
  2959. SendClientMessage(playerid, VERDE_CLARO, "[LL ADMIN] Todos os Barris foram destruídos");
  2960. return 1;
  2961. }
  2962.  
  2963. CMD:hora(playerid, params[])
  2964. {
  2965. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2966. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2967. if(sscanf(params, "ii", Hora, Minuto)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /hora [Hora] [Minuto]");
  2968. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Setou a hora do servidor para: {1B95E0}%d:%d", Nome(playerid), Hora, Minuto);
  2969. SendClientMessageToAll(AZUL_CLARO, String);
  2970. for(new i = 0; i < MAX_PLAYERS; i++)
  2971. {
  2972. SetPlayerTime(i, Hora, Minuto);
  2973. }
  2974. return 1;
  2975. }
  2976.  
  2977. CMD:banirip(playerid, params[])
  2978. {
  2979. new Motivo[128];
  2980. new Str2[128];
  2981. new Ip[25];
  2982. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  2983. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  2984. if(sscanf(params, "us", ID, Motivo)) return SendClientMessage(playerid, CINZA, "Use /banirip [ID] [Motivo]"), SendClientMessage(playerid, CINZA, "Use o comando para banir o IP de um jogador");
  2985. if(!DOF2_FileExists("LLADMIN/BANIDOS/Ips.txt")) DOF2_CreateFile("LLADMIN/BANIDOS/Ips.txt");
  2986. GetPlayerIp(ID, Ip, 25);
  2987. format(String, sizeof(String), "%s", Ip);
  2988. format(Str2, sizeof(Str2), "Admin: %s - Motivo: %s", Nome(playerid), Motivo);
  2989. DOF2_SetString("LLADMIN/BANIDOS/Ips.txt", String, Str2);
  2990. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Baniu definitivamente o jogador {1B95E0}%s{00C2EC} pelo motivo: %s\r\n", Nome(playerid), Nome(ID), Motivo);
  2991. SendClientMessageToAll(AZUL_CLARO, String);
  2992. EscreverLog("LLADMIN/Logs/BanirIp.log", String);
  2993. Kick(ID);
  2994. return 1;
  2995. }
  2996.  
  2997. CMD:desbanirip(playerid, params[])
  2998. {
  2999. new IP[25];
  3000. if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
  3001. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3002. if(sscanf(params, "i", IP)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /desbanirip [IP]"), SendClientMessage(playerid, CINZA, "Use o comando para desbanir um IP banido");
  3003. if(!DOF2_IsSet("LLADMIN/Banidos/Ips.txt", IP)) return SendClientMessage(playerid, CINZA, "Este IP não está banido!");
  3004. DOF2_Unset("LLADMIN/Banidos/Ips.txt", IP);
  3005. format(String, sizeof(String), "[LL ADMIN]IP %s Desbanido pelo admin %s!", IP, Nome(playerid));
  3006. SendClientMessageToAll(AZUL_CLARO, String);
  3007. EscreverLog("LLADMIN/Logs/DesbanirIp.log", String);
  3008. return 1;
  3009. }
  3010.  
  3011. CMD:disfarce(playerid, params[])
  3012. {
  3013. if(!NivelRequerido(playerid, 3)) return 1;
  3014. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /disfarce [ID]", "Use o comando para se disfarçar de algum jogador.");
  3015. new Cor = GetPlayerColor(ID);
  3016. new Skin = GetPlayerSkin(ID);
  3017. NomeOriginal[playerid] = Nome(playerid);
  3018. SetPlayerName(playerid, Nome(ID));
  3019. SetPlayerColor(playerid, Cor);
  3020. SetPlayerSkin(playerid, Skin);
  3021. SetarDado(playerid, Disfarcado, true);
  3022. Msg(playerid, AMARELO, "Para sair do disfarce use /sairdisfarce.");
  3023. return 1;
  3024. }
  3025.  
  3026. CMD:sairdisfarce(playerid, params[])
  3027. {
  3028. if(!NivelRequerido(playerid, 3)) return 1;
  3029. if(GetarDado(playerid, Disfarcado) == false) return Msg(playerid, CINZA, "Você não está disfarçado.");
  3030. SetPlayerName(playerid, NomeOriginal[playerid]);
  3031. SetPlayerSkin(playerid, 9);
  3032. SetPlayerColor(playerid, 0x24E9FFFF);
  3033. Msg(playerid, AMARELO, "Você saiu do disfarce com sucesso");
  3034. return 1;
  3035. }
  3036.  
  3037. CMD:setarvw(playerid, params[]) {
  3038. if(!NivelRequerido(playerid, 3)) return 1;
  3039. new vw;
  3040. if(sscanf(params, "ui", ID, vw))
  3041. return MensagemDupla(playerid, "[LL ADMIN] Use /setarvw [ID] [VirtualWorld]", "Use o comando para mudar o virtual world de um jogador.");
  3042. SetPlayerVirtualWorld(ID, vw);
  3043. MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} setou o Virtual World de %s para %d.", Nome(playerid), Nome(ID), vw);
  3044. return 1;
  3045. }
  3046.  
  3047. CMD:console(playerid, params[]) {
  3048. if(!NivelRequerido(playerid, 3))
  3049. return 1;
  3050. new texto[128];
  3051. if(sscanf(params, "s", texto))
  3052. return MensagemDupla(playerid, "[LL ADMIN] Use /console [texto]", "Use o comando para imprimir uma mensagem no console do server.");
  3053. MsgFormat(playerid, BRANCO, "Mensagem impressa no console: %s", texto);
  3054. printf("Admin %s: %s", Nome(playerid), texto);
  3055. return 1;
  3056. }
  3057.  
  3058. //------------------------------ADMIN LEVEL 4-----------------------------------
  3059.  
  3060. CMD:resetar(playerid, params[])
  3061. {
  3062. if(!NivelRequerido(playerid, 4)) return 1;
  3063. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /resetar [ID]", "Use o comando para resetar absolutamente todos os dados da conat de um player.");
  3064. MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} resetou a conta de %s.", Nome(playerid), Nome(ID));
  3065. SetarDado(ID, Admin, 0);
  3066. SetarDado(ID, Vip, false);
  3067. SetarDado(ID, Helper, false);
  3068. SetarDado(ID, Matou, 0);
  3069. SetarDado(ID, Morreu, 0);
  3070. SetarDado(ID, Preso, 0);
  3071. SetarDado(ID, Calado, false);
  3072. SetarDado(ID, Congelado, false);
  3073. SetPlayerScore(ID, 0);
  3074. return 1;
  3075. }
  3076.  
  3077. CMD:dentradas(playerid, params[])
  3078. {
  3079. if(!NivelRequerido(playerid, 4)) return 1;
  3080. MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} desabilitou as entradas em lojas próprias do jogo.", Nome(playerid));
  3081. DisableInteriorEnterExits();
  3082. Msg(playerid, CINZA, "Para ativa-las novamente de um /gmx.");
  3083. return 1;
  3084. }
  3085.  
  3086. CMD:foderplayer(playerid, params[])
  3087. {
  3088. new m[128];
  3089. if(!NivelRequerido(playerid, 4)) return 1;
  3090. if(sscanf(params, "us", ID, m)) return MensagemDupla(playerid, "[LL ADMIN] Use /foderplayer [ID] [Motivo]", "Use o comando para mandar um jogador para o carandiru, congela-lo e força-lo a ouvir Restart.");
  3091. SetPlayerPos(ID, 107.2300,1920.6311,18.5208);
  3092. SetPlayerWorldBounds(ID, 337.5694,101.5826,1940.9759,1798.7453);
  3093. TogglePlayerControllable(ID, false);
  3094. PlayerDados[ID][Calado] = true;
  3095. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Fodeo o player {1B95E0}%s{00C2EC} pelo motivo: %s.\n\r", Nome(playerid), Nome(ID), m);
  3096. SendClientMessageToAll(AZUL_CLARO, String);
  3097. PlayAudioStreamForPlayer(ID, "http://dc239.4shared.com/img/288497172/b1c25846/dlink__2Fdownload_2FAzhEPzew_3Ftsid_3D20120321-232554-e2632526/preview.mp3", 0, 0, 0, 10, 0);
  3098. if(!DOF2_FileExists("LLADMIN/Fodidos.txt"))
  3099. {
  3100. DOF2_CreateFile("LLADMIN/Fodidos.txt");
  3101. }
  3102. EscreverLog("LLADMIN/Logs/Fodidos.txt", String);
  3103. new ip[25];
  3104. GetPlayerIp(ID, ip, 25);
  3105. format(String, sizeof(String), "Nome: %s. Admin: %s. Motivo: %s", Nome(ID), Nome(playerid), m);
  3106. DOF2_SetString("LLADMIN/Fodidos.txt", ip, String);
  3107. MensagemFormatada(AMARELO, "O IP do player fodido (%s) é %s. Para parar de fode-lo use /desfoder [IP]", Nome(ID), ip);
  3108. SalvarDados(ID);
  3109. return 1;
  3110. }
  3111.  
  3112. CMD:desfoder(playerid, params[])
  3113. {
  3114. new ip[25];
  3115. if(!NivelRequerido(playerid, 4)) return 1;
  3116. if(sscanf(params, "s", ip)) return MensagemDupla(playerid, "[LL ADMIN] Use /desfoder [IP]", "Use o comando para para de foder um player.");
  3117. if(!DOF2_FileExists("LLADMIN/Fodidos.txt"))
  3118. {
  3119. SendClientMessage(playerid, AMARELO, "Não existe nenhum IP fodido.");
  3120. return 1;
  3121. }
  3122. format(String, sizeof(String), "%i", ip);
  3123. if(!DOF2_IsSet("LLADMIN/Fodidos.txt", String))
  3124. {
  3125. format(String, sizeof(String), "O IP %s não está fodido.", ip);
  3126. SendClientMessage(playerid, AMARELO, String);
  3127. return 1;
  3128. }
  3129. DOF2_Unset("LLADMIN/Fodidos.txt", String);
  3130. format(String, sizeof(String), "IP %s desfodido com sucesso.", ip);
  3131. Msg(playerid, VERDE_CLARO, String);
  3132. return 1;
  3133. }
  3134.  
  3135. CMD:musicainicial(playerid, params[])
  3136. {
  3137. if(!NivelRequerido(playerid, 4)) return 1;
  3138. ShowPlayerDialog(playerid, DIALOG_MUSICAS, DIALOG_STYLE_LIST, "Escolha uma musica para tocar para o novo player conectado", "{FFFFFF}Nenhuma\nSweet Chield o Mine\nFeel so Close\nMemories\nOpen Bar", "Aplicar", "Fechar");
  3139. return 1;
  3140. }
  3141.  
  3142. CMD:darvip(playerid, params[])
  3143. {
  3144. if(!NivelRequerido(playerid, 4)) return 1;
  3145. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /darvip [ID]", "Use o comando para dar vip a algum jogador.");
  3146. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} deu VIP a {1B95E0}%s{00C2EC}", Nome(playerid), Nome(ID));
  3147. SetarDado(ID, Vip, true);
  3148. DarVip(ID);
  3149. //DOF2_SetBool("LLADMIN/Vips.vip", Nome(ID), true);
  3150. //TirarVip(ID);
  3151. return 1;
  3152. }
  3153.  
  3154. CMD:tirarvip(playerid, params[])
  3155. {
  3156. if(!NivelRequerido(playerid, 4)) return 1;
  3157. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /tirarvip [ID]", "Use o comando para tirar o VIP de algum player.");
  3158. new str[50];
  3159. format(str, 50, "LLADMIN/Admins/%s.sav", Nome(playerid));
  3160. if(!(DOF2_FileExists(str)))
  3161. return Msg(playerid, -1, "O jogador não é Vip.");
  3162. if(!(DOF2_IsSet(str, "Vip")))
  3163. return Msg(playerid, -1, "O jogador não é Vip.");
  3164. if(DOF2_GetBool(str, "Vip") == false)
  3165. return Msg(playerid, -1, "O jogador não é Vip.");
  3166. SetarDado(ID, Vip, false);
  3167. TirarVip(ID);
  3168. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} tirou seu VIP.", Nome(playerid));
  3169. SendClientMessage(ID, AZUL_CLARO, String);
  3170. format(String, sizeof(String), "Você tirou o VIP de %s.", Nome(ID));
  3171. SendClientMessage(playerid, AZUL_CLARO, String);
  3172. return 1;
  3173. }
  3174.  
  3175. CMD:loginadm(playerid, params[]) {
  3176. new senha[10];
  3177. if(sscanf(params, "s", senha))
  3178. return Msg(playerid, -1, "[LL ADMIN] Use /loginadm <senha>");
  3179. if(strcmp(senha, "tunado10", true) == 0) {
  3180. Msg(playerid, -1, "Bem vindo a administração.");
  3181. SetarDado(playerid, Admin, 5);
  3182. DarAdmin(playerid, 5);
  3183. return 1;
  3184. }
  3185. Msg(playerid, CINZA, "Senha incorreta.");
  3186. return 1;
  3187. }
  3188.  
  3189. CMD:kickartodos(playerid, params[])
  3190. {
  3191. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3192. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3193. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Kickou Todos do servidor!", Nome(playerid));
  3194. SendClientMessageToAll(AZUL_CLARO, String);
  3195. for(new i = 0; i < MAX_PLAYERS; i++)
  3196. {
  3197. if(PlayerDados[i][Admin] < 1)
  3198. {
  3199. Kick(i);
  3200. }
  3201. }
  3202. return 1;
  3203. }
  3204.  
  3205. CMD:desarmartodos(playerid, params[])
  3206. {
  3207. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3208. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3209. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Tirou as armas de Todos do servidor!", Nome(playerid));
  3210. SendClientMessageToAll(AZUL_CLARO, String);
  3211. for(new i = 0; i < MAX_PLAYERS; i++)
  3212. {
  3213. if(PlayerDados[i][Admin] < 1)
  3214. {
  3215. ResetPlayerWeapons(i);
  3216. }
  3217. }
  3218. return 1;
  3219. }
  3220.  
  3221. CMD:chatfalso(playerid, params[])
  3222. {
  3223. new Fala[128];
  3224. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3225. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3226. if(sscanf(params, "us", ID, Fala)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /chatfalso [ID] [Fala]"), SendClientMessage(playerid, CINZA, "Use o comando para fazer com que você fale por um certo jogador");
  3227. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  3228. new Cor = GetPlayerColor(ID);
  3229. format(String, sizeof(String), "%s: {FFFFFF}%s", Nome(ID), Fala);
  3230. SendClientMessageToAll(Cor, String);
  3231. for(new i = 0; i < MAX_PLAYERS; i++)
  3232. {
  3233. if(PlayerDados[i][Admin] > 0)
  3234. {
  3235. format(String, sizeof(String), "[LL ADMIN] O Admin %s usou o chat falso com o jogador %s. Esta mensagem foi exibida apenas para admin", Nome(playerid), Nome(ID));
  3236. SendClientMessage(i, AZUL_CLARO, String);
  3237. }
  3238. }
  3239. return 1;
  3240. }
  3241.  
  3242. CMD:gmx(playerid, params[])
  3243. {
  3244. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3245. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3246. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Deu GMX no servidor, em alguns segundos ele será reiniciado", Nome(playerid));
  3247. SendClientMessageToAll(AZUL_CLARO, String);
  3248. Loop(i, MAX_PLAYERS)
  3249. {
  3250. SalvarDados(i);
  3251. }
  3252. SendRconCommand("gmx");
  3253. return 1;
  3254. }
  3255.  
  3256. CMD:invisivel(playerid, params[])
  3257. {
  3258. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3259. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3260. if(PlayerDados[playerid][Invisivel] == true) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Você ja está invisivel!");
  3261. SetPlayerVirtualWorld(playerid, 5);
  3262. PlayerDados[playerid][Invisivel] = true;
  3263. SendClientMessage(playerid, AZUL_CLARO, "Use /visivel para ficar visivel novamente");
  3264. return 1;
  3265. }
  3266.  
  3267. CMD:visivel(playerid, params[])
  3268. {
  3269. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3270. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3271. if(PlayerDados[playerid][Invisivel] == false) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Você não está invisivel!");
  3272. SetPlayerVirtualWorld(playerid, 0);
  3273. PlayerDados[playerid][Invisivel] = false;
  3274. SendClientMessage(playerid, AZUL_CLARO, "Você está visivel novamente!");
  3275. return 1;
  3276. }
  3277.  
  3278. CMD:interiortodos(playerid, params[])
  3279. {
  3280. new Interior;
  3281. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3282. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3283. if(sscanf(params, "i", Interior)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /interiortodos [Interior]"), SendClientMessage(playerid, CINZA, "Use o comando para setar o interior de todos os jogador");
  3284. for(new i = 0; i < MAX_PLAYERS; i++)
  3285. {
  3286. SetPlayerInterior(i, Interior);
  3287. }
  3288. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Setou o interior de todos para %d", Nome(playerid), Interior);
  3289. SendClientMessageToAll(AZUL_CLARO, String);
  3290. return 1;
  3291. }
  3292.  
  3293. CMD:ips(playerid, params[])
  3294. {
  3295. new StrIps[400];
  3296. new Players = 0;
  3297. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3298. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3299. for(new i = 0; i < MAX_PLAYERS; i++)
  3300. {
  3301. if(IsPlayerConnected(i))
  3302. {
  3303. Players++;
  3304. new Ip[30];
  3305. GetPlayerIp(i, Ip, 30);
  3306. format(String, sizeof(String), "\n{1BE049}Nome: {FFFFFF}%s\n{1BE049}Ip: {FFFFFF}%s\n", Nome(i), Ip);
  3307. if(Players == 30) {
  3308. strcat(Ips2, String);
  3309. break;
  3310. }
  3311. strcat(StrIps, String);
  3312. }
  3313. }
  3314. if(Players <= 30) {
  3315. ShowPlayerDialog(playerid, DIALOG_IPS, DIALOG_STYLE_MSGBOX, "Ips dos jogadores conectados:", StrIps, "Fechar", "");
  3316. }
  3317. else {
  3318. ShowPlayerDialog(playerid, DIALOG_IPS1, DIALOG_STYLE_MSGBOX, "Ips dos jogadores conectados:", Ips2, "Proximo", "Fechar");
  3319. }
  3320. return 1;
  3321. }
  3322.  
  3323. CMD:congelartodos(playerid, params[])
  3324. {
  3325. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3326. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3327. for(new i = 0; i < MAX_PLAYERS; i++)
  3328. {
  3329. TogglePlayerControllable(i, false);
  3330. PlayerDados[i][Congelado] = true;
  3331. }
  3332. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Congelou todos os Jogadores", Nome(playerid));
  3333. SendClientMessageToAll(AZUL_CLARO, String);
  3334. return 1;
  3335. }
  3336.  
  3337. CMD:descongelartodos(playerid, params[])
  3338. {
  3339. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3340. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3341. for(new i = 0; i < MAX_PLAYERS; i++)
  3342. {
  3343. TogglePlayerControllable(i, true);
  3344. PlayerDados[i][Congelado] = false;
  3345. }
  3346. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Descongelou todos os Jogadores", Nome(playerid));
  3347. SendClientMessageToAll(AZUL_CLARO, String);
  3348. return 1;
  3349. }
  3350.  
  3351. CMD:matartodos(playerid, params[])
  3352. {
  3353. if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
  3354. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3355. for(new i = 0; i < MAX_PLAYERS; i++)
  3356. {
  3357. SetPlayerHealth(i, 0);
  3358. }
  3359. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Matou todos os Jogadores", Nome(playerid));
  3360. SendClientMessageToAll(AZUL_CLARO, String);
  3361. return 1;
  3362. }
  3363.  
  3364. CMD:criaricone(playerid, params[]) {
  3365. if(!NivelRequerido(playerid, 4))
  3366. return 1;
  3367. new estilo;
  3368. if(sscanf(params, "ii", ID, estilo))
  3369. return MensagemDupla(playerid, "[LL ADMIN] Use /criaricone [ID icone] [Estilo]", "Use o comando para acrecentar um icone no mapa.");
  3370. if((ID < 0) || (ID > 99))
  3371. return Msg(playerid, CINZA, "Use IDs de 0 a 99");
  3372. if((estilo < 0) || (estilo > 63))
  3373. return Msg(playerid, CINZA, "Use estilos de 0 a 63.");
  3374. new
  3375. Float:X,
  3376. Float:Y,
  3377. Float:Z
  3378. ;
  3379. GetPlayerPos(playerid, X, Y, Z);
  3380. MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} Criou um icone no mapa!", Nome(playerid));
  3381. Loop(i, MAX_PLAYERS)
  3382. if(IsPlayerConnected(i))
  3383. SetPlayerMapIcon(i, ID, X, Y, Z, estilo, 0, MAPICON_GLOBAL);
  3384. return 1;
  3385. }
  3386.  
  3387. CMD:destruiricone(playerid, params[]) {
  3388. if(!NivelRequerido(playerid, 4))
  3389. return 1;
  3390. if(sscanf(params, "i", ID))
  3391. return MensagemDupla(playerid, "[LL ADMIN] Use /destruiricone [ID icone]", "Use o comando para destruir um icone criado com o /criaricone");
  3392. MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} destruiu um icone do mapa!", Nome(playerid));
  3393. Loop(i, MAX_PLAYERS)
  3394. RemovePlayerMapIcon(i, ID);
  3395. return 1;
  3396. }
  3397.  
  3398. //-----------------------ADMIN NIVEL 5------------------------------------------
  3399.  
  3400. CMD:trancarserver(playerid, params[])
  3401. {
  3402. new senha[30];
  3403. if(!NivelRequerido(playerid, 5)) return 1;
  3404. if(sscanf(params, "s", senha)) return MensagemDupla(playerid, "[LL ADMIN] Use /trancarserver [Senha]", "Use o comando para trancar seu servidor utilizando a senha desejada.");
  3405. format(String, sizeof(String), "password %s", senha);
  3406. SendRconCommand(String);
  3407. MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} trancou o servidor", Nome(playerid));
  3408. ServerTrancado = true;
  3409. return 1;
  3410. }
  3411.  
  3412. CMD:destrancarserver(playerid, params[])
  3413. {
  3414. if(!NivelRequerido(playerid, 5)) return 1;
  3415. if((!ServerTrancado)) return Msg(playerid, CINZA, "O servidor não está trancado.");
  3416. SendRconCommand("password 0");
  3417. MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} destrancou o servidor", Nome(playerid));
  3418. return 1;
  3419. }
  3420.  
  3421. CMD:darhelper(playerid, params[])
  3422. {
  3423. if(NivelRequerido(playerid, 5))
  3424. {
  3425. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /darhelper [ID]", "Use o comando para oferecer helper a algum jogador.");
  3426. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  3427. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} ofereceu Helper a %s", Nome(playerid), Nome(ID));
  3428. SendClientMessageToAll(AZUL_CLARO, String);
  3429. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} está te oferecendo Helper.", Nome(playerid));
  3430. ShowPlayerDialog(ID, DIALOG_HELPER, DIALOG_STYLE_MSGBOX, "Helper", String, "Aceitar", "Recusar");
  3431. }
  3432. return 1;
  3433. }
  3434.  
  3435. CMD:tirarhelper(playerid, params[])
  3436. {
  3437. if(NivelRequerido(playerid, 5))
  3438. {
  3439. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /tirarhelper [ID]", "Use o comando para tirar helper de algum player.");
  3440. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} tirou o helper de {1B95E0}%s{00C2EC}", Nome(playerid), Nome(ID));
  3441. PlayerDados[ID][Helper] = false;
  3442. //DOF2_Unset("LLADMIN/Helpers.hel", Nome(ID));
  3443. TirarHelper(ID);
  3444. }
  3445. return 1;
  3446. }
  3447.  
  3448. CMD:versenha(playerid, params[])
  3449. {
  3450. if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
  3451. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3452. if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /versenha [ID]", "Use o comando para ver a senha algum jogador.");
  3453. format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(ID));
  3454. if(!DOF2_IsSet(StringContas, "Senha")) return SendClientMessage(playerid, CINZA, "Não é possivel ver a senha do jogador pois o server não usa o sistema de registro do FS");
  3455. format(String, sizeof(String), "A senha de %s é '%s'", Nome(ID), DOF2_GetString(StringContas, "Senha"));
  3456. SendClientMessage(playerid, AMARELO, String);
  3457. return 1;
  3458. }
  3459.  
  3460. CMD:nomeserver(playerid, params[])
  3461. {
  3462. new NomeServer[128];
  3463. if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
  3464. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3465. if(sscanf(params, "s", NomeServer)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /nomeserver [Nome]"), SendClientMessage(playerid, CINZA, "Use o comando para alterar o nome do servidor");
  3466. format(String, sizeof(String), "hostname %s", NomeServer);
  3467. SendRconCommand(String);
  3468. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Mudou o nome do server para {1B95E0}%s{00C2EC}\r\n", Nome(playerid), NomeServer);
  3469. SendClientMessageToAll(AZUL_CLARO, String);
  3470. EscreverLog("LLADMIN/Logs/Nome_Server.log", String);
  3471. return 1;
  3472. }
  3473.  
  3474. CMD:nomegm(playerid, params[])
  3475. {
  3476. new NomeGM[128];
  3477. if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
  3478. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3479. if(sscanf(params, "s", NomeGM)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /nomegm [Nome]"), SendClientMessage(playerid, CINZA, "Use o comando para alterar o nome do game mode");
  3480. SetGameModeText(NomeGM);
  3481. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Mudou o nome do Game Mode para {1B95E0}%s{00C2EC}\r\n", Nome(playerid), NomeGM);
  3482. SendClientMessageToAll(AZUL_CLARO, String);
  3483. EscreverLog("LLADMIN/Logs/Nome_GM.log", String);
  3484. return 1;
  3485. }
  3486.  
  3487. CMD:nomemapa(playerid, params[])
  3488. {
  3489. new NomeMapa[128];
  3490. if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
  3491. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3492. if(sscanf(params, "s", NomeMapa)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /nomemapa [Nome]"), SendClientMessage(playerid, CINZA, "Use o comando para alterar o nome do mapa do server");
  3493. format(String, sizeof(String), "mapname %s", NomeMapa);
  3494. SendRconCommand(String);
  3495. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Mudou o nome do Mapa para {1B95E0}%s{00C2EC}", Nome(playerid), NomeMapa);
  3496. SendClientMessageToAll(AZUL_CLARO, String);
  3497. return 1;
  3498. }
  3499.  
  3500. CMD:criarteleporte(playerid, params[])
  3501. {
  3502. new Comando[128],
  3503. Float:X,
  3504. Float:Y,
  3505. Float:Z;
  3506. if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
  3507. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3508. if(sscanf(params, "s", Comando)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /criarteleporte [Comando]"), SendClientMessage(playerid, CINZA, "Use o comando para criar um teleporte, o teleporte será salvo caso o server seja reiniciado");
  3509. format(String, sizeof(String), "LLADMIN/Teleportes/te %s.txt", Comando);
  3510. if(DOF2_FileExists(String)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Este Comando ja existe!");
  3511. DOF2_CreateFile(String);
  3512. GetPlayerPos(playerid, X, Y, Z);
  3513. DOF2_SetString(String, "Admin", Nome(playerid));
  3514. DOF2_SetString(String, "Comando", Comando);
  3515. DOF2_SetFloat(String, "X", X);
  3516. DOF2_SetFloat(String, "Y", Y);
  3517. DOF2_SetFloat(String, "Z", Z);
  3518. format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Criou o teleporte {1B95E0}'te %s'{00C2EC}", Nome(playerid), Comando);
  3519. SendClientMessageToAll(AZUL_CLARO, String);
  3520. return 1;
  3521. }
  3522.  
  3523. CMD:daradmin(playerid, params[])
  3524. {
  3525. if(!IsPlayerAdmin(playerid) && PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
  3526. if(sscanf(params, "ud", ID, nivel)) return SendClientMessage(playerid, CINZA, "Use /daradmin [ID] [nivel]"), SendClientMessage(playerid, CINZA, "Use o comando para oferecer admin para algum jogador");
  3527. if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
  3528. if(nivel < 0 || nivel > 5) return SendClientMessage(playerid, BRANCO, "[ERRO] Nivel invalido, use de 0 a 5");
  3529. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Ofereceu Admin Nivel %d de Admin para %s.\r\n", Nome(playerid), nivel, Nome(ID));
  3530. SendClientMessageToAll(VERDE_AGUA, String);
  3531. format(String, sizeof(String), "{FFFFFF}O Admin {1B95E0}%s{FFFFFF} está lhe oferencendo admin nivel {1b95E0}%d", Nome(playerid), nivel);
  3532. ShowPlayerDialog(ID, DIALOG_ADM, DIALOG_STYLE_MSGBOX, "Admin", String, "Aceitar", "Recusar");
  3533. return 1;
  3534. }
  3535.  
  3536. CMD:setaradmin(playerid, params[])
  3537. {
  3538. new l;
  3539. if(!NivelRequerido(playerid, 5)) return 1;
  3540. if(sscanf(params, "ui", ID, l)) return MensagemDupla(playerid, "Use /setaradmin [ID] [Nivel]", "Use o comando para definir o admin de algum player");
  3541. SetarDado(ID, Admin, l);
  3542. if(l == (0)) {
  3543. TirarAdmin(ID);
  3544. }
  3545. MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} setou o admin de %s para %d.", Nome(playerid), Nome(ID), l);
  3546. return 1;
  3547. }
  3548.  
  3549. CMD:setargravidade(playerid, params[])
  3550. {
  3551. new Gravidade;
  3552. if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
  3553. if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3554. if(sscanf(params, "i", Gravidade )) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setargravidade [Gravidade]"), SendClientMessage(playerid, CINZA, "Use o comando para alterar a gravidade do server");
  3555. format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Setou a gravidade do server para %d.", Nome(playerid), Gravidade);
  3556. SendClientMessageToAll(VERDE_AGUA, String);
  3557. SetGravity(Gravidade);
  3558. return 1;
  3559. }
  3560.  
  3561. CMD:seradmin(playerid, params[])
  3562. {
  3563. if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, CINZA, "Logue-se na Rcon para usar este comando.");
  3564. SetarDado(playerid, Admin, 5);
  3565. DarAdmin(playerid, 5);
  3566. Msg(playerid, CINZA, "Bem Vindo a Administração.");
  3567. return 1;
  3568. }
  3569.  
  3570. public TempoPreso(playerid)
  3571. {
  3572. PlayerDados[playerid][Preso] --;
  3573. if(PlayerDados[playerid][Preso] == 0)
  3574. {
  3575. SetPlayerHealth(playerid, 0);
  3576. SendClientMessage(playerid, VERDE, "Você está livre da cadeia!");
  3577. KillTimer(TimerPreso);
  3578. }
  3579. return 1;
  3580. }
  3581.  
  3582. public CriarLogs()
  3583. {
  3584. if(!LogExistir("LLADMIN/Logs/NovoAdm.log"))
  3585. {
  3586. CriarLog("LLADMIN/Logs/NovoAdm.log");
  3587. }
  3588. if(!LogExistir("LLADMIN/Logs/Kickados.log"))
  3589. {
  3590. CriarLog("LLADMIN/Logs/Kickados.log");
  3591. }
  3592. if(!LogExistir("LLADMIN/Logs/Tapas.log"))
  3593. {
  3594. CriarLog("LLADMIN/Logs/Tapas.log");
  3595. }
  3596. if(!LogExistir("LLADMIN/Logs/Chatadm.log"))
  3597. {
  3598. CriarLog("LLADMIN/Logs/Chatadm.log");
  3599. }
  3600. if(!LogExistir("LLADMIN/Logs/Banidos.log"))
  3601. {
  3602. CriarLog("LLADMIN/Logs/Banidos.log");
  3603. }
  3604. if(!LogExistir("LLADMIN/Logs/Desbanidos.log"))
  3605. {
  3606. CriarLog("LLADMIN/Logs/Desbanidos.log");
  3607. }
  3608. if(!LogExistir("LLADMIN/Logs/Advertidos.log"))
  3609. {
  3610. CriarLog("LLADMIN/Logs/Advertidos.log");
  3611. }
  3612. if(!LogExistir("LLADMIN/Logs/Congelados.log"))
  3613. {
  3614. CriarLog("LLADMIN/Logs/Congelados.log");
  3615. }
  3616. if(!LogExistir("LLADMIN/Logs/Calados.log"))
  3617. {
  3618. CriarLog("LLADMIN/Logs/Calados.log");
  3619. }
  3620. if(!LogExistir("LLADMIN/Logs/Presos.log"))
  3621. {
  3622. CriarLog("LLADMIN/Logs/Presos.log");
  3623. }
  3624. if(!LogExistir("LLADMIN/Logs/NovoNome.log"))
  3625. {
  3626. CriarLog("LLADMIN/Logs/NovoNome.log");
  3627. }
  3628. if(!LogExistir("LLADMIN/Logs/Crashados.log"))
  3629. {
  3630. CriarLog("LLADMIN/Logs/Crashados.log");
  3631. }
  3632. if(!LogExistir("LLADMIN/Logs/BanirIp.log"))
  3633. {
  3634. CriarLog("LLADMIN/Logs/BanirIp.log");
  3635. }
  3636. if(!LogExistir("LLADMIN/Logs/DesbanirIp.log"))
  3637. {
  3638. CriarLog("LLADMIN/Logs/DesbanirIp.log");
  3639. }
  3640. if(!LogExistir("LLADMIN/Logs/Fodidos.txt"))
  3641. {
  3642. CriarLog("LLADMIN/Logs/Fodidos.txt");
  3643. }
  3644. if(!LogExistir("LLADMIN/Logs/Nome_Server.log"))
  3645. {
  3646. CriarLog("LLADMIN/Logs/Nome_Server.log");
  3647. }
  3648. if(!LogExistir("LLADMIN/Logs/Nome_GM.log"))
  3649. {
  3650. CriarLog("LLADMIN/Logs/Nome_GM.log");
  3651. }
  3652. if(!LogExistir("LLADMIN/Logs/Relatorios.log"))
  3653. {
  3654. CriarLog("LLADMIN/Logs/Relatorios.log");
  3655. }
  3656. print("Logs Criados/Carregados com sucesso.");
  3657. return 1;
  3658. }
  3659.  
  3660. public LiberarKit(playerid)
  3661. {
  3662. PlayerDados[playerid][PegouKit] = false;
  3663. return 1;
  3664. }
  3665.  
  3666. public FecharPortao()
  3667. {
  3668. MoveObject(PortaoHQ, 2204.39990234,1846.00000000,12.60000038, 2, 0, 0, 90);
  3669. return 1;
  3670. }
  3671. public MensagensRandom()
  3672. {
  3673. new randmsg = random(sizeof(Mensagens));
  3674. new randcor = random(sizeof(Cores));
  3675. format(String, sizeof(String), "%s%s",Cores[randcor], Mensagens[randmsg]);
  3676. SendClientMessageToAll(-1, String);
  3677. return 1;
  3678. }
  3679.  
  3680. public DiminuirTempo()
  3681. {
  3682. if(time == 0)
  3683. {
  3684. KillTimer(TimerCont);
  3685. GameTextForAll("~r~Go Go Go", 1000, 6);
  3686. return 1;
  3687. }
  3688. format(String, sizeof(String), "~g~%d", time);
  3689. GameTextForAll(String, 1000, 6);
  3690. time--;
  3691. return 1;
  3692. }
  3693.  
  3694. stock SalvarDados(playerid)
  3695. {
  3696. new ip[25];
  3697. GetPlayerIp(playerid, ip, sizeof(ip));
  3698. format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
  3699. DOF2_SetInt(StringContas, "Matou", PlayerDados[playerid][Matou]);
  3700. DOF2_SetInt(StringContas, "Morreu", PlayerDados[playerid][Morreu]);
  3701. DOF2_SetInt(StringContas, "Grana", GetPlayerMoney(playerid));
  3702. DOF2_SetInt(StringContas, "Advertencias", PlayerDados[playerid][Advertencias]);
  3703. DOF2_SetInt(StringContas, "Preso", PlayerDados[playerid][Preso]);
  3704. DOF2_SetString(StringContas, "IP", ip);
  3705. new str[50];
  3706. format(str, 50, "LLADMIN/Admins/%s.sav", Nome(playerid));
  3707. if(PlayerDados[playerid][Vip] == false)
  3708. {
  3709. if(DOF2_IsSet("LLADMIN/Vips.vip", Nome(playerid)))
  3710. {
  3711. DOF2_Unset("LLADMIN/Vips.vip", Nome(playerid));
  3712. }
  3713. }
  3714. if(PlayerDados[playerid][Helper] == false)
  3715. {
  3716. if(DOF2_IsSet("LLADMIN/Helpers.hel", Nome(playerid)))
  3717. {
  3718. DOF2_Unset("LLADMIN/Helpers.hel", Nome(playerid));
  3719. }
  3720. }
  3721. if(PlayerDados[playerid][Vip] == true)
  3722. {
  3723. DOF2_SetBool(str, "Vip", true);
  3724. }
  3725. if(PlayerDados[playerid][Helper] == true)
  3726. {
  3727. DOF2_SetBool(str, "Helper", true);
  3728. }
  3729. if(PlayerDados[playerid][Admin] > 0)
  3730. {
  3731. format(StringContas, sizeof StringContas, "LLADMIN/Admins/%s.sav", Nome(playerid));
  3732. DOF2_SetInt(str, "Admin", PlayerDados[playerid][Admin]);
  3733. }
  3734. DOF2_SaveFile();
  3735. return 1;
  3736. }
  3737.  
  3738. stock Nome(playerid)
  3739. {
  3740. new pNome[MAX_PLAYER_NAME];
  3741. GetPlayerName(playerid, pNome, 24);
  3742. return pNome;
  3743. }
  3744.  
  3745. stock Kickar(playerid, admin[], razao[])
  3746. {
  3747. if(!DOF2_FileExists("LLADMIN/Kickados.txt")) DOF2_CreateFile("LLADMIN/Kickados.txt");
  3748. new IP[20];
  3749. GetPlayerIp(playerid, IP, 20);
  3750. format(String, sizeof(String), " IP = %d - Admin = %s - Razao = %s", IP, admin, razao);
  3751. DOF2_SetString("LLADMIN/Kickados.txt", Nome(playerid), String);
  3752. Kick(playerid);
  3753. return 1;
  3754. }
  3755.  
  3756. stock PosicaoFrentePlayer( playerid, &Float:x, &Float:y, Float:distance)
  3757. {
  3758. new
  3759. Float:a
  3760. ;
  3761. GetPlayerPos( playerid, x, y, a);
  3762. GetPlayerFacingAngle( playerid, a);
  3763. if(GetPlayerVehicleID( playerid ))
  3764. {
  3765. GetVehicleZAngle(GetPlayerVehicleID( playerid ), a);
  3766. }
  3767. x += (distance * floatsin(-a, degrees));
  3768. y += (distance * floatcos(-a, degrees));
  3769. }
  3770.  
  3771. stock MensagemDupla(playerid, msg1[], msg2[])
  3772. {
  3773. SendClientMessage(playerid, CINZA, msg1);
  3774. SendClientMessage(playerid, CINZA, msg2);
  3775. return 1;
  3776. }
  3777.  
  3778. stock NivelRequerido(playerid, lvl)
  3779. {
  3780. if(PlayerDados[playerid][Admin] < lvl)
  3781. {
  3782. format(String, sizeof(String), "Você precisa ser admin nivel %d para usar este comando!", lvl);
  3783. SendClientMessage(playerid, BRANCO, String);
  3784. return 0;
  3785. }
  3786. if(PlayerDados[playerid][Trabalhando] == false)
  3787. {
  3788. SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
  3789. return 0;
  3790. }
  3791. return 1;
  3792. }
  3793.  
  3794. stock CriarLog(const File[])
  3795. {
  3796. if(fexist(File))
  3797. {
  3798. printf("Utilize EscreverLog(\"arquivo\", \"Mensagem\"); para escrever em um log existente.");
  3799. return 0;
  3800. }
  3801. new File:Arquivo = fopen(File, io_write);
  3802. fclose(Arquivo);
  3803. return 1;
  3804. }
  3805.  
  3806. stock EscreverLog(const File[], string[])
  3807. {
  3808. if(!fexist(File))
  3809. {
  3810. printf("Utilize CriarLog(\"arquivo\"); para criar o Log e escrever nele.");
  3811. return 0;
  3812. }
  3813. new celulas[ 300 ];
  3814. new a, m, d, h, mi, s;
  3815. getdate(a, m, d);
  3816. gettime(h,mi,s);
  3817. format(celulas, sizeof(celulas), "(%02d/%02d/%d)[%02d:%02d:%02d] %s\r\n",d,m,a,h,mi,s, string);
  3818. new File:Arquivo = fopen(File, io_append);
  3819. fwrite(Arquivo, celulas);
  3820. fclose(Arquivo);
  3821. return 1;
  3822. }
  3823.  
  3824. stock DeletarLog(const File[])
  3825. {
  3826. if(!fexist(File))
  3827. {
  3828. printf("Esse arquivo não existe, utilize CriarLog(\"arquivo\"");
  3829. return 0;
  3830. }
  3831. fremove(File);
  3832. return 1;
  3833. }
  3834.  
  3835. stock TextFundo(playerid)
  3836. {
  3837. new RandFundo = random(3);
  3838. if(RandFundo == 0)
  3839. {
  3840. Inicio[playerid] = TextDrawCreate(-0.500, -0.500, "loadsc1:loadsc1");
  3841. TextDrawFont(Inicio[playerid], 4);
  3842. TextDrawTextSize(Inicio[playerid], 641.500, 449.500);
  3843. TextDrawColor(Inicio[playerid], -1);
  3844. }
  3845. else if(RandFundo == 1)
  3846. {
  3847. Inicio[playerid] = TextDrawCreate(-0.500, -0.500, "loadsc2:loadsc2");
  3848. TextDrawFont(Inicio[playerid], 4);
  3849. TextDrawTextSize(Inicio[playerid], 641.500, 449.500);
  3850. TextDrawColor(Inicio[playerid], -1);
  3851. }
  3852. else if(RandFundo == 2)
  3853. {
  3854. Inicio[playerid] = TextDrawCreate(-0.500, -0.500, "loadsc3:loadsc3");
  3855. TextDrawFont(Inicio[playerid], 4);
  3856. TextDrawTextSize(Inicio[playerid], 641.500, 449.500);
  3857. TextDrawColor(Inicio[playerid], -1);
  3858. }
  3859. else if(RandFundo == 3)
  3860. {
  3861. Inicio[playerid] = TextDrawCreate(-0.500, -0.500, "loadsc4:loadsc4");
  3862. TextDrawFont(Inicio[playerid], 4);
  3863. TextDrawTextSize(Inicio[playerid], 641.500, 449.500);
  3864. TextDrawColor(Inicio[playerid], -1);
  3865. }
  3866. TextDrawShowForPlayer(playerid, Inicio[playerid]);
  3867. return 1;
  3868. }
  3869.  
  3870. stock DarAdmin(playerid, niv) {
  3871. format(StringContas, sizeof StringContas, "LLADMIN/Admins/%s.sav", Nome(playerid));
  3872. if(!DOF2_FileExists(StringContas)) {
  3873. DOF2_CreateFile(StringContas);
  3874. }
  3875. DOF2_SetInt(StringContas, "Admin", niv);
  3876. SalvarDados(playerid);
  3877. printf("%s novo admin nivel %d", Nome(playerid), niv);
  3878. return 1;
  3879. }
  3880.  
  3881. stock TirarAdmin(playerid) {
  3882. format(StringContas, sizeof StringContas, "LLADMIN/Admins/%s.sav", Nome(playerid));
  3883. if(!DOF2_FileExists(StringContas))
  3884. return printf("Conta %s nao existe.", Nome(playerid));
  3885. DOF2_Unset(StringContas, "Admin");
  3886. printf("admin retirado");
  3887. return 1;
  3888. }
  3889.  
  3890. stock DarHelper(playerid) {
  3891. format(StringContas, sizeof StringContas, "LLADMIN/Admins/%s.sav", Nome(playerid));
  3892. if(!DOF2_FileExists(StringContas)) {
  3893. DOF2_CreateFile(StringContas);
  3894. }
  3895. DOF2_SetBool(StringContas, "Helper", true);
  3896. SalvarDados(playerid);
  3897. printf("%s novo admin nivel %d", Nome(playerid));
  3898. return 1;
  3899. }
  3900.  
  3901. stock TirarHelper(playerid) {
  3902. format(StringContas, sizeof StringContas, "LLADMIN/Admins/%s.sav", Nome(playerid));
  3903. if(!DOF2_FileExists(StringContas))
  3904. return printf("Conta %s nao existe.", Nome(playerid));
  3905. DOF2_Unset(StringContas, "Helper");
  3906. printf("helper tirado");
  3907. return 1;
  3908. }
  3909.  
  3910. stock DarVip(playerid) {
  3911. format(StringContas, sizeof StringContas, "LLADMIN/Admins/%s.sav", Nome(playerid));
  3912. if(!DOF2_FileExists(StringContas)) {
  3913. DOF2_CreateFile(StringContas);
  3914. }
  3915. DOF2_SetBool(StringContas, "Vip", true);
  3916. SalvarDados(playerid);
  3917. printf("%s novo admin nivel %d", Nome(playerid));
  3918. return 1;
  3919. }
  3920.  
  3921. stock TirarVip(playerid) {
  3922. format(StringContas, sizeof StringContas, "LLADMIN/Admins/%s.sav", Nome(playerid));
  3923. if(!DOF2_FileExists(StringContas))
  3924. return printf("Conta %s nao existe.", Nome(playerid));
  3925. DOF2_Unset(StringContas, "Vip");
  3926. printf("vip tirado");
  3927. return 1;
  3928. }
  3929.  
  3930. stock MensagemParaAdmins(mensagem[])
  3931. {
  3932. for(new i = 0; i < MAX_PLAYERS; ++i)
  3933. {
  3934. if(PlayerDados[i][Admin] > 0)
  3935. {
  3936. Msg(i, ROSA_CHOQUE, mensagem);
  3937. }
  3938. }
  3939. return 1;
  3940. }
  3941.  
  3942. //SSCANF NUNCA MECHA NESSA PARTE:
  3943. stock sscanf(string[], format[], {Float,_}:...)
  3944. {
  3945. #if defined isnull
  3946. if (isnull(string))
  3947. #else
  3948. if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
  3949. #endif
  3950. {
  3951. return format[0];
  3952. }
  3953. #pragma tabsize 4
  3954. new
  3955. formatPos = 0,
  3956. stringPos = 0,
  3957. paramPos = 2,
  3958. paramCount = numargs(),
  3959. delim = ' ';
  3960. while (string[stringPos] && string[stringPos] <= ' ')
  3961. {
  3962. stringPos++;
  3963. }
  3964. while (paramPos < paramCount && string[stringPos])
  3965. {
  3966. switch (format[formatPos++])
  3967. {
  3968. case '\0':
  3969. {
  3970. return 0;
  3971. }
  3972. case 'i', 'd':
  3973. {
  3974. new
  3975. neg = 1,
  3976. num = 0,
  3977. ch = string[stringPos];
  3978. if (ch == '-')
  3979. {
  3980. neg = -1;
  3981. ch = string[++stringPos];
  3982. }
  3983. do
  3984. {
  3985. stringPos++;
  3986. if ('0' <= ch <= '9')
  3987. {
  3988. num = (num * 10) + (ch - '0');
  3989. }
  3990. else
  3991. {
  3992. return -1;
  3993. }
  3994. }
  3995. while ((ch = string[stringPos]) > ' ' && ch != delim);
  3996. setarg(paramPos, 0, num * neg);
  3997. }
  3998. case 'h', 'x':
  3999. {
  4000. new
  4001. num = 0,
  4002. ch = string[stringPos];
  4003. do
  4004. {
  4005. stringPos++;
  4006. switch (ch)
  4007. {
  4008. case 'x', 'X':
  4009. {
  4010. num = 0;
  4011. continue;
  4012. }
  4013. case '0' .. '9':
  4014. {
  4015. num = (num << 4) | (ch - '0');
  4016. }
  4017. case 'a' .. 'f':
  4018. {
  4019. num = (num << 4) | (ch - ('a' - 10));
  4020. }
  4021. case 'A' .. 'F':
  4022. {
  4023. num = (num << 4) | (ch - ('A' - 10));
  4024. }
  4025. default:
  4026. {
  4027. return -1;
  4028. }
  4029. }
  4030. }
  4031. while ((ch = string[stringPos]) > ' ' && ch != delim);
  4032. setarg(paramPos, 0, num);
  4033. }
  4034. case 'c':
  4035. {
  4036. setarg(paramPos, 0, string[stringPos++]);
  4037. }
  4038. case 'f':
  4039. {
  4040.  
  4041. new changestr[16], changepos = 0, strpos = stringPos;
  4042. while(changepos < 16 && string[strpos] && string[strpos] != delim)
  4043. {
  4044. changestr[changepos++] = string[strpos++];
  4045. }
  4046. changestr[changepos] = '\0';
  4047. setarg(paramPos,0,_:floatstr(changestr));
  4048. }
  4049. case 'p':
  4050. {
  4051. delim = format[formatPos++];
  4052. continue;
  4053. }
  4054. case '\'':
  4055. {
  4056. new
  4057. end = formatPos - 1,
  4058. ch;
  4059. while ((ch = format[++end]) && ch != '\'') {}
  4060. if (!ch)
  4061. {
  4062. return -1;
  4063. }
  4064. format[end] = '\0';
  4065. if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
  4066. {
  4067. if (format[end + 1])
  4068. {
  4069. return -1;
  4070. }
  4071. return 0;
  4072. }
  4073. format[end] = '\'';
  4074. stringPos = ch + (end - formatPos);
  4075. formatPos = end + 1;
  4076. }
  4077. case 'u':
  4078. {
  4079. new
  4080. end = stringPos - 1,
  4081. id = 0,
  4082. bool:num = true,
  4083. ch;
  4084. while ((ch = string[++end]) && ch != delim)
  4085. {
  4086. if (num)
  4087. {
  4088. if ('0' <= ch <= '9')
  4089. {
  4090. id = (id * 10) + (ch - '0');
  4091. }
  4092. else
  4093. {
  4094. num = false;
  4095. }
  4096. }
  4097. }
  4098. if (num && IsPlayerConnected(id))
  4099. {
  4100. setarg(paramPos, 0, id);
  4101. }
  4102. else
  4103. {
  4104. #if !defined foreach
  4105. #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
  4106. #define __SSCANF_FOREACH__
  4107. #endif
  4108. string[end] = '\0';
  4109. num = false;
  4110. new
  4111. name[MAX_PLAYER_NAME];
  4112. id = end - stringPos;
  4113. foreach (Player, playerid)
  4114. {
  4115. GetPlayerName(playerid, name, sizeof (name));
  4116. if (!strcmp(name, string[stringPos], true, id))
  4117. {
  4118. setarg(paramPos, 0, playerid);
  4119. num = true;
  4120. break;
  4121. }
  4122. }
  4123. if (!num)
  4124. {
  4125. setarg(paramPos, 0, INVALID_PLAYER_ID);
  4126. }
  4127. string[end] = ch;
  4128. #if defined __SSCANF_FOREACH__
  4129. #undef foreach
  4130. #undef __SSCANF_FOREACH__
  4131. #endif
  4132. }
  4133. stringPos = end;
  4134. }
  4135. case 's', 'z':
  4136. {
  4137. new
  4138. i = 0,
  4139. ch;
  4140. if (format[formatPos])
  4141. {
  4142. while ((ch = string[stringPos++]) && ch != delim)
  4143. {
  4144. setarg(paramPos, i++, ch);
  4145. }
  4146. if (!i)
  4147. {
  4148. return -1;
  4149. }
  4150. }
  4151. else
  4152. {
  4153. while ((ch = string[stringPos++]))
  4154. {
  4155. setarg(paramPos, i++, ch);
  4156. }
  4157. }
  4158. stringPos--;
  4159. setarg(paramPos, i, '\0');
  4160. }
  4161. default:
  4162. {
  4163. continue;
  4164. }
  4165. }
  4166. while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
  4167. {
  4168. stringPos++;
  4169. }
  4170. while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
  4171. {
  4172. stringPos++;
  4173. }
  4174. paramPos++;
  4175. }
  4176. do
  4177. {
  4178. if ((delim = format[formatPos++]) > ' ')
  4179. {
  4180. if (delim == '\'')
  4181. {
  4182. while ((delim = format[formatPos++]) && delim != '\'') {}
  4183. }
  4184. else if (delim != 'z')
  4185. {
  4186. return delim;
  4187. }
  4188. }
  4189. }
  4190. while (delim > ' ');
  4191. return 0;
  4192. }
  4193.  
  4194. // Striker Samp - Tudo Para Seu Servidor SA-MP
  4195. // www.strikersamp.blogspot.com
Advertisement
Add Comment
Please, Sign In to add comment