Advertisement
Lucas_Alemao

LL Admin V1.7 By Lucas_Alemao

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