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