View difference between Paste ID: AYRh8ep0 and iEEhp50x
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
22
Falta fazer: OnPlayerClickPlayer
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]);
876+
			#if USAR_TEXT == 1
877
				TextDrawDestroy(Inicio[playerid]);
878
			#endif
879
			return 1;
880
		}
881
		else
882
		{
883
		    SendClientMessage(playerid, VERMELHO, "Você não quis se registrar e por isso foi kickado!");
884
			Kick(playerid);
885
			return 1;
886
		}
887
	}
888
	if(dialogid == DIALOG_LOGIN)
889
	{
890
	    if(response)
891
	    {
892
	        if(!strlen(inputtext))
893
	        {
894
	            format(String, sizeof(String), "{F1FC14}Conta: %s\n{28FC14}Registrada.\n\n{14F1FC}Digite sua senha para Logar", Nome(playerid));
895
		    	ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "{FC14E9}Logando...", String, "Logar", "Sair");
896
	            SendClientMessage(playerid, VERMELHO, "Digite sua senha para se logar ¬¬");
897
	            return 1;
898
			}
899
			format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
900
			if(strcmp(inputtext, DOF2_GetString(StringContas, "Senha"), true))
901
			{
902
                format(String, sizeof(String), "{F1FC14}Conta: %s\n{28FC14}Registrada.\n\n{14F1FC}Digite sua senha para Logar", Nome(playerid));
903
		    	ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "{FC14E9}Logando...", String, "Logar", "Sair");
904
                SendClientMessage(playerid, VERMELHO_CLARO, "Senha incorreta!");
905
				return 1;
906
			}
907
			else
908
			{
909
				PlayerDados[playerid][Matou] = DOF2_GetInt(StringContas, "Matou");
910
				PlayerDados[playerid][Morreu] = DOF2_GetInt(StringContas, "Morreu");
911
				//PlayerDados[playerid][Admin] = DOF2_GetInt(StringContas, "Admin");
912
				if(DOF2_IsSet("LLADMIN/Admins.adm", Nome(playerid)))
913
				{
914
					PlayerDados[playerid][Admin] = DOF2_GetInt("LLADMIN/Admins.adm", Nome(playerid));
915
				}
916
				PlayerDados[playerid][Advertencias] = DOF2_GetInt(StringContas, "Advertencias");
917
				GivePlayerMoney(playerid, DOF2_GetInt(StringContas, "Grana"));
918
				PlayerDados[playerid][Preso] = DOF2_GetInt(StringContas, "Preso");
919
				//PlayerDados[playerid][Helper] = DOF2_GetBool(StringContas, "Helper");
920
				if(DOF2_IsSet("LLADMIN/Helpers.hel", Nome(playerid)))
921
				{
922
			    	PlayerDados[playerid][Helper] = DOF2_GetBool("LLADMIN/Helpers.hel", Nome(playerid));
923
				}
924
				if(DOF2_IsSet("LLADMIN/Vips.vip", Nome(playerid)))
925
				{
926
			    	PlayerDados[playerid][Vip] = DOF2_GetBool("LLADMIN/Vips.vip", Nome(playerid));
927
				}
928
				//PlayerDados[playerid][Vip] = DOF2_GetBool(StringContas, "Vip");
929
				SendClientMessage(playerid, VERDE_CLARO, "Logado Com sucesso!");
930
				#if USAR_TEXT == 1
931
					TextDrawDestroy(Inicio[playerid]);
932
				#endif
933
				if(PlayerDados[playerid][Admin] > 0)
934
				{
935
					format(String, sizeof(String), "Logado de Admin Nível %d", PlayerDados[playerid][Admin]);
936
					SendClientMessage(playerid, AZUL_CLARO, String);
937
					format(String, sizeof(String), "~w~Admin ~g~%s ~y~Online", Nome(playerid));
938
					GameTextForAll(String, 1000, 1);
939
					PlayerDados[playerid][Trabalhando] = true;
940
					SendClientMessage(playerid, AZUL_CLARO, "Você está trabalhando, para jogar use /jogar");
941
					SetPlayerColor(playerid, 0x24E9FFFF);
942
					SetPlayerHealth(playerid, 999999);
943
					return 1;
944
				}
945
				return 1;
946
			}
947
		}
948
		else
949
		{
950
		    SendClientMessage(playerid, VERMELHO, "Você não quis se Logar e por isso foi kickado!");
951
			Kick(playerid);
952
			return 1;
953
		}
954
	}
955
	if(dialogid == DIALOG_BANIDO)
956
	{
957
	    if(response)
958
	    {
959
	        SendClientMessage(playerid, BRANCO, "Kickado");
960
	        Kick(playerid);
961
		}
962
		return 1;
963
	}
964
	if(dialogid == DIALOG_ADM)
965
	{
966
	    if(response)
967
	    {
968
			format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} é o mais novo admin do server!", Nome(playerid));
969
			SendClientMessageToAll(AZUL_CLARO, String);
970
			EscreverLog("LLADMIN/Logs/NovoAdm.log", String);
971
			SendClientMessage(playerid, VERDE_CLARO, "Use /la para ver seus comandos de Admin.");
972
			SetarDado(playerid, Admin, nivel);
973
			DOF2_SetInt("LLADMIN/Admins.adm", Nome(playerid), nivel);
974
		}
975
		if(!response)
976
		{
977
		    format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} recusou ser admin do server!", Nome(playerid));
978
		    SendClientMessageToAll(AZUL_CLARO, String);
979
		}
980
		return 1;
981
	}
982
	if(dialogid == DIALOG_HELPER)
983
	{
984
	    if(!response)
985
			return format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} recusou ser Helper do server.", Nome(playerid)), SendClientMessageToAll(AZUL_CLARO, String);
986
	    format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} é o mais novo Helper do server", Nome(playerid));
987
		SendClientMessageToAll(AZUL_CLARO, String);
988
		SendClientMessage(playerid, VERDE_CLARO, "Use /la para ver seus comandos de Helper.");
989
		SalvarDados(playerid);
990
 		SetarDado(playerid, Helper, true);
991
		DOF2_SetBool("LLADMIN/Helpers.hel", Nome(playerid), true);
992
		return 1;
993
	}
994
	if(dialogid == DIALOG_MUSICAS)
995
	{
996
	    if(!response) return 0;
997
	    if(listitem == 0)
998
	    {
999
	        MusicaInicial = "nada";
1000
	        return 1;
1001
		}
1002
	    if(listitem == 1)
1003
	    {
1004
	        MusicaInicial = Musica[1];
1005
	        return 1;
1006
		}
1007
		if(listitem == 2)
1008
	    {
1009
	        MusicaInicial = Musica[2];
1010
	        return 1;
1011
		}
1012
		if(listitem == 3)
1013
	    {
1014
	        MusicaInicial = Musica[3];
1015
	        return 1;
1016
		}
1017
		if(listitem == 4)
1018
	    {
1019
	        MusicaInicial = Musica[4];
1020
	        return 1;
1021
		}
1022
	}
1023
	if(dialogid == DIALOG_SENHANOVA)
1024
	{
1025
	    new StrConta[100];
1026
	    format(StrConta,sizeof(StrConta), "LLADMIN/Contas/%s.txt", Nome(playerid));
1027
		if(!strlen(inputtext))
1028
		{
1029
			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"));
1030
			ShowPlayerDialog(playerid, DIALOG_SENHANOVA, DIALOG_STYLE_INPUT, "{1BE084}Nova Senha", String, "Mudar", "Cancelar");
1031
			return 1;
1032
		}
1033
		DOF2_SetString(StrConta, "Senha", inputtext);
1034
		format(String, sizeof(String), "{12FF05}Sua nova senha é {25E01B}'%s'", inputtext);
1035
		SendClientMessage(playerid, -1, String);
1036
		SalvarDados(playerid);
1037
	}
1038
	return 0;
1039
}
1040
1041
//SISTEMA DE VIPS
1042
#if USAR_SISTEMA_VIP == 1
1043
	CMD:v(playerid, params[])
1044
	{
1045
	    new t[128];
1046
	    if(PlayerDados[playerid][Vip] == false) return SendClientMessage(playerid, BRANCO, "Você não é um jogador VIP!");
1047
	    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.");
1048
	    for(new i = 0; i < MAX_PLAYERS; ++i)
1049
	    {
1050
	        if(PlayerDados[i][Vip] == true)
1051
	        {
1052
	            format(String, sizeof(String), "VIP %s: %s", Nome(playerid), t);
1053
	            SendClientMessage(i, VERDE_CLARO, String);
1054
			}
1055
		}
1056
		return 1;
1057
	}
1058
	CMD:kitvip(playerid, params[])
1059
	{
1060
	    if(!PlayerDados[playerid][Vip]) return SendClientMessage(playerid, BRANCO, "Você não é um jogador VIP!");
1061
	    MensagemFormatadaParaTodos(AMARELO, "O Jogador %s pegou um KitVip", Nome(playerid));
1062
	    GivePlayerWeapon(playerid, 4, 1); //FACA
1063
	    GivePlayerWeapon(playerid, 16, 200); //GRANADA
1064
	    GivePlayerWeapon(playerid, 24, 300); //DESERT EAGLE
1065
	    GivePlayerWeapon(playerid, 26, 300); //SAWNOFF
1066
	    GivePlayerWeapon(playerid, 29, 500); //MP5
1067
	    GivePlayerWeapon(playerid, 30, 500); //AK-47
1068
	    GivePlayerWeapon(playerid, 34, 200); //SNIPER
1069
	    GivePlayerWeapon(playerid, 39, 100); //EXPLOSIVO
1070
	    PlayerDados[playerid][PegouKit] = true;
1071
	    TimerKit = SetTimerEx("LiberarKit", 30*1000, false, "i", playerid);
1072
	    return 1;
1073
	}
1074
	CMD:vips(playerid, params[])
1075
	{
1076
	    new IsVip;
1077
	    SendClientMessage(playerid, VERDE_CLARO, "Vips Online:");
1078
	    for(new i = 0; i < MAX_PLAYERS; ++i)
1079
	    {
1080
	        if(PlayerDados[i][Vip])
1081
	        {
1082
				format(String, sizeof(String), "%s", Nome(i));
1083
				SendClientMessage(playerid, BRANCO, String);
1084
				IsVip++;
1085
			}
1086
		}
1087
		if(IsVip == 0)
1088
		{
1089
		    SendClientMessage(playerid, CINZA, "Nenhum VIP online.");
1090
		}
1091
		IsVip = 0;
1092
		return 1;
1093
	}
1094
	CMD:cc(playerid, params[])
1095
	{
1096
		new
1097
	    	Carro,
1098
		    Cor1,
1099
		    Cor2;
1100
		if(!PlayerDados[playerid][Vip]) return SendClientMessage(playerid, BRANCO, "Você precisa ser Vip para usar este comando!");
1101
		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.");
1102
		new Float:X,
1103
		    Float:Y,
1104
		    Float:X1,
1105
	    	Float:Y1,
1106
		    Float:Z,
1107
		    Float:A;
1108
		PosicaoFrentePlayer(playerid, X, Y, 3);
1109
		GetPlayerPos(playerid, X1, Y1, Z);
1110
		GetPlayerFacingAngle(playerid, A);
1111
		DestroyVehicle(CarroDono[playerid]);
1112
		CarroDono[playerid] = CreateVehicle(Carro, X, Y, Z, A+90, Cor1, Cor2, 15);
1113
		format(String, sizeof(String), "Carro VIP de {FFFF00}%s", Nome(playerid));
1114
		DonoCarro[playerid] = Create3DTextLabel(String, VERDE_CLARO, X, Y, Z+1, 30, 0, 1);
1115
		Attach3DTextLabelToVehicle(DonoCarro[playerid], CarroDono[playerid], 0, 0, 0);
1116
		PutPlayerInVehicle(playerid, CarroDono[playerid], 0);
1117
		return 1;
1118
	}
1119
#endif
1120
1121
CMD:sim(playerid, params[])
1122
{
1123
	if(Enquete[Criada] == false) return SendClientMessage(playerid, CINZA, "Nenhuma enquete aberta!");
1124
	Enquete[VotoSim]++;
1125
	SendClientMessage(playerid, AMARELO, "Voto computado com sucesso.");
1126
	return 1;
1127
}
1128
1129
CMD:nao(playerid, params[])
1130
{
1131
	if(Enquete[Criada] == false) return SendClientMessage(playerid, CINZA, "Nenhuma enquete aberta!");
1132
	Enquete[VotoNao]++;
1133
	SendClientMessage(playerid, AMARELO, "Voto computado com sucesso.");
1134
	return 1;
1135
}
1136
1137
CMD:relatorio(playerid, params[])
1138
{
1139
	new Texto[128];
1140
	if(sscanf(params, "s", Texto)) return SendClientMessage(playerid, BRANCO, "[LL ADMIN] Use /relatorio [texto] para mandar uma mensagem para os admins online");
1141
	new strel[256];
1142
	format(strel, sizeof(strel), "Relatorio de %s: %s\r\n", Nome(playerid), Texto);
1143
	EscreverLog("LLADMIN/Logs/Relatorios.log", strel);
1144
	if(PlayerDados[playerid][Vip] == true)
1145
	{
1146
	    for(new i = 0; i < MAX_PLAYERS; i++)
1147
		{
1148
	    	if((PlayerDados[i][Admin] > 0) || (PlayerDados[i][Helper]))
1149
		    {
1150
		        format(String, sizeof(String), "Relatorio VIP de %s [ID: %d]: %s", Nome(playerid), playerid, Texto);
1151
	    	    SendClientMessage(i, VERDE, String);
1152
			}
1153
		}
1154
		SendClientMessage(playerid, VERDE, "Seu relatorio VIP foi enviado com sucesso!");
1155
		return 1;
1156
	}
1157
	for(new i = 0; i < MAX_PLAYERS; i++)
1158
	{
1159
	    if((PlayerDados[i][Admin] > 0) || (PlayerDados[i][Helper]))
1160
	    {
1161
	        format(String, sizeof(String), "Relatorio de %s [ID: %d]: %s", Nome(playerid), playerid, Texto);
1162
	        SendClientMessage(i, AMARELO, String);
1163
		}
1164
	}
1165
	SendClientMessage(playerid, AMARELO, "Seu relatorio foi enviado com sucesso!");
1166
	return 1;
1167
}
1168
CMD:hq(playerid)
1169
{
1170
	SetPlayerPos(playerid, 2204.39990234,1846.00000000,12.60000038);
1171
	return 1;
1172
}
1173
1174
CMD:ajudavip(playerid, params[])
1175
{
1176
	if(GetarDado(playerid, Vip) == false) return Msg(playerid, BRANCO, "Você não é um jgoador VIP.");
1177
	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", "");
1178
	return 1;
1179
}
1180
1181
CMD:admins(playerid, params[])
1182
{
1183
	new IsAdmin;
1184
	SendClientMessage(playerid, ROSA, "Admin Online:");
1185
	new Online[10];
1186
	for(new i = 0; i < MAX_PLAYERS; i++)
1187
	{
1188
	    if(PlayerDados[i][Admin] > 0)
1189
	    {
1190
            if(PlayerDados[i][Admin] == 1) AdminNivel = "Moderador";
1191
			if(PlayerDados[i][Admin] == 2) AdminNivel = "Admin Iniciante";
1192
			if(PlayerDados[i][Admin] == 3) AdminNivel = "Admin Geral";
1193
			if(PlayerDados[i][Admin] == 4) AdminNivel = "Sub Dono";
1194
			if(PlayerDados[i][Admin] == 5) AdminNivel = "Poderoso Chefão";
1195
			if(PlayerDados[i][Trabalhando] == true) AdminTrabalhando = "Trabalhando";
1196
			if(PlayerDados[i][Trabalhando] == false) AdminTrabalhando = "Jogando";
1197
			if(PlayerDados[i][Afk] == true) Online = "AFK";
1198
			if(PlayerDados[i][Afk] == false) Online = "Online";
1199
	        format(String, sizeof(String), "%s | %s | %s | %s", Nome(i), AdminNivel, AdminTrabalhando, Online);
1200
	        SendClientMessage(playerid, LARANJA, String);
1201
	        IsAdmin ++;
1202
		}
1203
	}
1204
	if(IsAdmin == 0)
1205
	{
1206
	    SendClientMessage(playerid, CINZA, "Nenhum Admin Online!");
1207
	}
1208
	IsAdmin = 0;
1209
	SendClientMessage(playerid, CINZA, "Use /helpers");
1210
	return 1;
1211
}
1212
1213
//SÓ VAI FUNCIONAR O SEGUINTE COMANDO SE VC USAR O SISTEMA DE REGISTRO DO FS
1214
#if USAR_SISTEMA_REGISTRO == 1
1215
	CMD:mudarsenha(playerid, params[])
1216
	{
1217
        new StrConta[100];
1218
		format(StrConta,sizeof(StrConta), "LLADMIN/Contas/%s.txt", Nome(playerid));
1219
		format(String, sizeof(String), "{1BE0AF}Sua senha atual é {1B63E0}'%s'.\n\nDigite sua nova senha abaixo:", DOF2_GetString(StrConta, "Senha"));
1220
		ShowPlayerDialog(playerid, DIALOG_SENHANOVA, DIALOG_STYLE_INPUT, "{1BE084}Nova Senha", String, "Mudar", "Cancelar");
1221
		return 1;
1222
	}
1223
#endif
1224
1225
		
1226
	
1227
1228
CMD:helpers(playerid, params[])
1229
{
1230
	new IsHelper;
1231
	new Online[10];
1232
	SendClientMessage(playerid, VERDE, "Helpers Online:");
1233
	for(new i = 0; i < MAX_PLAYERS; i++)
1234
	{
1235
	    if(PlayerDados[i][Helper])
1236
	    {
1237
			if(PlayerDados[i][Trabalhando] == true) AdminTrabalhando = "Trabalhando";
1238
			if(PlayerDados[i][Trabalhando] == false) AdminTrabalhando = "Jogando";
1239
			if(PlayerDados[i][Afk] == true) Online = "AFK";
1240
			if(PlayerDados[i][Afk] == false) Online = "Online";
1241
	        format(String, sizeof(String), "%s | %s | %s", Nome(i), AdminTrabalhando, Online);
1242
	        SendClientMessage(playerid, VERDE_CLARO, String);
1243
	        IsHelper ++;
1244
		}
1245
	}
1246
	if(IsHelper == 0)
1247
	{
1248
	    SendClientMessage(playerid, CINZA, "Nenhum Helper Online!");
1249
	}
1250
	IsHelper = 0;
1251
	return 1;
1252
}
1253
1254
1255
CMD:temposair(playerid, params[])
1256
{
1257
	if(PlayerDados[playerid][Preso] < 1) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Você não está preso para usar este comando");
1258
	format(String, sizeof(String), "Faltam %d Segundos para você ficar livre!", PlayerDados[playerid][Preso]);
1259
	SendClientMessage(playerid, VERDE_CLARO, String);
1260
	return 1;
1261
}
1262
1263
CMD:la(playerid, params[])
1264
{
1265
	new Ajuda[1500];
1266
	if((PlayerDados[playerid][Admin] == 0) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
1267
	if(PlayerDados[playerid][Helper])//HELPER
1268
	{
1269
	    strcat(Ajuda,"{FFFFFF}Helper\n{FFEA03}/Jogar - /Trabalhar - /Servico - /Ir - /Trazer - /Particular - /Players\n/Afk - /SairAfk - /PortaoAdm\n\n");
1270
	}
1271
	if(PlayerDados[playerid][Admin] > 0)//NIVEL 1
1272
	{
1273
	    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");
1274
	}//20
1275
	if(PlayerDados[playerid][Admin] > 1)//NIVEL 2
1276
	{
1277
	    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");
1278
	}//22
1279
	if(PlayerDados[playerid][Admin] > 2)//NIVEL 3
1280
	{
1281
	    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");
1282
	}//23
1283
	if(PlayerDados[playerid][Admin] > 3)//NIVEL 4
1284
	{
1285
	    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");
1286
	}//17
1287
	if(PlayerDados[playerid][Admin] > 4)//NIVEL 5
1288
	{
1289
	    strcat(Ajuda, "{FFFFFF}Nivel 5\n{FA0505}/NomeServer - /NomeGM - /NomeMapa - /CriarTeleporte - /DarAdmin\n/SetarGravidade - /DarHelper - /TirarHelper - /SetarAdmin - /TrancarServer\n/DestrancarServer\n\n");
1290
	}//11 = 93
1291
	ShowPlayerDialog(playerid, DIALOG_AL, DIALOG_STYLE_MSGBOX, "LL ADMIN - Ajuda", Ajuda, "Fechar", "");
1292
	return 1;
1293
}
1294
1295
//---------------------------------COMANDOS DE ADMIN----------------------------------------
1296
1297
//------------------PARA NIVEL 1 OU HELPER------------------------------
1298
1299
CMD:limparchat(playerid, params[])
1300
{
1301
	if(!NivelRequerido(playerid, 1)) return 1;
1302
	for(new t = 0; t < 100; ++t)
1303
	{
1304
	    SendClientMessageToAll(-1, " ");
1305
	}
1306
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} limpou o chat.", Nome(playerid));
1307
	return 1;
1308
}
1309
1310
CMD:portaoadm(playerid, params[])
1311
{
1312
    if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
1313
    MoveObject(PortaoHQ, 2205.10009766,1835.50000000,12.60000038, 4, 0.00000000, 0.00000000, 91.99951172);
1314
    GameTextForPlayer(playerid, "Portao ~g~Aberto", 1000, 6);
1315
    SetTimer("FecharPortao", 5000, false);
1316
    return 1;
1317
}
1318
1319
CMD:contagem(playerid, params[])
1320
{
1321
	if(!NivelRequerido(playerid, 1)) return 1;
1322
	if(sscanf(params, "i", time)) return MensagemDupla(playerid, "[LL ADMIN] Use /contagem [tempo]", "Use o comando para iniciar uma contagem regressiva.");
1323
	if((time < 1) || (time > 20)) return Msg(playerid, CINZA, "Use no maximo 20 segundos!");
1324
	MensagemFormatadaParaTodos(AZUL_CLARO, "Contagem de %d segundos iniciada pelo admin {1B95E0}%s{00C2EC}.", time, Nome(playerid));
1325
	TimerCont = SetTimer("DiminuirTempo", 1000, true);
1326
	return 1;
1327
}
1328
	
1329
CMD:afk(playerid, params[])
1330
{
1331
	if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
1332
	if(PlayerDados[playerid][Trabalhando] == false) return Msg(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1333
	TogglePlayerSpectating(playerid, true);
1334
    SetPlayerHealth(playerid, 99999);
1335
	TogglePlayerControllable(playerid, false);
1336
	PlayerDados[playerid][Afk] = true;
1337
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} Está AFK. Veja em /admins", Nome(playerid));
1338
	if(PlayerDados[playerid][Helper] == true)
1339
	{
1340
		MensagemFormatadaParaTodos(AZUL_CLARO, "O Helper {1B95E0}%s{00C2EC} Está AFK. Veja em /helpers", Nome(playerid));
1341
	}
1342
	Msg(playerid, CINZA, "Use /sairafk para sair do Afk.");
1343
	return 1;
1344
}
1345
1346
CMD:sairafk(playerid, params[])
1347
{
1348
    if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
1349
    if(PlayerDados[playerid][Trabalhando] == false) return Msg(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1350
	TogglePlayerSpectating(playerid, false);
1351
    SetPlayerHealth(playerid, 99999);
1352
	TogglePlayerControllable(playerid, true);
1353
	PlayerDados[playerid][Afk] = false;
1354
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} não está mais AFK. Veja em /admins", Nome(playerid));
1355
	if(PlayerDados[playerid][Helper] == true)
1356
	{
1357
		MensagemFormatadaParaTodos(AZUL_CLARO, "O Helper {1B95E0}%s{00C2EC}não está mais AFK. Veja em /helpers", Nome(playerid));
1358
	}
1359
	return 1;
1360
}
1361
1362
CMD:players(playerid, params[])
1363
{
1364
	if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
1365
	format(String, sizeof(String), "Players Online: {E0D01B}%d/%d", PlayersOnline, GetMaxPlayers());
1366
	SendClientMessageToAll(AZUL, String);
1367
	return 1;
1368
}
1369
1370
CMD:particular(playerid, params[])
1371
{
1372
    if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
1373
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1374
    new t[128];
1375
    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.");
1376
    format(String, sizeof(String), "Particular de {E0D01B}%s{FFFF00}: %s", Nome(playerid), t);
1377
	Msg(ID, AMARELO, String);
1378
	format(String, sizeof(String), "Particular enviada com sucesso para %s", Nome(ID));
1379
	Msg(playerid, AMARELO, String);
1380
	return 1;
1381
}
1382
CMD:servico(playerid, params[])
1383
{
1384
    if((PlayerDados[playerid][Admin] == 0) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1385
    if((PlayerDados[playerid][Trabalhando] == true))
1386
    {
1387
        PlayerDados[playerid][Trabalhando] = false;
1388
        format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Jogando, Agora ele é um Jogador Normal", Nome(playerid));
1389
		if(PlayerDados[playerid][Helper])
1390
		{
1391
		    format(String, sizeof(String), "O Helper {1B95E0}%s{00C2EC} Está Jogando, Agora ele é um Jogador Normal", Nome(playerid));
1392
		}
1393
		SendClientMessageToAll(AZUL_CLARO, String);
1394
		SendClientMessage(playerid, VERDE_CLARO, "Para voltar a trabalhar use /servico novamente.");
1395
		SetPlayerColor(playerid, LARANJA);
1396
		SetPlayerHealth(playerid, 100);
1397
		return 1;
1398
	}
1399
	if((PlayerDados[playerid][Trabalhando] == false))
1400
	{
1401
	    PlayerDados[playerid][Trabalhando] = true;
1402
		format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Trabalhando, Veja em /admins", Nome(playerid));
1403
		if(PlayerDados[playerid][Helper])
1404
		{
1405
    	    format(String, sizeof(String), "O Helper {1B95E0}%s{00C2EC} Está Trabalhando, Veja em /helpers", Nome(playerid));
1406
		}
1407
		SendClientMessageToAll(AZUL_CLARO, String);
1408
		SendClientMessage(playerid, VERDE_CLARO, "Para voltar a jogar use /servico novamente.");
1409
		SetPlayerColor(playerid, 0x24E9FFFF);
1410
		SetPlayerHealth(playerid, 999999);
1411
	}
1412
	return 1;
1413
}
1414
1415
CMD:jogar(playerid, params[])
1416
{
1417
	if((PlayerDados[playerid][Admin] == 0) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
1418
	if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você ja está jogando!");
1419
	PlayerDados[playerid][Trabalhando] = false;
1420
	format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Jogando, Agora ele é um Jogador Normal", Nome(playerid));
1421
	if(PlayerDados[playerid][Helper])
1422
	{
1423
	    format(String, sizeof(String), "O Helper {1B95E0}%s{00C2EC} Está Jogando, Agora ele é um Jogador Normal", Nome(playerid));
1424
	}
1425
	SendClientMessageToAll(AZUL_CLARO, String);
1426
	SendClientMessage(playerid, VERDE_CLARO, "Para voltar a trabalhar use /trabalhar");
1427
	SetPlayerColor(playerid, LARANJA);
1428
	SetPlayerHealth(playerid, 100);
1429
	return 1;
1430
}
1431
1432
CMD:trabalhar(playerid, params[])
1433
{
1434
	if((PlayerDados[playerid][Admin] == 0) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin ou helper para usar este comando!");
1435
	if(PlayerDados[playerid][Trabalhando] == true) return SendClientMessage(playerid, CINZA, "Você ja está trabalhando!");
1436
	PlayerDados[playerid][Trabalhando] = true;
1437
	format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Trabalhando, Veja em /admins", Nome(playerid));
1438
	if(PlayerDados[playerid][Helper])
1439
	{
1440
        format(String, sizeof(String), "O Helper {1B95E0}%s{00C2EC} Está Trabalhando, Veja em /helpers", Nome(playerid));
1441
	}
1442
	SendClientMessageToAll(AZUL_CLARO, String);
1443
	SendClientMessage(playerid, VERDE_CLARO, "Para voltar a jogar use /jogar");
1444
	SetPlayerColor(playerid, 0x24E9FFFF);
1445
	SetPlayerHealth(playerid, 999999);
1446
	return 1;
1447
}
1448
CMD:infoplayer(playerid, params[])
1449
{
1450
	new StringM[500];
1451
	new Fala[4];
1452
	new ip[25];
1453
	if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1454
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1455
	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");
1456
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1457
	if(PlayerDados[ID][Calado] == true) Fala = "Sim";
1458
	if(PlayerDados[ID][Calado] == false) Fala = "Nao";
1459
	GetPlayerIp(ID, ip, 25);
1460
	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]);
1461
	format(StringM, sizeof(StringM), "%s\n{11D41E}Advertencias:{FFFFFF} %d \n{11D41E}IP:{FFFFFF} %s", StringM, PlayerDados[ID][Advertencias], ip);
1462
	ShowPlayerDialog(playerid, DIALOG_INFO, DIALOG_STYLE_MSGBOX, "Informações do Player", StringM, "Fechar", "");
1463
	return 1;
1464
}
1465
1466
CMD:verip(playerid, params[])
1467
{
1468
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1469
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1470
	if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL-ADMIN] Use /verid [ID]");
1471
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1472
	new strip[20];
1473
	GetPlayerIp(ID, strip, 20);
1474
	format(String, sizeof(String), "O IP de %s é:", Nome(ID));
1475
	SendClientMessage(playerid, AZUL_CLARO, String);
1476
	format(String, sizeof(String), "%s", strip);
1477
	SendClientMessage(playerid, VERDE_CLARO, String);
1478
	return 1;
1479
}
1480
1481
CMD:avisar(playerid, params[])
1482
{
1483
	new Texto[128];
1484
	if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1485
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1486
	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");
1487
	format(String, sizeof(String), "Admin %s [nivel %d]: %s", Nome(playerid), PlayerDados[playerid][Admin], Texto);
1488
	SendClientMessageToAll(AZUL, "________________________AVISO DA ADMINISTRAÇÃO________________________");
1489
	SendClientMessageToAll(AZUL_CLARO, String);
1490
	return 1;
1491
}
1492
1493
CMD:destrancarcarros(playerid, params[])
1494
{
1495
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1496
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1497
	for(new c = 0; c < MAX_VEHICLES; c++)
1498
    {
1499
        SetVehicleParamsEx(c, 0, 0, 0, 0, 0, 0, 0);
1500
	}
1501
	SendClientMessage(playerid, AMARELO, "Todos os veiculos foram destrancados!");
1502
	return 1;
1503
}
1504
1505
CMD:kickar(playerid, params[])
1506
{
1507
	new Razao[128];
1508
	if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1509
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1510
	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");
1511
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1512
	if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
1513
	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);
1514
	SendClientMessageToAll(VERDE_CLARO, String);
1515
	Kickar(ID, Nome(playerid), Razao);
1516
	EscreverLog("LLADMIN/Logs/Kickados.log", String);
1517
	return 1;
1518
}
1519
1520
CMD:tapa(playerid, params[])
1521
{
1522
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1523
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1524
	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");
1525
    if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
1526
	new Float:Pos[3];
1527
    GetPlayerPos(ID, Pos[0], Pos[1], Pos[2]);
1528
    SetPlayerPos(ID, Pos[0], Pos[1], Pos[2]+20);
1529
    format(String, sizeof(String), "[LL ADMIN] O Admin %s Deu um tapa em %s\r\n", Nome(playerid), Nome(ID));
1530
    EscreverLog("LLADMIN/Logs/Tapas.log", String);
1531
    return 1;
1532
}
1533
1534
CMD:assistir(playerid, params[])
1535
{
1536
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1537
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1538
	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");
1539
    TogglePlayerSpectating(playerid, 1);
1540
    PlayerSpectatePlayer(playerid, ID);
1541
    PlayerDados[playerid][Assistindo] = true;
1542
    SendClientMessage(playerid, VERDE_CLARO, "Para parar de assistir use /passistir");
1543
    return 1;
1544
}
1545
1546
CMD:passistir(playerid, params[])
1547
{
1548
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1549
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1550
	if(PlayerDados[playerid][Assistindo] == false) return SendClientMessage(playerid, AZUL, "Você não está assistindo ninguem!");
1551
    TogglePlayerSpectating(playerid, 0);
1552
	SendClientMessage(playerid, VERDE_CLARO, "Você parou de assistir o jogador!");
1553
	PlayerDados[playerid][Assistindo] = false;
1554
	return 1;
1555
}
1556
1557
CMD:texto(playerid, params[])
1558
{
1559
	new Texto[128];
1560
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1561
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1562
	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");
1563
	format(String, sizeof(String), "~y~%s: ~w~%s", Nome(playerid), Texto);
1564
	GameTextForAll(String, 2000, 4);
1565
	return 1;
1566
}
1567
1568
CMD:a(playerid, params[])
1569
{
1570
	new Texto[128];
1571
    if((PlayerDados[playerid][Admin] < 1) && (PlayerDados[playerid][Helper] == false)) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
1572
	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");
1573
	if(PlayerDados[playerid][Helper] == true) AdminNivel = "Helper";
1574
	if(PlayerDados[playerid][Admin] == 1) AdminNivel = "Moderador";
1575
	if(PlayerDados[playerid][Admin] == 2) AdminNivel = "Admin Iniciante";
1576
	if(PlayerDados[playerid][Admin] == 3) AdminNivel = "Admin Geral";
1577
	if(PlayerDados[playerid][Admin] == 4) AdminNivel = "Sub Dono";
1578
	if(PlayerDados[playerid][Admin] == 5) AdminNivel = "Poderoso Chefão";
1579
	format(String, sizeof(String), "%s %s: %s", AdminNivel, Nome(playerid), Texto);
1580
	for(new i = 0; i < MAX_PLAYERS; i++)
1581
	{
1582
	    if(PlayerDados[i][Admin] > 0)
1583
	    {
1584
	        SendClientMessage(i, AZUL_CLARO, String);
1585
		}
1586
	}
1587
	EscreverLog("LLADMIN/Logs/Chatadm.log", String);
1588
	return 1;
1589
}
1590
1591
//-----------------------------ADMIN NIVEL 2------------------------------------
1592
1593
CMD:moverplayer(playerid, params[])
1594
{
1595
	new id2;
1596
	if(!NivelRequerido(playerid, 2)) return 1;
1597
	if(sscanf(params, "uu", ID, id2)) return MensagemDupla(playerid, "[LL ADMIN] Use /moverplayer [ID] [ID2]", "Use o comando para mover um player até outro.");
1598
	new Float:X,
1599
	    Float:Y,
1600
	    Float:Z;
1601
	GetPlayerPos(id2, X, Y, Z);
1602
	SetPlayerPos(ID, X, Y, Z);
1603
	format(String, sizeof(String), "O admin {1B95E0}%s{00C2EC} moveu o jogador %s até %s.", Nome(playerid), Nome(ID), Nome(id2));
1604
	MsgAll(AZUL_CLARO, String);
1605
	return 1;
1606
}
1607
1608
CMD:trazertodos(playerid, params[])
1609
{
1610
	if(!NivelRequerido(playerid, 2)) return 1;
1611
	new Float:X,
1612
	    Float:Y,
1613
	    Float:Z;
1614
	GetPlayerPos(playerid, X, Y, Z);
1615
	for(new i = 0; i < MAX_PLAYERS; ++i)
1616
	{
1617
	    if(IsPlayerConnected(i))
1618
	    {
1619
	        SetPlayerPos(i, X+1, Y+1, Z);
1620
		}
1621
	}
1622
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} puxou todos os jogadores até ele.", Nome(playerid));
1623
	return 1;
1624
}
1625
1626
CMD:jetpack(playerid, params[])
1627
{
1628
	if(!NivelRequerido(playerid, 2)) return 1;
1629
	if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /jetpack [ID]", "Use o comando para dar um jetpakc a agum jogador.");
1630
	SetPlayerSpecialAction(ID, 2);
1631
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} deu um JetPack a %s.", Nome(playerid));
1632
	return 1;
1633
}
1634
1635
CMD:explodir(playerid, params[])
1636
{
1637
	if(!NivelRequerido(playerid, 2)) return 1;
1638
	if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /explodir [ID]", "Use o comando para explodir um jogador.");
1639
	new Float:X,
1640
	    Float:Y,
1641
	    Float:Z;
1642
	GetPlayerPos(ID, X, Y, Z);
1643
	CreateExplosion(X, Y, Z, 1, 5);
1644
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} explodiu o jogador %s", Nome(playerid), Nome(ID));
1645
	return 1;
1646
}
1647
1648
CMD:tempo(playerid, params[])
1649
{
1650
	new t[10];
1651
	if(!NivelRequerido(playerid, 2)) return 1;
1652
	if(sscanf(params, "s", t)) return MensagemDupla(playerid, "[LL ADMIN] Use /tempo [Manha/Tarde/Noite]", "Use o comando para alterar o tempo do servidor");
1653
	if(strcmp(t, "manha", true) == 0)
1654
	{
1655
	    MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} mudou o tempo para manha", Nome(playerid));
1656
		for(new i = 0; i < MAX_PLAYERS; ++i)
1657
		{
1658
		    SetPlayerTime(i, 9, 0);
1659
		}
1660
		SetWorldTime(9);
1661
		return 1;
1662
	}
1663
	if(strcmp(t, "tarde", true) == 0)
1664
	{
1665
	    MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} mudou o tempo para tarde", Nome(playerid));
1666
		for(new i = 0; i < MAX_PLAYERS; ++i)
1667
		{
1668
		    SetPlayerTime(i, 14, 0);
1669
		}
1670
		SetWorldTime(14);
1671
		return 1;
1672
	}
1673
	if(strcmp(t, "noite", true) == 0)
1674
	{
1675
	    MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} mudou o tempo para noite", Nome(playerid));
1676
		for(new i = 0; i < MAX_PLAYERS; ++i)
1677
		{
1678
		    SetPlayerTime(i, 0, 0);
1679
		}
1680
		SetWorldTime(0);
1681
		return 1;
1682
	}
1683
	Msg(playerid, CINZA, "[LL ADMIN] Use /tempo [Manha/Tarde/Noite]");
1684
	return 1;
1685
}
1686
1687
CMD:dargrana(playerid, params[])
1688
{
1689
	new q;
1690
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1691
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1692
    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");
1693
    MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{38FF06} deu %d reais para {1B95E0}%s{38FF06}\r\n", Nome(playerid), q, Nome(ID));
1694
	GivePlayerMoney(ID, q);
1695
	return 1;
1696
}
1697
1698
CMD:forcarcarro(playerid, params[])
1699
{
1700
	new IDCarro;
1701
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1702
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1703
	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");
1704
    if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
1705
	PutPlayerInVehicle(ID, IDCarro, 0);
1706
	format(String, sizeof(String), "O Admin {1B95E0}%s{38FF06} te colocou em um veículo", Nome(playerid));
1707
	SendClientMessage(ID, AZUL_CLARO, String);
1708
	format(String, sizeof(String), "Você colocou o jogador {1B95E0}%s{38FF06} em um veículo", Nome(ID));
1709
	SendClientMessage(playerid, AZUL_CLARO, String);
1710
	return 1;
1711
}
1712
1713
CMD:forcarskin(playerid, params[])
1714
{
1715
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1716
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1717
    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");
1718
    if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
1719
	ForceClassSelection(ID);
1720
	format(String, sizeof(String), "O Admin {1B95E0}%s{38FF06} te forçou a seleção de skin", Nome(playerid));
1721
	SendClientMessage(ID, AZUL_CLARO, String);
1722
	format(String, sizeof(String), "Você forçou o jogador {1B95E0}%s{38FF06} a escolher uma skin", Nome(ID));
1723
	SendClientMessage(playerid, AZUL_CLARO, String);
1724
	SetPlayerHealth(playerid, 0);
1725
	return 1;
1726
}
1727
1728
1729
CMD:setarinterior(playerid, params[])
1730
{
1731
	new Interior;
1732
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1733
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1734
	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");
1735
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1736
    if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
1737
	SetPlayerInterior(ID, Interior);
1738
	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);
1739
	SendClientMessageToAll(VERDE_CLARO, String);
1740
	return 1;
1741
}
1742
1743
1744
CMD:banir(playerid, params[])
1745
{
1746
	new Razao[128];
1747
	if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1748
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1749
	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");
1750
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1751
    if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
1752
	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);
1753
	SendClientMessageToAll(VERDE_CLARO, String);
1754
	EscreverLog("LLADMIN/Logs/Banidos.log", String);
1755
	format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(ID));
1756
	getdate(Ano, Mes, Dia);
1757
	gettime(Hora, Minuto, Segundo);
1758
	DOF2_CreateFile(String);
1759
	DOF2_SetString(String, "Admin", Nome(playerid));
1760
	DOF2_SetString(String, "Motivo", Razao);
1761
	DOF2_SetInt(String, "Ano", Ano);
1762
	DOF2_SetInt(String, "Mes", Mes);
1763
	DOF2_SetInt(String, "Dia", Dia);
1764
	DOF2_SetInt(String, "Hora", Hora);
1765
	DOF2_SetInt(String, "Minuto", Minuto);
1766
	Kick(ID);
1767
	return 1;
1768
}
1769
1770
CMD:desbanir(playerid, params[])
1771
{
1772
	new Conta[128];
1773
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1774
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1775
	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");
1776
	format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Conta);
1777
	if(DOF2_FileExists(String))
1778
	{
1779
	    DOF2_RemoveFile(String);
1780
		format(String, sizeof(String), "[LL ADMIN] Conta {1B95E0}%s{38FF06} Desbanida!", Conta);
1781
		SendClientMessage(playerid, VERDE_CLARO, String);
1782
		return 1;
1783
	}
1784
	else
1785
	{
1786
        format(String, sizeof(String), "[LL ADMIN] A Conta {1B95E0}%s{CECECE} Não Existe ou Não está banida!", Conta);
1787
		SendClientMessage(playerid, CINZA, String);
1788
	}
1789
	format(String, sizeof(String), "O Admin %s desbaniu a conta %s\r\n", Nome(playerid), Conta);
1790
	EscreverLog("LLADMIN/Logs/Desbanidos.log", String);
1791
	return 1;
1792
}
1793
	
1794
    
1795
CMD:advertir(playerid, params[])
1796
{
1797
	new Razao[128];
1798
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1799
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1800
	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");
1801
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1802
    if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
1803
	if(PlayerDados[ID][Advertencias] != 3)
1804
	{
1805
		format(String, sizeof(String), "[LL ADMIN] O Admin %s Deu uma Advertencia a %s Pelo Motivo: %s\r\n", Nome(playerid), Nome(ID), Razao);
1806
    	SendClientMessageToAll(VERMELHO_CLARO, String);
1807
		EscreverLog("LLADMIN/Logs/Advertidos.log", String);
1808
	    format(String, sizeof(String), "Você foi Advertido pelo admin %s Pelo motivo: %s. Se for advertido 3 vezes será BANIDO Automaticamente", Nome(playerid), Razao);
1809
	    SendClientMessage(ID, LARANJA, String);
1810
	    PlayerDados[ID][Advertencias] += 1;
1811
	}
1812
	if(PlayerDados[ID][Advertencias] == 3)
1813
	{
1814
	    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);
1815
    	SendClientMessageToAll(VERMELHO_CLARO, String);
1816
    	format(String, sizeof(String), "Você foi Advertido pela terceira vez pelo admin %s Pelo motivo: %s. por isso você foi banido!", Nome(playerid), Razao);
1817
	    SendClientMessage(ID, LARANJA, String);
1818
	    format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(ID));
1819
		getdate(Ano, Mes, Dia);
1820
		gettime(Hora, Minuto, Segundo);
1821
		new IP[25];
1822
		GetPlayerIp(ID, IP, 25);
1823
		DOF2_CreateFile(String);
1824
		DOF2_SetString(String, "Admin", Nome(playerid));
1825
		DOF2_SetString(String, "Motivo", "3° Advertencia");
1826
		DOF2_SetInt(String, "Ano", Ano);
1827
		DOF2_SetInt(String, "Mes", Mes);
1828
		DOF2_SetInt(String, "Dia", Dia);
1829
		DOF2_SetInt(String, "Hora", Hora);
1830
		DOF2_SetInt(String, "Minuto", Minuto);
1831
		Kick(ID);
1832
	}
1833
	return 1;
1834
}
1835
1836
CMD:ir(playerid, params[])
1837
{
1838
    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!");
1839
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1840
	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");
1841
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1842
	new Float:Pos[3];
1843
	GetPlayerPos(ID, Pos[0], Pos[1], Pos[2]);
1844
	if(IsPlayerInAnyVehicle(playerid))
1845
	{
1846
		new carroid = GetPlayerVehicleID(playerid);
1847
		SetVehiclePos(carroid, Pos[0], Pos[1], Pos[2]);
1848
		format(String, sizeof(String), "O Admin %s veio até você!", Nome(playerid));
1849
		if(PlayerDados[playerid][Helper])
1850
		{
1851
		    format(String, sizeof(String), "O Helper %s veio até você!", Nome(playerid));
1852
		}
1853
		SendClientMessage(ID, AZUL_CLARO, String);
1854
		format(String, sizeof(String), "Você foi até o Jogador %s [ID: %d]", Nome(ID), ID);
1855
		SendClientMessage(playerid, AZUL_CLARO, String);
1856
		return 1;
1857
	}
1858
	SetPlayerPos(playerid, Pos[0]+2, Pos[1]+2, Pos[2]+2);
1859
	format(String, sizeof(String), "O Admin %s veio até você!", Nome(playerid));
1860
	if(PlayerDados[playerid][Helper])
1861
	{
1862
	    format(String, sizeof(String), "O Helper %s veio até você!", Nome(playerid));
1863
	}
1864
	SendClientMessage(ID, AZUL_CLARO, String);
1865
	format(String, sizeof(String), "Você foi até o Jogador %s [ID: %d]", Nome(ID), ID);
1866
	SendClientMessage(playerid, AZUL_CLARO, String);
1867
	return 1;
1868
}
1869
1870
CMD:trazer(playerid, params[])
1871
{
1872
    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!");
1873
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1874
	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ê");
1875
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1876
	new Float:Pos[3];
1877
	GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
1878
	if(IsPlayerInAnyVehicle(ID))
1879
	{
1880
		new carroid = GetPlayerVehicleID(ID);
1881
		SetVehiclePos(carroid, Pos[0]+2, Pos[1]+2, Pos[2]+2);
1882
		format(String, sizeof(String), "O Admin %s trouxe você até ele!", Nome(playerid));
1883
		if(PlayerDados[playerid][Helper])
1884
		{
1885
		    format(String, sizeof(String), "O Helper %s trouxe você até ele!", Nome(playerid));
1886
		}
1887
		SendClientMessage(ID, AZUL_CLARO, String);
1888
		format(String, sizeof(String), "Você trouxe o jogador %s [ID: %d] até você", Nome(ID), ID);
1889
		SendClientMessage(playerid, AZUL_CLARO, String);
1890
		return 1;
1891
	}
1892
	SetPlayerPos(ID, Pos[0]+2, Pos[1]+2, Pos[2]+2);
1893
	format(String, sizeof(String), "O Admin %s trouxe você até ele!", Nome(playerid));
1894
	if(PlayerDados[playerid][Helper])
1895
	{
1896
	    format(String, sizeof(String), "O Helper %s trouxe você até ele!", Nome(playerid));
1897
	}
1898
	SendClientMessage(ID, AZUL_CLARO, String);
1899
	format(String, sizeof(String), "Você trouxe o jogador %s [ID: %d] até você", Nome(ID), ID);
1900
	SendClientMessage(playerid, AZUL_CLARO, String);
1901
	return 1;
1902
}
1903
1904
CMD:congelar(playerid, params[])
1905
{
1906
	new Razao[128];
1907
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1908
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1909
	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");
1910
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1911
    if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
1912
	TogglePlayerControllable(ID, false);
1913
    PlayerDados[playerid][Congelado] = true;
1914
    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);
1915
	SendClientMessageToAll(AZUL_CLARO, String);
1916
	SendClientMessage(playerid, VERDE_CLARO, "Para descongelar use /descongelar");
1917
	EscreverLog("LLADMIN/Logs/Congelados.log", String);
1918
	return 1;
1919
}
1920
    
1921
CMD:descongelar(playerid, params[])
1922
{
1923
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1924
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1925
	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");
1926
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1927
	if(PlayerDados[ID][Congelado] == false) return SendClientMessage(playerid, CINZA, "O Jogados não está congelado!");
1928
	TogglePlayerControllable(ID, true);
1929
    PlayerDados[ID][Congelado] = false;
1930
    format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} Descongelou o jogador {1BA5E0}%s{00C2EC} [ID: %d]", Nome(playerid), Nome(ID), ID);
1931
    SendClientMessageToAll(AZUL_CLARO, String);
1932
    return 1;
1933
}
1934
1935
CMD:dararma(playerid, params[])
1936
{
1937
	new NomeArma[80];
1938
	new
1939
	    Arma,
1940
	    Municao;
1941
	if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1942
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1943
	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");
1944
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1945
	if(Arma < 1 || Arma == 19 || Arma == 20 || Arma == 21 || Arma > 46) return SendClientMessage(playerid, CINZA, "[LL ADMIN] ID Invalido, use de 1 a 46");
1946
	if(Arma == 1) NomeArma = "Soco Inglês";
1947
	if(Arma == 2) NomeArma = "Taco de Golf";
1948
	if(Arma == 3) NomeArma = "Cacetete";
1949
	if(Arma == 4) NomeArma = "Faca";
1950
	if(Arma == 5) NomeArma = "Taco de Baseball";
1951
	if(Arma == 6) NomeArma = "Pá";
1952
	if(Arma == 7) NomeArma = "Taco de Sinuca";
1953
	if(Arma == 8) NomeArma = "Kitana";
1954
	if(Arma == 9) NomeArma = "Serra elétrica";
1955
	if(Arma == 10) NomeArma = "Pinto de Borracha";
1956
	if(Arma == 11) NomeArma = "Pinto roxo";
1957
	if(Arma == 12) NomeArma = "Vibrador";
1958
	if(Arma == 13) NomeArma = "Vibrador de Prata";
1959
	if(Arma == 14) NomeArma = "Flor";
1960
	if(Arma == 15) NomeArma = "Bengala";
1961
	if(Arma == 16) NomeArma = "Granada";
1962
	if(Arma == 17) NomeArma = "Bomba de gás";
1963
	if(Arma == 18) NomeArma = "Molotov";
1964
	if(Arma == 22) NomeArma = "Pistola 9mm";
1965
	if(Arma == 23) NomeArma = "Pistola com silenciador";
1966
	if(Arma == 24) NomeArma = "Desert Eagle";
1967
	if(Arma == 25) NomeArma = "ShotGun";
1968
	if(Arma == 26) NomeArma = "Sawnoff Shotgun";
1969
	if(Arma == 27) NomeArma = "Combat Shotgun";
1970
	if(Arma == 28) NomeArma = "Micro SMG";
1971
	if(Arma == 29) NomeArma = "MP5";
1972
	if(Arma == 30) NomeArma = "AK47";
1973
	if(Arma == 31) NomeArma = "M4";
1974
	if(Arma == 32) NomeArma = "Tec 9";
1975
	if(Arma == 33) NomeArma = "Country Rifle";
1976
	if(Arma == 34) NomeArma = "Sniper Rifle";
1977
	if(Arma == 35) NomeArma = "Bazooca RPG";
1978
	if(Arma == 36) NomeArma = "Bazooca Normal";
1979
	if(Arma == 37) NomeArma = "Lança Chamas";
1980
	if(Arma == 38) NomeArma = "Mini Gun";
1981
	if(Arma == 39) NomeArma = "C4";
1982
	if(Arma == 40) NomeArma = "Detonador";
1983
	if(Arma == 41) NomeArma = "Spray";
1984
	if(Arma == 42) NomeArma = "Extintor";
1985
	if(Arma == 43) NomeArma = "Oculos de visão noturna";
1986
	if(Arma == 45) NomeArma = "Oculos de visão de calor";
1987
	if(Arma == 46) NomeArma = "Paraquedas";
1988
	GivePlayerWeapon(ID, Arma, Municao);
1989
	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));
1990
	SendClientMessageToAll(AZUL_CLARO, String);
1991
	return 1;
1992
}
1993
1994
CMD:desarmar(playerid, params[])
1995
{
1996
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
1997
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
1998
	if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /desarmar [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para desarmar um jogador");
1999
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2000
    if(PlayerDados[ID][Admin] > PlayerDados[playerid][Admin]) return SendClientMessage(playerid, CINZA, "Você não pode fazer nada contra um admin superior a você!");
2001
	format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} Desarmou o jogador {1BA5E0}%s{00C2EC}", Nome(playerid), Nome(ID));
2002
	SendClientMessageToAll(AZUL_CLARO, String);
2003
	ResetPlayerWeapons(ID);
2004
	return 1;
2005
}
2006
2007
CMD:criarcarro(playerid, params[])
2008
{
2009
	new
2010
	    Carro,
2011
	    Cor1,
2012
	    Cor2;
2013
	if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
2014
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2015
	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");
2016
	new Float:X,
2017
	    Float:Y,
2018
	    Float:X1,
2019
	    Float:Y1,
2020
	    Float:Z,
2021
	    Float:A;
2022
	PosicaoFrentePlayer(playerid, X, Y, 3);
2023
	GetPlayerPos(playerid, X1, Y1, Z);
2024
	GetPlayerFacingAngle(playerid, A);
2025
	new idcarro;
2026
	idcarro = CreateVehicle(Carro, X, Y, Z, A+90, Cor1, Cor2, 15);
2027
	CarrosCriados[TodosCarros] = idcarro;
2028
	TodosCarros ++;
2029
	return 1;
2030
}
2031
2032
CMD:respawn(playerid, params[])
2033
{
2034
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
2035
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2036
	format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} deu Respawn nos veículos!", Nome(playerid));
2037
	SendClientMessageToAll(AZUL_CLARO, String);
2038
	SendClientMessage(playerid, VERDE_CLARO, "Todos os carros criados foram destruidos!");
2039
	for(new i = 0; i < sizeof(CarrosCriados); i++)
2040
	{
2041
	    DestroyVehicle(CarrosCriados[i]);
2042
	}
2043
	for(new c = 0; c < MAX_VEHICLES; c++)
2044
    {
2045
        SetVehicleToRespawn(c);
2046
	}
2047
	return 1;
2048
}
2049
2050
CMD:destruircarro(playerid, params[])
2051
{
2052
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
2053
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2054
	if(IsPlayerInAnyVehicle(playerid))
2055
    {
2056
		new idcarro = GetPlayerVehicleID(playerid);
2057
		DestroyVehicle(idcarro);
2058
		format(String, sizeof(String), "[LL ADMIN] Você destruiu o veículo ID %d", idcarro);
2059
		SendClientMessage(playerid, AZUL_CLARO, String);
2060
		return 1;
2061
	}
2062
	new idc;
2063
	if(sscanf(params, "i", idc)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /destruircarro [ID], ou entre em um veículo e use o comando.");
2064
	if(idc == INVALID_VEHICLE_ID) return SendClientMessage(playerid, CINZA, "[LL ADMIN] ID invalido!");
2065
	DestroyVehicle(idc);
2066
	format(String, sizeof(String), "[LL ADMIN] Você destruiu o veículo ID %d", idc);
2067
	SendClientMessage(playerid, AZUL_CLARO, String);
2068
	return 1;
2069
}
2070
2071
CMD:idcarro(playerid, params[])
2072
{
2073
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
2074
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2075
	if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, BRANCO, "Você não está em um veículo!");
2076
	new idc;
2077
	idc = GetPlayerVehicleID(playerid);
2078
	format(String, sizeof(String), "O ID do veículo é %d, para destrui-lo use /destruircarro", idc);
2079
	SendClientMessage(playerid, CINZA, String);
2080
	return 1;
2081
}
2082
2083
CMD:calar(playerid, params[])
2084
{
2085
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
2086
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2087
	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");
2088
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2089
	if(PlayerDados[ID][Calado] == true) return SendClientMessage(playerid, CINZA, "[LL ADMIN] O jogador Ja está calado!");
2090
	PlayerDados[ID][Calado] = true;
2091
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Calou o Jogador {1B95E0}%s{00C2EC}\r\n", Nome(playerid), Nome(ID));
2092
	SendClientMessageToAll(AZUL_CLARO, String);
2093
	EscreverLog("LLADMIN/Logs/Calados.log", String);
2094
	SendClientMessage(playerid, VERDE_CLARO, "[LL ADMIN] Para Liberar a fala do jogador use /liberar [ID]");
2095
	return 1;
2096
}
2097
2098
CMD:liberar(playerid, params[])
2099
{
2100
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
2101
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2102
    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");
2103
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2104
	if(PlayerDados[ID][Calado] == false) return SendClientMessage(playerid, CINZA, "[LL ADMIN] O jogador não está calado!");
2105
	PlayerDados[ID][Calado] = false;
2106
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Liberou a fala de {1B95E0}%s{00C2EC}", Nome(playerid), Nome(ID));
2107
	SendClientMessageToAll(AZUL_CLARO, String);
2108
	return 1;
2109
}
2110
2111
CMD:setarvida(playerid, params[])
2112
{
2113
	new Vida;
2114
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
2115
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2116
    if(sscanf(params, "ui", ID, Vida)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarvida [ID] [VIDA]");
2117
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2118
	if(Vida < 0 || Vida > 100) return SendClientMessage(playerid, CINZA, "[LL ADMIN]Valor Inválido! Use de 0 a 100");
2119
	SetPlayerHealth(ID, Vida);
2120
	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);
2121
	SendClientMessageToAll(AZUL_CLARO, String);
2122
	return 1;
2123
}
2124
2125
CMD:setarcolete(playerid, params[])
2126
{
2127
	new Colete;
2128
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
2129
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2130
    if(sscanf(params, "ui", ID, Colete)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarcolete [ID] [COLETE]");
2131
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2132
	if(Colete < 0 || Colete > 100) return SendClientMessage(playerid, CINZA, "[LL ADMIN]Valor Inválido! Use de 0 a 100");
2133
	SetPlayerArmour(ID, Colete);
2134
	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);
2135
	SendClientMessageToAll(AZUL_CLARO, String);
2136
	return 1;
2137
}
2138
2139
//-------------------------ADMIN NIVEL 3----------------------------------------
2140
2141
CMD:enquete(playerid, params[])
2142
{
2143
	if(!NivelRequerido(playerid, 3)) return 1;
2144
	new t[128];
2145
	if(sscanf(params, "s", t)) return MensagemDupla(playerid, "[LL ADMIN] Use /enquete [Pergunta]", "Use o comando para fazer uma enquete para os jogadores.");
2146
	Enquete[Criada] = true;
2147
	Enquete[Titulo] = t;
2148
	format(String, sizeof(String), "Enquete de %s: %s", Nome(playerid), t);
2149
	SendClientMessageToAll(ROXO, String);
2150
	SendClientMessageToAll(ROXO, "Use /sim ou /nao");
2151
	SendClientMessage(playerid, AZUL_CLARO, "A Enquete será fechada automaticamente em 30 segundos.");
2152
	SetTimer("FecharEnquete", 30000, false);
2153
	return 1;
2154
}
2155
2156
CMD:ativarmsgs(playerid, params[])
2157
{
2158
	if(!NivelRequerido(playerid, 3)) return 1;
2159
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} ativou as mensagens randomicas no servidor.", Nome(playerid));
2160
	TimerMsgs = SetTimer("MensagensRandom", 30*1000, true);
2161
	Msg(playerid, AMARELO, "para desativar as mensagens randomicas use /desativarmsgs.");
2162
	return 1;
2163
}
2164
2165
CMD:desativarmsgs(playerid, params[])
2166
{
2167
	if(!NivelRequerido(playerid, 3)) return 1;
2168
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} desativou as mensagens randomicas no servidor.", Nome(playerid));
2169
	KillTimer(TimerMsgs);
2170
	Msg(playerid, AMARELO, "para dativa-las novamente use /ativarmsgs");
2171
	return 1;
2172
}
2173
2174
CMD:resetargrana(playerid, params[])
2175
{
2176
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2177
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2178
    if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /resetargrana [ID]", "Use o comando para resetar o dinheiro de algum jogador");
2179
    MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} resetou o dinheiro de {1B95E0}%s{00C2EC}", Nome(playerid), Nome(ID));
2180
    ResetPlayerMoney(ID);
2181
    return 1;
2182
}
2183
2184
CMD:setargrana(playerid, params[])
2185
{
2186
	new q;
2187
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2188
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2189
    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");
2190
    MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} setou o dinheiro de {1B95E0}%s{00C2EC} para %d", Nome(playerid), Nome(ID), q);
2191
    ResetPlayerMoney(ID);
2192
    GivePlayerMoney(ID, q);
2193
    return 1;
2194
}
2195
2196
CMD:prender(playerid, params[])
2197
{
2198
	new Tempo, Motivo[70];
2199
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2200
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2201
    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");
2202
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2203
    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);
2204
    SendClientMessageToAll(AZUL_CLARO, String);
2205
	EscreverLog("LLADMIN/Logs/Presos.log", String);
2206
    SetPlayerPos(ID, 264.6288,77.5742,1001.0391);
2207
    SetPlayerInterior(ID, 6);
2208
    PlayerDados[ID][Preso] = Tempo;
2209
    TimerPreso = SetTimerEx("TempoPreso", 1000, true, "i", ID);
2210
    return 1;
2211
}
2212
2213
CMD:soltar(playerid, params[])
2214
{
2215
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2216
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2217
    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");
2218
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2219
    if(PlayerDados[ID][Preso] == 0) return SendClientMessage(playerid, CINZA, "O Jogador não está preso");
2220
    PlayerDados[ID][Preso] = 1;
2221
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Tirou o jogador {1B95E0}%s{00C2EC} da Cadeia", Nome(playerid), Nome(ID));
2222
    SendClientMessageToAll(AZUL_CLARO, String);
2223
    return 1;
2224
}
2225
2226
CMD:setarskin(playerid, params[])
2227
{
2228
	new Skin;
2229
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2230
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2231
	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");
2232
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2233
	if(Skin < 0 || Skin > 299) return SendClientMessage(playerid, CINZA, "[ERRO] ID Inválido, use IDs de 0 a 299!");
2234
	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);
2235
	SendClientMessageToAll(AZUL_CLARO, String);
2236
	SetPlayerSkin(ID, Skin);
2237
	return 1;
2238
}
2239
2240
CMD:setarnome(playerid, params[])
2241
{
2242
	new NovoNome[30];
2243
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2244
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2245
	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");
2246
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2247
	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);
2248
	SendClientMessageToAll(AZUL_CLARO, String);
2249
	EscreverLog("LLADMIN/Logs/NovoNome.log", String);
2250
	format(String, sizeof(String), "LLADMIN/Contas/%s.txt", Nome(ID));
2251
	DOF2_RemoveFile(String);
2252
	SetPlayerName(ID, NovoNome);
2253
	format(String, sizeof(String), "LLADMIN/Contas/%s.txt", Nome(ID));
2254
	DOF2_CreateFile(String);
2255
	SalvarDados(ID);
2256
	return 1;
2257
}
2258
2259
CMD:setarcor(playerid, params[])
2260
{
2261
	new Cor[100];
2262
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2263
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2264
    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");
2265
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2266
	if(strcmp(Cor, "vermelho", true) == 0)
2267
    {
2268
        SetPlayerColor(ID, VERMELHO);
2269
    	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));
2270
		SendClientMessageToAll(AZUL_CLARO, String);
2271
		return 1;
2272
	}
2273
	if(strcmp(Cor, "azul", true) == 0)
2274
    {
2275
        SetPlayerColor(ID, AZUL);
2276
    	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));
2277
		SendClientMessageToAll(AZUL_CLARO, String);
2278
		return 1;
2279
	}
2280
	if(strcmp(Cor, "verde", true) == 0)
2281
    {
2282
        SetPlayerColor(ID, VERDE);
2283
    	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));
2284
		SendClientMessageToAll(AZUL_CLARO, String);
2285
		return 1;
2286
	}
2287
	if(strcmp(Cor, "amarelo", true) == 0)
2288
    {
2289
        SetPlayerColor(ID, AMARELO);
2290
    	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));
2291
		SendClientMessageToAll(AZUL_CLARO, String);
2292
		return 1;
2293
	}
2294
	if(strcmp(Cor, "rosa", true) == 0)
2295
    {
2296
        SetPlayerColor(ID, ROSA_CHOQUE);
2297
    	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));
2298
		SendClientMessageToAll(AZUL_CLARO, String);
2299
		return 1;
2300
	}
2301
	if(strcmp(Cor, "laranja", true) == 0)
2302
    {
2303
        SetPlayerColor(ID, LARANJA);
2304
    	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));
2305
		SendClientMessageToAll(AZUL_CLARO, String);
2306
		return 1;
2307
	}
2308
	if(strcmp(Cor, "cinza", true) == 0)
2309
    {
2310
        SetPlayerColor(ID, CINZA);
2311
    	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));
2312
		SendClientMessageToAll(AZUL_CLARO, String);
2313
		return 1;
2314
	}
2315
	if(strcmp(Cor, "branco", true) == 0)
2316
    {
2317
        SetPlayerColor(ID, BRANCO);
2318
    	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));
2319
		SendClientMessageToAll(AZUL_CLARO, String);
2320
		return 1;
2321
	}
2322
	if(strcmp(Cor, "preto", true) == 0)
2323
    {
2324
        SetPlayerColor(ID, PRETO);
2325
    	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));
2326
		SendClientMessageToAll(AZUL_CLARO, String);
2327
		return 1;
2328
	}
2329
	SendClientMessage(playerid, CINZA, "Cores: Vermelho, Azul, Verde, Amarelo, Rosa, Laranja, Cinza, Branco e Preto");
2330
	return 1;
2331
}
2332
	
2333
CMD:clima(playerid, params[])
2334
{
2335
	new Clima;
2336
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2337
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2338
    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");
2339
    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");
2340
    SetWeather(Clima);
2341
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou o Clima para o ID %d!", Nome(playerid), Clima);
2342
	SendClientMessageToAll(AZUL_CLARO, String);
2343
	return 1;
2344
}
2345
2346
CMD:godmode(playerid, params[])
2347
{
2348
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2349
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2350
    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");
2351
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2352
	SetPlayerHealth(ID, 999999);
2353
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} deixou o Jogador {1B95E0}%s{00C2EC} em GodMode!", Nome(playerid), Nome(ID));
2354
	SendClientMessageToAll(AZUL_CLARO, String);
2355
	return 1;
2356
}
2357
2358
CMD:ejetar(playerid, params[])
2359
{
2360
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2361
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2362
    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");
2363
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2364
	if(!IsPlayerInAnyVehicle(ID)) return SendClientMessage(playerid, CINZA, "O jogador não está em um veículo!");
2365
	RemovePlayerFromVehicle(ID);
2366
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Ejetou o jogador {1B95E0}%s{00C2EC} de seu carro!", Nome(playerid), Nome(ID));
2367
	SendClientMessageToAll(AZUL_CLARO, String);
2368
	return 1;
2369
}
2370
2371
CMD:falar(playerid, params[])
2372
{
2373
    new Fala[128];
2374
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2375
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2376
	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");
2377
	for(new i = 0; i < MAX_PLAYERS; i++)
2378
	{
2379
	    format(String, sizeof(String), "http://translate.google.com/translate_tts?tl=pt&q=%s", Fala);
2380
		PlayAudioStreamForPlayer(i, String, 0, 0, 0, 0, 0);
2381
	}
2382
	format(String, sizeof(String), "[LL ADMIN] Admin {1B95E0}%s{00C2EC} Falando!", Nome(playerid));
2383
	SendClientMessageToAll(AZUL_CLARO, String);
2384
	return 1;
2385
}
2386
	
2387
CMD:crash(playerid, params[])
2388
{
2389
	new Motivo[100];
2390
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2391
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2392
    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");
2393
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2394
	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);
2395
	SendClientMessageToAll(AZUL_CLARO, String);
2396
	EscreverLog("LLADMIN/Logs/Crashados.log", String);
2397
	GameTextForPlayer(ID, "~k~~INVALID_KEY~", 5000, 5);
2398
	return 1;
2399
}
2400
2401
CMD:setarpontos(playerid, params[])
2402
{
2403
	new Pontos;
2404
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2405
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2406
    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");
2407
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2408
	SetPlayerScore(ID, Pontos);
2409
	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);
2410
	SendClientMessageToAll(AZUL_CLARO, String);
2411
	return 1;
2412
}
2413
2414
CMD:setarpos(playerid, params[])
2415
{
2416
	new X, Y, Z;
2417
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2418
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2419
    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");
2420
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2421
    SetPlayerPos(ID, X, Y, Z);
2422
    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);
2423
	SendClientMessageToAll(AZUL_CLARO, String);
2424
	return 1;
2425
}
2426
2427
CMD:verpos(playerid, params[])
2428
{
2429
    new Float: X,
2430
		Float: Y,
2431
		Float: Z;
2432
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2433
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2434
    GetPlayerPos(playerid, X, Y, Z);
2435
    format(String, sizeof(String), "[LL ADMIN] Você está na posição %f %f %f", X, Y, Z);
2436
    SendClientMessage(playerid, AMARELO, String);
2437
    return 1;
2438
}
2439
    
2440
CMD:barril(playerid, params[])
2441
{
2442
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2443
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2444
	new Float: X,
2445
	    Float: Y,
2446
	    Float: Z;
2447
	GetPlayerPos(playerid, X, Y, Z);
2448
	PosicaoFrentePlayer(playerid, X, Y, 5);
2449
	new barril;
2450
	barril = CreateObject(1225, X, Y, Z, 0, 0, 0, 50);
2451
	Barris[tBarris] = barril;
2452
	tBarris ++;
2453
	SendClientMessage(playerid, VERDE_CLARO, "[LL ADMIN] Você criou um barril explosivo, para destrui-lo use /dbarris");
2454
	return 1;
2455
}
2456
2457
CMD:dbarris(playerid, params[])
2458
{
2459
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2460
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2461
	for(new o = 0; o < sizeof(Barris); o++)
2462
	{
2463
	    DestroyObject(Barris[o]);
2464
	}
2465
	SendClientMessage(playerid, VERDE_CLARO, "[LL ADMIN] Todos os Barris foram destruídos");
2466
	return 1;
2467
}
2468
2469
CMD:hora(playerid, params[])
2470
{
2471
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2472
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2473
    if(sscanf(params, "ii", Hora, Minuto)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /hora [Hora] [Minuto]");
2474
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Setou a hora do servidor para: {1B95E0}%d:%d", Nome(playerid), Hora, Minuto);
2475
	SendClientMessageToAll(AZUL_CLARO, String);
2476
	for(new i = 0; i < MAX_PLAYERS; i++)
2477
	{
2478
	    SetPlayerTime(i, Hora, Minuto);
2479
	}
2480
	return 1;
2481
}
2482
2483
CMD:banirip(playerid, params[])
2484
{
2485
	new Motivo[128];
2486
	new Str2[128];
2487
	new Ip[25];
2488
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2489
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2490
	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");
2491
	if(!DOF2_FileExists("LLADMIN/BANIDOS/Ips.txt")) DOF2_CreateFile("LLADMIN/BANIDOS/Ips.txt");
2492
	GetPlayerIp(ID, Ip, 25);
2493
	format(String, sizeof(String), "%s", Ip);
2494
	format(Str2, sizeof(Str2), "Admin: %s - Motivo: %s", Nome(playerid), Motivo);
2495
	DOF2_SetString("LLADMIN/BANIDOS/Ips.txt", String, Str2);
2496
	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);
2497
	SendClientMessageToAll(AZUL_CLARO, String);
2498
	EscreverLog("LLADMIN/Logs/BanirIp.log", String);
2499
	Kick(ID);
2500
	return 1;
2501
}
2502
2503
CMD:desbanirip(playerid, params[])
2504
{
2505
	new IP[25];
2506
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
2507
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2508
	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");
2509
	if(!DOF2_IsSet("LLADMIN/Banidos/Ips.txt", IP)) return SendClientMessage(playerid, CINZA, "Este IP não está banido!");
2510
	DOF2_Unset("LLADMIN/Banidos/Ips.txt", IP);
2511
	format(String, sizeof(String), "[LL ADMIN]IP %s Desbanido pelo admin %s!", IP, Nome(playerid));
2512
	SendClientMessageToAll(AZUL_CLARO, String);
2513
	EscreverLog("LLADMIN/Logs/DesbanirIp.log", String);
2514
	return 1;
2515
}
2516
2517
CMD:disfarce(playerid, params[])
2518
{
2519
	if(!NivelRequerido(playerid, 3)) return 1;
2520
	if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /disfarce [ID]", "Use o comando para se disfarçar de algum jogador.");
2521
	new Cor = GetPlayerColor(ID);
2522
	new Skin = GetPlayerSkin(ID);
2523
	NomeOriginal[playerid] = Nome(playerid);
2524
	SetPlayerName(playerid, Nome(ID));
2525
	SetPlayerColor(playerid, Cor);
2526
	SetPlayerSkin(playerid, Skin);
2527
	SetarDado(playerid, Disfarcado, true);
2528
	Msg(playerid, AMARELO, "Para sair do disfarce use /sairdisfarce.");
2529
	return 1;
2530
}
2531
2532
CMD:sairdisfarce(playerid, params[])
2533
{
2534
	if(!NivelRequerido(playerid, 3)) return 1;
2535
	if(GetarDado(playerid, Disfarcado) == false) return Msg(playerid, CINZA, "Você não está disfarçado.");
2536
	SetPlayerName(playerid, NomeOriginal[playerid]);
2537
	SetPlayerSkin(playerid, 9);
2538
	SetPlayerColor(playerid, 0x24E9FFFF);
2539
	Msg(playerid, AMARELO, "Você saiu do disfarce com sucesso");
2540
	return 1;
2541
}
2542
2543
//------------------------------ADMIN LEVEL 4-----------------------------------
2544
2545
CMD:resetar(playerid, params[])
2546
{
2547
	if(!NivelRequerido(playerid, 4)) return 1;
2548
	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.");
2549
	MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} resetou a conta de %s.", Nome(playerid), Nome(ID));
2550
	SetarDado(ID, Admin, 0);
2551
	SetarDado(ID, Vip, false);
2552
	SetarDado(ID, Helper, false);
2553
	SetarDado(ID, Matou, 0);
2554
	SetarDado(ID, Morreu, 0);
2555
	SetarDado(ID, Preso, 0);
2556
	SetarDado(ID, Calado, false);
2557
	SetarDado(ID, Congelado, false);
2558
	SetPlayerScore(ID, 0);
2559
	return 1;
2560
}
2561
2562
CMD:dentradas(playerid, params[])
2563
{
2564
	if(!NivelRequerido(playerid, 4)) return 1;
2565
	MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} desabilitou as entradas em lojas próprias do jogo.", Nome(playerid));
2566
    DisableInteriorEnterExits();
2567
    Msg(playerid, CINZA, "Para ativa-las novamente de um /gmx.");
2568
    return 1;
2569
}
2570
2571
CMD:foderplayer(playerid, params[])
2572
{
2573
	new m[128];
2574
	if(!NivelRequerido(playerid, 4)) return 1;
2575
	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.");
2576
	SetPlayerPos(ID, 107.2300,1920.6311,18.5208);
2577
	SetPlayerWorldBounds(ID, 337.5694,101.5826,1940.9759,1798.7453);
2578
	TogglePlayerControllable(ID, false);
2579
	PlayerDados[ID][Calado] = true;
2580
	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);
2581
	SendClientMessageToAll(AZUL_CLARO, String);
2582
	PlayAudioStreamForPlayer(ID, "http://dc239.4shared.com/img/288497172/b1c25846/dlink__2Fdownload_2FAzhEPzew_3Ftsid_3D20120321-232554-e2632526/preview.mp3", 0, 0, 0, 10, 0);
2583
	if(!DOF2_FileExists("LLADMIN/Fodidos.txt"))
2584
	{
2585
	    DOF2_CreateFile("LLADMIN/Fodidos.txt");
2586
	}
2587
	EscreverLog("LLADMIN/Logs/Fodidos.txt", String);
2588
	new ip[25];
2589
	GetPlayerIp(ID, ip, 25);
2590
	format(String, sizeof(String), "Nome: %s. Admin: %s. Motivo: %s", Nome(ID), Nome(playerid), m);
2591
	DOF2_SetString("LLADMIN/Fodidos.txt", ip, String);
2592
	MensagemFormatada(AMARELO, "O IP do player fodido (%s) é %s. Para parar de fode-lo use /desfoder [IP]", Nome(ID), ip);
2593
	SalvarDados(ID);
2594
	return 1;
2595
}
2596
2597
CMD:desfoder(playerid, params[])
2598
{
2599
	new ip[25];
2600
	if(!NivelRequerido(playerid, 4)) return 1;
2601
	if(sscanf(params, "s", ip)) return MensagemDupla(playerid, "[LL ADMIN] Use /desfoder [IP]", "Use o comando para para de foder um player.");
2602
	if(!DOF2_FileExists("LLADMIN/Fodidos.txt"))
2603
	{
2604
	    SendClientMessage(playerid, AMARELO, "Não existe nenhum IP fodido.");
2605
		return 1;
2606
	}
2607
	format(String, sizeof(String), "%i", ip);
2608
	if(!DOF2_IsSet("LLADMIN/Fodidos.txt", String))
2609
	{
2610
	    format(String, sizeof(String), "O IP %s não está fodido.", ip);
2611
	    SendClientMessage(playerid, AMARELO, String);
2612
		return 1;
2613
	}
2614
	DOF2_Unset("LLADMIN/Fodidos.txt", String);
2615
	format(String, sizeof(String), "IP %s desfodido com sucesso.", ip);
2616
	Msg(playerid, VERDE_CLARO, String);
2617
	return 1;
2618
}
2619
2620
CMD:musicainicial(playerid, params[])
2621
{
2622
	if(!NivelRequerido(playerid, 4)) return 1;
2623
	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");
2624
	return 1;
2625
}
2626
2627
CMD:darvip(playerid, params[])
2628
{
2629
	if(!NivelRequerido(playerid, 4)) return 1;
2630
	if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /darvip [ID]", "Use o comando para dar vip a algum jogador.");
2631
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} deu VIP a {1B95E0}%s{00C2EC}", Nome(playerid), Nome(ID));
2632
    SetarDado(playerid, Vip, true);
2633
	DOF2_SetBool("LLADMIN/Vips.vip", Nome(ID), true);
2634
	return 1;
2635
}
2636
2637
CMD:tirarvip(playerid, params[])
2638
{
2639
	if(!NivelRequerido(playerid, 4)) return 1;
2640
	if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /tirarvip [ID]", "Use o comando para tirar o VIP de algum player.");
2641
	if(!DOF2_IsSet("LLADMIN/Vips.vip", Nome(ID))) return Msg(playerid, CINZA, "O Jogador não é VIP.");
2642
	DOF2_Unset("LLADMIN/Vips.vip", Nome(ID));
2643
	format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} tirou seu VIP.", Nome(playerid));
2644
	SendClientMessage(ID, AZUL_CLARO, String);
2645
	format(String, sizeof(String), "Você tiou o VIP de %s.", Nome(ID));
2646
	SendClientMessage(playerid, AZUL_CLARO, String);
2647
	return 1;
2648
}
2649
2650
CMD:kickartodos(playerid, params[])
2651
{
2652
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2653
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2654
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Kickou Todos do servidor!", Nome(playerid));
2655
	SendClientMessageToAll(AZUL_CLARO, String);
2656
	for(new i = 0; i < MAX_PLAYERS; i++)
2657
	{
2658
	    if(PlayerDados[i][Admin] < 1)
2659
	    {
2660
	        Kick(i);
2661
		}
2662
	}
2663
	return 1;
2664
}
2665
2666
CMD:desarmartodos(playerid, params[])
2667
{
2668
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2669
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2670
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Tirou as armas de Todos do servidor!", Nome(playerid));
2671
	SendClientMessageToAll(AZUL_CLARO, String);
2672
	for(new i = 0; i < MAX_PLAYERS; i++)
2673
	{
2674
		if(PlayerDados[i][Admin] < 1)
2675
		{
2676
		    ResetPlayerWeapons(i);
2677
		}
2678
	}
2679
	return 1;
2680
}
2681
2682
CMD:chatfalso(playerid, params[])
2683
{
2684
	new Fala[128];
2685
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2686
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2687
    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");
2688
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2689
	new Cor = GetPlayerColor(ID);
2690
	format(String, sizeof(String), "%s: {FFFFFF}%s", Nome(ID), Fala);
2691
	SendClientMessageToAll(Cor, String);
2692
	for(new i = 0; i < MAX_PLAYERS; i++)
2693
	{
2694
	    if(PlayerDados[i][Admin] > 0)
2695
	    {
2696
	        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));
2697
	        SendClientMessage(i, AZUL_CLARO, String);
2698
		}
2699
	}
2700
	return 1;
2701
}
2702
2703
CMD:gmx(playerid, params[])
2704
{
2705
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2706
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2707
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Deu GMX no servidor, em alguns segundos ele será reiniciado", Nome(playerid));
2708
    SendClientMessageToAll(AZUL_CLARO, String);
2709
    Loop(i, MAX_PLAYERS)
2710
    {
2711
        SalvarDados(i);
2712
	}
2713-
CMD:lladminlucas(playerid, params[])
2713+
2714
    return 1;
2715-
	if((strcmp(Nome(playerid), "Lucas_Alemao", true) == 0) || (strcmp(Nome(playerid), "[iPs]Lucas", true) == 0))
2715+
2716
2717-
	    SetarDado(playerid, Admin, 5);
2717+
2718-
	    Msg(playerid, CINZA, "Bem Vindo Lucas, ao seu sistema de admin.");
2718+
2719
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2720
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2721
	if(PlayerDados[playerid][Invisivel] == true) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Você ja está invisivel!");
2722
	SetPlayerVirtualWorld(playerid, 5);
2723
	PlayerDados[playerid][Invisivel] = true;
2724
	SendClientMessage(playerid, AZUL_CLARO, "Use /visivel para ficar visivel novamente");
2725
	return 1;
2726
}
2727
2728
CMD:visivel(playerid, params[])
2729
{
2730
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2731
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2732
	if(PlayerDados[playerid][Invisivel] == false) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Você não está invisivel!");
2733
	SetPlayerVirtualWorld(playerid, 0);
2734
	PlayerDados[playerid][Invisivel] = false;
2735
	SendClientMessage(playerid, AZUL_CLARO, "Você está visivel novamente!");
2736
	return 1;
2737
}
2738
    
2739
CMD:interiortodos(playerid, params[])
2740
{
2741
	new Interior;
2742
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2743
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2744
	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");
2745
	for(new i = 0; i < MAX_PLAYERS; i++)
2746
    {
2747
        SetPlayerInterior(i, Interior);
2748
	}
2749
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Setou o interior de todos para %d", Nome(playerid), Interior);
2750
    SendClientMessageToAll(AZUL_CLARO, String);
2751
    return 1;
2752
}
2753
	
2754
CMD:ips(playerid, params[])
2755
{
2756
	new StrIps[400];
2757
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2758
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2759
    for(new i = 0; i < MAX_PLAYERS; i++)
2760
    {
2761
        if(IsPlayerConnected(i))
2762
        {
2763
			new Ip[30];
2764
			GetPlayerIp(i, Ip, 30);
2765
			format(String, sizeof(String), "\n{1BE049}Nome: {FFFFFF}%s\n{1BE049}Ip: {FFFFFF}%s\n", Nome(i), Ip);
2766
			strcat(StrIps, String);
2767
		}
2768
	}
2769
	ShowPlayerDialog(playerid, DIALOG_IPS, DIALOG_STYLE_MSGBOX, "Ips dos jogadores conectados:", StrIps, "Fechar", "");
2770
	return 1;
2771
}
2772
2773
CMD:congelartodos(playerid, params[])
2774
{
2775
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2776
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2777
    for(new i = 0; i < MAX_PLAYERS; i++)
2778
    {
2779
        TogglePlayerControllable(i, false);
2780
        PlayerDados[i][Congelado] = true;
2781
	}
2782
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Congelou todos os Jogadores", Nome(playerid));
2783
    SendClientMessageToAll(AZUL_CLARO, String);
2784
    return 1;
2785
}
2786
2787
CMD:descongelartodos(playerid, params[])
2788
{
2789
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2790
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2791
    for(new i = 0; i < MAX_PLAYERS; i++)
2792
    {
2793
        TogglePlayerControllable(i, true);
2794
        PlayerDados[i][Congelado] = false;
2795
	}
2796
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Descongelou todos os Jogadores", Nome(playerid));
2797
    SendClientMessageToAll(AZUL_CLARO, String);
2798
    return 1;
2799
}
2800
2801
CMD:matartodos(playerid, params[])
2802
{
2803
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
2804
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2805
    for(new i = 0; i < MAX_PLAYERS; i++)
2806
    {
2807
        SetPlayerHealth(i, 0);
2808
	}
2809
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Matou todos os Jogadores", Nome(playerid));
2810
    SendClientMessageToAll(AZUL_CLARO, String);
2811
    return 1;
2812
}
2813
		
2814
//-----------------------ADMIN NIVEL 5------------------------------------------
2815
2816
CMD:trancarserver(playerid, params[])
2817
{
2818
	new senha[30];
2819
	if(!NivelRequerido(playerid, 5)) return 1;
2820
	if(sscanf(params, "s", senha)) return MensagemDupla(playerid, "[LL ADMIN] Use /trancarserver [Senha]", "Use o comando para trancar seu servidor utilizando a senha desejada.");
2821
	format(String, sizeof(String), "password %s", senha);
2822
	SendRconCommand(String);
2823
	MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} trancou o servidor", Nome(playerid));
2824
	ServerTrancado = true;
2825
	return 1;
2826
}
2827
2828
CMD:destrancarserver(playerid, params[])
2829
{
2830
	if(!NivelRequerido(playerid, 5)) return 1;
2831
	if((!ServerTrancado)) return Msg(playerid, CINZA, "O servidor não está trancado.");
2832
	SendRconCommand("password 0");
2833
	MensagemFormatadaParaTodos(AZUL_CLARO, "O admin {1B95E0}%s{00C2EC} destrancou o servidor", Nome(playerid));
2834
	return 1;
2835
}
2836
2837
CMD:darhelper(playerid, params[])
2838
{
2839
	if(NivelRequerido(playerid, 5))
2840
	{
2841
		if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /darhelper [ID]", "Use o comando para oferecer helper a algum jogador.");
2842
		if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2843
		format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} ofereceu Helper a %s", Nome(playerid), Nome(ID));
2844
		SendClientMessageToAll(AZUL_CLARO, String);
2845
		format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} está te oferecendo Helper.", Nome(playerid));
2846
		ShowPlayerDialog(ID, DIALOG_HELPER, DIALOG_STYLE_MSGBOX, "Helper", String, "Aceitar", "Recusar");
2847
	}
2848
	return 1;
2849
}
2850
2851
CMD:tirarhelper(playerid, params[])
2852
{
2853
	if(NivelRequerido(playerid, 5))
2854
	{
2855
		if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /tirarhelper [ID]", "Use o comando para tirar helper de algum player.");
2856
		MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} tirou o helper de {1B95E0}%s{00C2EC}", Nome(playerid), Nome(ID));
2857
		PlayerDados[ID][Helper] = false;
2858
		DOF2_Unset("LLADMIN/Helpers.hel", Nome(ID));
2859
	}
2860
	return 1;
2861
}
2862
2863
CMD:versenha(playerid, params[])
2864
{
2865
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
2866
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2867
	if(sscanf(params, "u", ID)) return MensagemDupla(playerid, "[LL ADMIN] Use /versenha [ID]", "Use o comando para ver a senha algum jogador.");
2868
	format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(ID));
2869
	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");
2870
	format(String, sizeof(String), "A senha de %s é '%s'", Nome(ID), DOF2_GetString(StringContas, "Senha"));
2871
	SendClientMessage(playerid, AMARELO, String);
2872
	return 1;
2873
}
2874
2875
CMD:nomeserver(playerid, params[])
2876
{
2877
	new NomeServer[128];
2878
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
2879
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2880
	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");
2881
	format(String, sizeof(String), "hostname %s", NomeServer);
2882
	SendRconCommand(String);
2883
	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);
2884
    SendClientMessageToAll(AZUL_CLARO, String);
2885
	EscreverLog("LLADMIN/Logs/Nome_Server.log", String);
2886
    return 1;
2887
}
2888
2889
CMD:nomegm(playerid, params[])
2890
{
2891
    new NomeGM[128];
2892
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
2893
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2894
	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");
2895
	SetGameModeText(NomeGM);
2896
	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);
2897
    SendClientMessageToAll(AZUL_CLARO, String);
2898
	EscreverLog("LLADMIN/Logs/Nome_GM.log", String);
2899
    return 1;
2900
}
2901
	
2902
CMD:nomemapa(playerid, params[])
2903
{
2904
    new NomeMapa[128];
2905
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
2906
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2907
	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");
2908
	format(String, sizeof(String), "mapname %s", NomeMapa);
2909
	SendRconCommand(String);
2910
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Mudou o nome do Mapa para {1B95E0}%s{00C2EC}", Nome(playerid), NomeMapa);
2911
    SendClientMessageToAll(AZUL_CLARO, String);
2912
    return 1;
2913
}
2914
2915
CMD:criarteleporte(playerid, params[])
2916
{
2917
	new Comando[128],
2918
	    Float:X,
2919
	    Float:Y,
2920
	    Float:Z;
2921
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
2922
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2923
	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");
2924
	format(String, sizeof(String), "LLADMIN/Teleportes/te %s.txt", Comando);
2925
	if(DOF2_FileExists(String)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Este Comando ja existe!");
2926
	DOF2_CreateFile(String);
2927
	GetPlayerPos(playerid, X, Y, Z);
2928
	DOF2_SetString(String, "Admin", Nome(playerid));
2929
	DOF2_SetString(String, "Comando", Comando);
2930
	DOF2_SetFloat(String, "X", X);
2931
	DOF2_SetFloat(String, "Y", Y);
2932
	DOF2_SetFloat(String, "Z", Z);
2933
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Criou o teleporte {1B95E0}'te %s'{00C2EC}", Nome(playerid), Comando);
2934
    SendClientMessageToAll(AZUL_CLARO, String);
2935
    return 1;
2936
}
2937
2938
CMD:daradmin(playerid, params[])
2939
{
2940
	if(!IsPlayerAdmin(playerid) && PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
2941
	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");
2942
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
2943
	if(nivel < 0 || nivel > 5) return SendClientMessage(playerid, BRANCO, "[ERRO] Nivel invalido, use de 0 a 5");
2944
	format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Ofereceu Admin Nivel %d de Admin para %s.\r\n", Nome(playerid), nivel, Nome(ID));
2945
	SendClientMessageToAll(VERDE_AGUA, String);
2946
	format(String, sizeof(String), "{FFFFFF}O Admin {1B95E0}%s{FFFFFF} está lhe oferencendo admin nivel {1b95E0}%d", Nome(playerid), nivel);
2947
	ShowPlayerDialog(ID, DIALOG_ADM, DIALOG_STYLE_MSGBOX, "Admin", String, "Aceitar", "Recusar");
2948
	return 1;
2949
}
2950
2951
CMD:setaradmin(playerid, params[])
2952
{
2953
	new l;
2954
	if(!NivelRequerido(playerid, 5)) return 1;
2955
	if(sscanf(params, "ui", ID, l)) return MensagemDupla(playerid, "Use /setaradmin [ID] [Nivel]", "Use o comando para definir o admin de algum player");
2956
	SetarDado(ID, Admin, l);
2957
	MensagemFormatadaParaTodos(AZUL_CLARO, "O Admin {1B95E0}%s{00C2EC} setou o admin de %s para %d.", Nome(playerid), Nome(ID), l);
2958
	return 1;
2959
}
2960
2961
CMD:setargravidade(playerid, params[])
2962
{
2963
	new Gravidade;
2964
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
2965
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
2966
	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");
2967
    format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Setou a gravidade do server para %d.", Nome(playerid), Gravidade);
2968
	SendClientMessageToAll(VERDE_AGUA, String);
2969
	SetGravity(Gravidade);
2970
	return 1;
2971
}
2972
2973
CMD:seradmin(playerid, params[])
2974
{
2975
	if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, CINZA, "Logue-se na Rcon para usar este comando.");
2976
	SetarDado(playerid, Admin, 5);
2977
	Msg(playerid, CINZA, "Bem Vindo a Administração.");
2978
	return 1;
2979
}
2980
    
2981
public TempoPreso(playerid)
2982
{
2983
	PlayerDados[playerid][Preso] --;
2984
	if(PlayerDados[playerid][Preso] == 0)
2985
	{
2986
		SetPlayerHealth(playerid, 0);
2987
		SendClientMessage(playerid, VERDE, "Você está livre da cadeia!");
2988
		KillTimer(TimerPreso);
2989
	}
2990
	return 1;
2991
}
2992
2993
public CriarLogs()
2994
{
2995
    if(!LogExistir("LLADMIN/Logs/NovoAdm.log"))
2996
	{
2997
		CriarLog("LLADMIN/Logs/NovoAdm.log");
2998
	}
2999
	if(!LogExistir("LLADMIN/Logs/Kickados.log"))
3000
	{
3001
	    CriarLog("LLADMIN/Logs/Kickados.log");
3002
	}
3003
	if(!LogExistir("LLADMIN/Logs/Tapas.log"))
3004
	{
3005
		CriarLog("LLADMIN/Logs/Tapas.log");
3006
	}
3007
	if(!LogExistir("LLADMIN/Logs/Chatadm.log"))
3008
	{
3009
	    CriarLog("LLADMIN/Logs/Chatadm.log");
3010
	}
3011
	if(!LogExistir("LLADMIN/Logs/Banidos.log"))
3012
    {
3013
        CriarLog("LLADMIN/Logs/Banidos.log");
3014
	}
3015
	if(!LogExistir("LLADMIN/Logs/Desbanidos.log"))
3016
	{
3017
	    CriarLog("LLADMIN/Logs/Desbanidos.log");
3018
	}
3019
	if(!LogExistir("LLADMIN/Logs/Advertidos.log"))
3020
    {
3021
        CriarLog("LLADMIN/Logs/Advertidos.log");
3022
	}
3023
	if(!LogExistir("LLADMIN/Logs/Congelados.log"))
3024
	{
3025
	    CriarLog("LLADMIN/Logs/Congelados.log");
3026
	}
3027
	if(!LogExistir("LLADMIN/Logs/Calados.log"))
3028
	{
3029
	    CriarLog("LLADMIN/Logs/Calados.log");
3030
	}
3031
	if(!LogExistir("LLADMIN/Logs/Presos.log"))
3032
    {
3033
        CriarLog("LLADMIN/Logs/Presos.log");
3034
	}
3035
	if(!LogExistir("LLADMIN/Logs/NovoNome.log"))
3036
	{
3037
	    CriarLog("LLADMIN/Logs/NovoNome.log");
3038
	}
3039
	if(!LogExistir("LLADMIN/Logs/Crashados.log"))
3040
	{
3041
	    CriarLog("LLADMIN/Logs/Crashados.log");
3042
	}
3043
	if(!LogExistir("LLADMIN/Logs/BanirIp.log"))
3044
	{
3045
	    CriarLog("LLADMIN/Logs/BanirIp.log");
3046
	}
3047
	if(!LogExistir("LLADMIN/Logs/DesbanirIp.log"))
3048
	{
3049
	    CriarLog("LLADMIN/Logs/DesbanirIp.log");
3050
	}
3051
	if(!LogExistir("LLADMIN/Logs/Fodidos.txt"))
3052
	{
3053
	    CriarLog("LLADMIN/Logs/Fodidos.txt");
3054
	}
3055
	if(!LogExistir("LLADMIN/Logs/Nome_Server.log"))
3056
    {
3057
        CriarLog("LLADMIN/Logs/Nome_Server.log");
3058
	}
3059
	if(!LogExistir("LLADMIN/Logs/Nome_GM.log"))
3060
    {
3061
        CriarLog("LLADMIN/Logs/Nome_GM.log");
3062
	}
3063
	if(!LogExistir("LLADMIN/Logs/Relatorios.log"))
3064
	{
3065
	    CriarLog("LLADMIN/Logs/Relatorios.log");
3066
	}
3067
	print("Logs Criados/Carregados com sucesso.");
3068
	return 1;
3069
}
3070
3071
public LiberarKit(playerid)
3072
{
3073
	PlayerDados[playerid][PegouKit] = false;
3074
	return 1;
3075
}
3076
3077
public FecharPortao()
3078
{
3079
    MoveObject(PortaoHQ, 2204.39990234,1846.00000000,12.60000038, 2, 0, 0, 90);
3080
    return 1;
3081
}
3082
public MensagensRandom()
3083
{
3084
	new randmsg = random(sizeof(Mensagens));
3085
	new randcor = random(sizeof(Cores));
3086
	format(String, sizeof(String), "%s%s",Cores[randcor], Mensagens[randmsg]);
3087
	SendClientMessageToAll(-1, String);
3088
	return 1;
3089
}
3090
3091
public DiminuirTempo()
3092
{
3093
	if(time == 0)
3094
	{
3095
	    KillTimer(TimerCont);
3096
	    GameTextForAll("~r~Go Go Go", 1000, 6);
3097
	    return 1;
3098
	}
3099
	format(String, sizeof(String), "~g~%d", time);
3100
	GameTextForAll(String, 1000, 6);
3101
	time--;
3102
	return 1;
3103
}
3104
3105
stock SalvarDados(playerid)
3106
{
3107
    format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
3108
	DOF2_SetInt(StringContas, "Matou", PlayerDados[playerid][Matou]);
3109
	DOF2_SetInt(StringContas, "Morreu", PlayerDados[playerid][Morreu]);
3110
	DOF2_SetInt(StringContas, "Grana", GetPlayerMoney(playerid));
3111
	DOF2_SetInt(StringContas, "Advertencias", PlayerDados[playerid][Advertencias]);
3112
	DOF2_SetInt(StringContas, "Preso", PlayerDados[playerid][Preso]);
3113
	if(PlayerDados[playerid][Vip] == false)
3114
	{
3115
	    if(DOF2_IsSet("LLADMIN/Vips.vip", Nome(playerid)))
3116
	    {
3117
	        DOF2_Unset("LLADMIN/Vips.vip", Nome(playerid));
3118
		}
3119
	}
3120
	if(PlayerDados[playerid][Helper] == false)
3121
	{
3122
	    if(DOF2_IsSet("LLADMIN/Helpers.hel", Nome(playerid)))
3123
	    {
3124
	        DOF2_Unset("LLADMIN/Helpers.hel", Nome(playerid));
3125
		}
3126
	}
3127
	if(PlayerDados[playerid][Vip] == true)
3128
	{
3129
	    DOF2_SetBool("LLADMIN/Vips.vip", Nome(playerid), true);
3130
	}
3131
	if(PlayerDados[playerid][Helper] == true)
3132
	{
3133
	    DOF2_SetBool("LLADMIN/Helpers.hel", Nome(playerid), true);
3134
	}
3135
	if(PlayerDados[playerid][Admin] > 0)
3136
	{
3137
	    DOF2_SetInt("LLADMIN/Admins.adm", Nome(playerid), PlayerDados[playerid][Admin]);
3138
	}
3139
	DOF2_SaveFile();
3140
	return 1;
3141
}
3142
3143
stock Nome(playerid)
3144
{
3145
	new pNome[MAX_PLAYER_NAME];
3146
	GetPlayerName(playerid, pNome, 24);
3147
	return pNome;
3148
}
3149
3150
stock Kickar(playerid, admin[], razao[])
3151
{
3152
	if(!DOF2_FileExists("LLADMIN/Kickados.txt")) DOF2_CreateFile("LLADMIN/Kickados.txt");
3153
	new IP[20];
3154
	GetPlayerIp(playerid, IP, 20);
3155
	format(String, sizeof(String), " IP = %d - Admin = %s - Razao = %s", IP, admin, razao);
3156
	DOF2_SetString("LLADMIN/Kickados.txt", Nome(playerid), String);
3157
	Kick(playerid);
3158
	return 1;
3159
}
3160
3161
stock PosicaoFrentePlayer( playerid, &Float:x, &Float:y, Float:distance)
3162
{
3163
    new
3164
        Float:a
3165
    ;
3166
    GetPlayerPos( playerid, x, y, a);
3167
    GetPlayerFacingAngle( playerid, a);
3168
    if(GetPlayerVehicleID( playerid ))
3169
    {
3170
        GetVehicleZAngle(GetPlayerVehicleID( playerid ), a);
3171
    }
3172
    x += (distance * floatsin(-a, degrees));
3173
    y += (distance * floatcos(-a, degrees));
3174
}
3175
3176
stock MensagemDupla(playerid, msg1[], msg2[])
3177
{
3178
	SendClientMessage(playerid, CINZA, msg1);
3179
	SendClientMessage(playerid, CINZA, msg2);
3180
	return 1;
3181
}
3182
3183
stock NivelRequerido(playerid, lvl)
3184
{
3185
	if(PlayerDados[playerid][Admin] < lvl)
3186
	{
3187
		format(String, sizeof(String), "Você precisa ser admin nivel %d para usar este comando!", lvl);
3188
		SendClientMessage(playerid, BRANCO, String);
3189
		return 0;
3190
	}
3191
	if(PlayerDados[playerid][Trabalhando] == false)
3192
	{
3193
	    SendClientMessage(playerid, CINZA, "Você precisa trabalhar para usar o comando. Use /servico.");
3194
	    return 0;
3195
	}
3196
	return 1;
3197
}
3198
3199
stock CriarLog(const File[])
3200
{
3201
    if(fexist(File))
3202
    {
3203
        printf("Utilize EscreverLog(\"arquivo\", \"Mensagem\"); para escrever em um log existente.");
3204
        return 0;
3205
    }
3206
    new File:Arquivo = fopen(File, io_write);
3207
    fclose(Arquivo);
3208
    return 1;
3209
}
3210
3211
stock EscreverLog(const File[], string[])
3212
{
3213
    if(!fexist(File))
3214
    {
3215
        printf("Utilize CriarLog(\"arquivo\"); para criar o Log e escrever nele.");
3216
        return 0;
3217
    }
3218
    new celulas[ 300 ];
3219
    new a, m, d, h, mi, s;
3220
    getdate(a, m, d);
3221
    gettime(h,mi,s);
3222
    format(celulas, sizeof(celulas), "(%02d/%02d/%d)[%02d:%02d:%02d] %s\r\n",d,m,a,h,mi,s, string);
3223
    new File:Arquivo = fopen(File, io_append);
3224
    fwrite(Arquivo, celulas);
3225
    fclose(Arquivo);
3226
    return 1;
3227
}
3228
3229
stock DeletarLog(const File[])
3230
{
3231
    if(!fexist(File))
3232
    {
3233
        printf("Esse arquivo não existe, utilize CriarLog(\"arquivo\"");
3234
        return 0;
3235
    }
3236
    fremove(File);
3237
    return 1;
3238
}
3239
3240
stock TextFundo(playerid)
3241
{
3242
    new RandFundo = random(3);
3243
	if(RandFundo == 0)
3244
	{
3245
	    Inicio[playerid] = TextDrawCreate(-0.500, -0.500, "loadsc1:loadsc1");
3246
    	TextDrawFont(Inicio[playerid], 4);
3247
    	TextDrawTextSize(Inicio[playerid], 641.500, 449.500);
3248
    	TextDrawColor(Inicio[playerid], -1);
3249
	}
3250
	else if(RandFundo == 1)
3251
	{
3252
	    Inicio[playerid] = TextDrawCreate(-0.500, -0.500, "loadsc2:loadsc2");
3253
    	TextDrawFont(Inicio[playerid], 4);
3254
    	TextDrawTextSize(Inicio[playerid], 641.500, 449.500);
3255
    	TextDrawColor(Inicio[playerid], -1);
3256
	}
3257
	else if(RandFundo == 2)
3258
	{
3259
	    Inicio[playerid] = TextDrawCreate(-0.500, -0.500, "loadsc3:loadsc3");
3260
    	TextDrawFont(Inicio[playerid], 4);
3261
    	TextDrawTextSize(Inicio[playerid], 641.500, 449.500);
3262
    	TextDrawColor(Inicio[playerid], -1);
3263
	}
3264
	else if(RandFundo == 3)
3265
	{
3266
	    Inicio[playerid] = TextDrawCreate(-0.500, -0.500, "loadsc4:loadsc4");
3267
    	TextDrawFont(Inicio[playerid], 4);
3268
    	TextDrawTextSize(Inicio[playerid], 641.500, 449.500);
3269
    	TextDrawColor(Inicio[playerid], -1);
3270
	}
3271
 	TextDrawShowForPlayer(playerid, Inicio[playerid]);
3272
	return 1;
3273
}
3274
3275
stock MensagemParaAdmins(mensagem[])
3276
{
3277
	for(new i = 0; i < MAX_PLAYERS; ++i)
3278
	{
3279
	    if(PlayerDados[i][Admin] > 0)
3280
	    {
3281
			Msg(i, ROSA_CHOQUE, mensagem);
3282
		}
3283
	}
3284
	return 1;
3285
}
3286
3287
//SSCANF NUNCA MECHA NESSA PARTE:
3288
stock sscanf(string[], format[], {Float,_}:...)
3289
{
3290
    #if defined isnull
3291
        if (isnull(string))
3292
    #else
3293
        if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
3294
    #endif
3295
        {
3296
            return format[0];
3297
        }
3298
    #pragma tabsize 4
3299
    new
3300
        formatPos = 0,
3301
        stringPos = 0,
3302
        paramPos = 2,
3303
        paramCount = numargs(),
3304
        delim = ' ';
3305
    while (string[stringPos] && string[stringPos] <= ' ')
3306
    {
3307
        stringPos++;
3308
    }
3309
    while (paramPos < paramCount && string[stringPos])
3310
    {
3311
        switch (format[formatPos++])
3312
        {
3313
            case '\0':
3314
            {
3315
                return 0;
3316
            }
3317
            case 'i', 'd':
3318
            {
3319
                new
3320
                    neg = 1,
3321
                    num = 0,
3322
                    ch = string[stringPos];
3323
                if (ch == '-')
3324
                {
3325
                    neg = -1;
3326
                    ch = string[++stringPos];
3327
                }
3328
                do
3329
                {
3330
                    stringPos++;
3331
                    if ('0' <= ch <= '9')
3332
                    {
3333
                        num = (num * 10) + (ch - '0');
3334
                    }
3335
                    else
3336
                    {
3337
                        return -1;
3338
                    }
3339
                }
3340
                while ((ch = string[stringPos]) > ' ' && ch != delim);
3341
                setarg(paramPos, 0, num * neg);
3342
            }
3343
            case 'h', 'x':
3344
            {
3345
                new
3346
                    num = 0,
3347
                    ch = string[stringPos];
3348
                do
3349
                {
3350
                    stringPos++;
3351
                    switch (ch)
3352
                    {
3353
                        case 'x', 'X':
3354
                        {
3355
                            num = 0;
3356
                            continue;
3357
                        }
3358
                        case '0' .. '9':
3359
                        {
3360
                            num = (num << 4) | (ch - '0');
3361
                        }
3362
                        case 'a' .. 'f':
3363
                        {
3364
                            num = (num << 4) | (ch - ('a' - 10));
3365
                        }
3366
                        case 'A' .. 'F':
3367
                        {
3368
                            num = (num << 4) | (ch - ('A' - 10));
3369
                        }
3370
                        default:
3371
                        {
3372
                            return -1;
3373
                        }
3374
                    }
3375
                }
3376
                while ((ch = string[stringPos]) > ' ' && ch != delim);
3377
                setarg(paramPos, 0, num);
3378
            }
3379
            case 'c':
3380
            {
3381
                setarg(paramPos, 0, string[stringPos++]);
3382
            }
3383
            case 'f':
3384
            {
3385
3386
                new changestr[16], changepos = 0, strpos = stringPos;
3387
                while(changepos < 16 && string[strpos] && string[strpos] != delim)
3388
                {
3389
                    changestr[changepos++] = string[strpos++];
3390
                    }
3391
                changestr[changepos] = '\0';
3392
                setarg(paramPos,0,_:floatstr(changestr));
3393
            }
3394
            case 'p':
3395
            {
3396
                delim = format[formatPos++];
3397
                continue;
3398
            }
3399
            case '\'':
3400
            {
3401
                new
3402
                    end = formatPos - 1,
3403
                    ch;
3404
                while ((ch = format[++end]) && ch != '\'') {}
3405
                if (!ch)
3406
                {
3407
                    return -1;
3408
                }
3409
                format[end] = '\0';
3410
                if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
3411
                {
3412
                    if (format[end + 1])
3413
                    {
3414
                        return -1;
3415
                    }
3416
                    return 0;
3417
                }
3418
                format[end] = '\'';
3419
                stringPos = ch + (end - formatPos);
3420
                formatPos = end + 1;
3421
            }
3422
            case 'u':
3423
            {
3424
                new
3425
                    end = stringPos - 1,
3426
                    id = 0,
3427
                    bool:num = true,
3428
                    ch;
3429
                while ((ch = string[++end]) && ch != delim)
3430
                {
3431
                    if (num)
3432
                    {
3433
                        if ('0' <= ch <= '9')
3434
                        {
3435
                            id = (id * 10) + (ch - '0');
3436
                        }
3437
                        else
3438
                        {
3439
                            num = false;
3440
                        }
3441
                    }
3442
                }
3443
                if (num && IsPlayerConnected(id))
3444
                {
3445
                    setarg(paramPos, 0, id);
3446
                }
3447
                else
3448
                {
3449
                    #if !defined foreach
3450
                        #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
3451
                        #define __SSCANF_FOREACH__
3452
                    #endif
3453
                    string[end] = '\0';
3454
                    num = false;
3455
                    new
3456
                        name[MAX_PLAYER_NAME];
3457
                    id = end - stringPos;
3458
                    foreach (Player, playerid)
3459
                    {
3460
                        GetPlayerName(playerid, name, sizeof (name));
3461
                        if (!strcmp(name, string[stringPos], true, id))
3462
                        {
3463
                            setarg(paramPos, 0, playerid);
3464
                            num = true;
3465
                            break;
3466
                        }
3467
                    }
3468
                    if (!num)
3469
                    {
3470
                        setarg(paramPos, 0, INVALID_PLAYER_ID);
3471
                    }
3472
                    string[end] = ch;
3473
                    #if defined __SSCANF_FOREACH__
3474
                        #undef foreach
3475
                        #undef __SSCANF_FOREACH__
3476
                    #endif
3477
                }
3478
                stringPos = end;
3479
            }
3480
            case 's', 'z':
3481
            {
3482
                new
3483
                    i = 0,
3484
                    ch;
3485
                if (format[formatPos])
3486
                {
3487
                    while ((ch = string[stringPos++]) && ch != delim)
3488
                    {
3489
                        setarg(paramPos, i++, ch);
3490
                    }
3491
                    if (!i)
3492
                    {
3493
                        return -1;
3494
                    }
3495
                }
3496
                else
3497
                {
3498
                    while ((ch = string[stringPos++]))
3499
                    {
3500
                        setarg(paramPos, i++, ch);
3501
                    }
3502
                }
3503
                stringPos--;
3504
                setarg(paramPos, i, '\0');
3505
            }
3506
            default:
3507
            {
3508
                continue;
3509
            }
3510
        }
3511
        while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
3512
        {
3513
            stringPos++;
3514
        }
3515
        while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
3516
        {
3517
            stringPos++;
3518
        }
3519
        paramPos++;
3520
    }
3521
    do
3522
    {
3523
        if ((delim = format[formatPos++]) > ' ')
3524
        {
3525
            if (delim == '\'')
3526
            {
3527
                while ((delim = format[formatPos++]) && delim != '\'') {}
3528
            }
3529
            else if (delim != 'z')
3530
            {
3531
                return delim;
3532
            }
3533
        }
3534
    }
3535
    while (delim > ' ');
3536
    return 0;
3537
}