View difference between Paste ID: j27SSZ3i and HmtAGg1U
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
 					  	  Agradecimento: Jim._.Carrey
9
				    	    Não retire os Créditos!!
10
						  
11
						  Inicio do Script: 04/02/2012
12
						   Final do Script: 11/02/2012
13
						   
14
15
*/
16
17
18
#include <a_samp>
19
#include <zcmd>
20
#include <sscanf2>
21
#include <DOF2>
22
23
#define VERDE                   0x21DD00FF
24
#define VERMELHO                0xFF030FFF
25
#define VERMELHO_ESCURO         0xE60000FF
26
#define VERMELHO_CLARO          0xFB0000FF
27
#define AMARELO                 0xFFFF00FF
28
#define LARANJA                 0xF97804FF
29
#define AZUL_CLARO              0x00C2ECFF
30
#define ROXO                    0xB360FDFF
31
#define BRANCO		    		0xFFFFFFFF
32
#define PRETO                   0x000000FF
33
#define AZUL                    0x1229FAFF
34
#define VERDE_CLARO             0x38FF06FF
35
#define ROSA_CHOQUE             0xE100E1FF
36
#define VERDE_ESCURO            0x008040FF
37
#define CINZA                   0xCECECEFF
38
#define ROSA                    0xD52DFFFF
39
#define CINZA_ESCURO       		0x626262FF
40
#define VERDE_AGUA       		0x03D687FF
41
42
#define DIALOG_REGISTRO    		4672
43
#define DIALOG_LOGIN            4673
44
#define DIALOG_BANIDO           4674
45
#define DIALOG_IPS              4675
46
#define DIALOG_INFO             4676
47
#define DIALOG_AL               4677
48
#define DIALOG_ADM              4678
49
50
forward TempoPreso(playerid);
51
forward VerificarPreso(playerid);
52
forward NomeCarro(playerid);
53
54
enum pInfo
55
{
56
	Senha,
57
	Matou,
58
	Morreu,
59
	Admin,
60
	Advertencias,
61
	Preso,
62
	bool:Congelado,
63
	bool:Assistindo,
64
	bool:Trabalhando,
65
	bool:Calado,
66
	bool:Invisivel
67
}
68
new PlayerDados[MAX_PLAYERS][pInfo];
69
new String[256];
70
new StringContas[256];
71
new ID;
72
new AdminNivel[50];
73
new AdminTrabalhando[50];
74
new Dia, Mes, Ano, Hora, Minuto, Segundo;
75
new CarrosCriados[100];
76
new TodosCarros = 0;
77
new Barris[100];
78
new tBarris = 0;
79
new TimerPreso;
80
new nivel;
81
82
public OnFilterScriptInit()
83
{
84
	print("\n\n\n\n\n");
85
	print("------------------------------------");
86
	print("Rodando FS LL-ADMIN");
87
	print("Feito por Lucas_Alemao");
88
	print("------------------------------------");
89
	print("\n\n\n\n\n");
90
	return 1;
91
}
92
public OnFilterScriptExit()
93
{
94
	for(new i; i <  MAX_PLAYERS; i++)
95
	{
96
	    format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(i));
97
	    DOF2_SetInt(StringContas, "Matou", PlayerDados[i][Matou]);
98
		DOF2_SetInt(StringContas, "Morreu", PlayerDados[i][Morreu]);
99
		DOF2_SetInt(StringContas, "Grana", GetPlayerMoney(i));
100
		DOF2_SetInt(StringContas, "Admin", PlayerDados[i][Admin]);
101
	}
102
	DOF2_Exit();
103
	return 1;
104
}
105
106
107
public OnPlayerConnect(playerid)
108
{
109
	PlayerDados[playerid][Admin] = 0;
110
	new strConta[80];
111
	new Ip[25];
112
	format(strConta, sizeof(strConta), "LLADMIN/Banidos/Contas/%s.txt", Nome(playerid));
113
	if(DOF2_FileExists(strConta))
114
	{
115
	    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"));
116
	    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"));
117
	    ShowPlayerDialog(playerid, DIALOG_BANIDO, DIALOG_STYLE_MSGBOX, "Banido!", String, "Fechar", "");
118
	    return 1;
119
	}
120
	GetPlayerIp(playerid, Ip, 25);
121
	if(DOF2_IsSet("LLADMIN/Banidos/Ips.txt", Ip))
122
	{
123
	    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));
124
        ShowPlayerDialog(playerid, DIALOG_BANIDO, DIALOG_STYLE_MSGBOX, "Banido!", String, "Fechar", "");
125
        return 1;
126
 	}
127
	format(String, sizeof(String), "%s Conectou ao servidor", Nome(playerid));
128
	SendClientMessageToAll(VERDE_CLARO, String);
129
	format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
130
	if(!DOF2_FileExists(StringContas))
131
	{
132
	    ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, "Registrando...", "Por Favor, para jogar se registre em \nNosso server :D\n\n{1BE0E0}Digite uma senha", "Registrar", "Sair");
133
		return 1;
134
	}
135
	else
136
	{
137
	    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Logando...", "Logue-se usando sua senha :D", "Logar", "Sair");
138
		return 1;
139
	}
140
}
141
142
public OnPlayerDisconnect(playerid, reason)
143
{
144
	SalvarDados(playerid);
145
	DOF2_Exit();
146
	return 1;
147
}
148
149
public OnPlayerSpawn(playerid)
150
{
151
	SetTimerEx("VerificarPreso", 1000, false, "i", playerid);
152
	ResetPlayerWeapons(playerid);
153
	PlayerDados[playerid][Admin] = DOF2_GetInt(StringContas, "Admin");
154
	return 1;
155
}
156
157
public VerificarPreso(playerid)
158
{
159
    if(PlayerDados[playerid][Preso] > 0)
160
	{
161
    	SetPlayerPos(ID, 264.6288,77.5742,1001.0391);
162
    	SetPlayerInterior(ID, 6);
163
    	SendClientMessage(playerid, VERMELHO, "Seu Tempo de Cadeia ainda não acabou!");
164
    	TimerPreso = SetTimerEx("TempoPreso", 1000, true, "i", playerid);
165
	}
166
	return 1;
167
}
168
169
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
170
{
171
	if(PlayerDados[playerid][Admin] > 0)
172
	{
173
	    if(PlayerDados[playerid][Trabalhando] == true)
174
	    {
175
			SetTimerEx("NomeCarro", 3500, false, "i", playerid);
176
		}
177
	}
178
	return 1;
179
}
180
181
public NomeCarro(playerid)
182
{
183
	new idc = GetPlayerVehicleID(playerid);
184
	format(String, sizeof(String), "[LL ADMIN] Veículo ID %d", idc);
185
	SendClientMessage(playerid, CINZA, String);
186
}
187
188
public OnPlayerDeath(playerid, killerid, reason)
189
{
190
	PlayerDados[playerid][Morreu]++;
191
	PlayerDados[killerid][Matou]++;
192
	return 1;
193
}
194
195
public OnPlayerText(playerid, text[])
196
{
197
	new str2[256];
198
	format(String, sizeof(String), "LLADMIN/Teleportes/%s.txt", text);
199
	if(DOF2_FileExists(String))
200
	{
201
   		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"));
202
		SendClientMessageToAll(AMARELO, str2);
203
		SetPlayerPos(playerid, DOF2_GetFloat(String, "X"), DOF2_GetFloat(String, "Y"), DOF2_GetFloat(String, "Z"));
204
		return 0;
205
	}
206
	if(PlayerDados[playerid][Calado] == true)
207
	{
208
	    SendClientMessage(playerid, BRANCO, "Você Está calado e não pode falar!");
209
	    return 0;
210
	}
211
	return 1;
212
}
213
214
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
215
{
216
	if(dialogid == DIALOG_REGISTRO)
217
	{
218
	    if(response)
219
	    {
220
	        if(!strlen(inputtext))
221
	        {
222
	            ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, "Registrando...", "Por Favor, para jogar se registre em \nNosso server :D\n\n{1BE0E0}Digite uma senha", "Registrar", "Sair");
223
	            SendClientMessage(playerid, VERMELHO, "Digite uma senha para se registrar ¬¬");
224
	            return 1;
225
			}
226
			format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
227
			DOF2_CreateFile(StringContas);
228
			DOF2_SetString(StringContas, "Senha", inputtext);
229
			DOF2_SetInt(StringContas, "Matou", 0);
230
			DOF2_SetInt(StringContas, "Morreu", 0);
231
			DOF2_SetInt(StringContas, "Grana", 0);
232
			DOF2_SetInt(StringContas, "Admin", 0);
233
			DOF2_SetInt(StringContas, "Advertencias", 0);
234
			DOF2_SetInt(StringContas, "Preso", 0);
235
			SendClientMessage(playerid, AZUL_CLARO, "Registrado Com Sucesso! você foi logado automaticamente");
236
			return 1;
237
		}
238
		else
239
		{
240
		    SendClientMessage(playerid, VERMELHO, "Você não quis se registrar e por isso foi kickado!");
241
			Kick(playerid);
242
			return 1;
243
		}
244
	}
245
	if(dialogid == DIALOG_LOGIN)
246
	{
247
	    if(response)
248
	    {
249
	        if(!strlen(inputtext))
250
	        {
251
	            ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Logando...", "Logue-se usando sua senha :D", "Logar", "Sair");
252
	            SendClientMessage(playerid, VERMELHO, "Digite sua senha para se logar ¬¬");
253
	            return 1;
254
			}
255
			format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
256-
			if(strcmp(inputtext, DOF2_GetString(StringContas, "Senha"), false))
256+
			if(strcmp(inputtext, DOF2_GetString(StringContas, "Senha"), true))
257
			{
258
                ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT, "Logando...", "Logue-se usando sua senha :D", "Logar", "Sair");
259
                SendClientMessage(playerid, VERMELHO_CLARO, "Senha incorreta!");
260
				return 1;
261
			}
262
			else
263
			{
264
				PlayerDados[playerid][Matou] = DOF2_GetInt(StringContas, "Matou");
265
				PlayerDados[playerid][Morreu] = DOF2_GetInt(StringContas, "Morreu");
266
				PlayerDados[playerid][Admin] = DOF2_GetInt(StringContas, "Admin");
267
				PlayerDados[playerid][Advertencias] = DOF2_GetInt(StringContas, "Advertencias");
268
				GivePlayerMoney(playerid, DOF2_GetInt(StringContas, "Grana"));
269
				PlayerDados[playerid][Preso] = DOF2_GetInt(StringContas, "Preso");
270
				SendClientMessage(playerid, VERDE_CLARO, "Logado Com sucesso!");
271
				if(PlayerDados[playerid][Admin] > 0)
272
				{
273
					format(String, sizeof(String), "Logado de Admin Nível %d", PlayerDados[playerid][Admin]);
274
					SendClientMessage(playerid, AZUL_CLARO, String);
275
					format(String, sizeof(String), "~w~Admin ~g~%s ~y~Online", Nome(playerid));
276
					GameTextForAll(String, 1000, 1);
277
					PlayerDados[playerid][Trabalhando] = true;
278
					SendClientMessage(playerid, AZUL_CLARO, "Você está trabalhando, para jogar use /jogar");
279
					SetPlayerColor(playerid, 0x24E9FFFF);
280
					SetPlayerHealth(playerid, 999999);
281
					return 1;
282
				}
283
				return 1;
284
			}
285
		}
286
		else
287
		{
288
		    SendClientMessage(playerid, VERMELHO, "Você não quis se Logar e por isso foi kickado!");
289
			Kick(playerid);
290
			return 1;
291
		}
292
	}
293
	if(dialogid == DIALOG_BANIDO)
294
	{
295
	    if(response)
296
	    {
297
	        SendClientMessage(playerid, BRANCO, "Kickado");
298
	        Kick(playerid);
299
		}
300
		return 1;
301
	}
302
	if(dialogid == DIALOG_ADM)
303
	{
304
	    if(response)
305
	    {
306
	        new File:DarAdmin = fopen("LLADMIN/Logs/Dar Admin.log", io_append);
307
			fwrite(DarAdmin, String);
308
			fclose(DarAdmin);
309
			PlayerDados[playerid][Admin] = nivel;
310
			SalvarDados(playerid);
311
			format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} é o mais novo admin do server!", Nome(playerid));
312
			SendClientMessageToAll(AZUL_CLARO, String);
313
		}
314
		if(!response)
315
		{
316
		    format(String, sizeof(String), "O Jogador {1B95E0}%s{00C2EC} recusou ser admin do server!", Nome(playerid));
317
		    SendClientMessageToAll(AZUL_CLARO, String);
318
		}
319
		return 1;
320
	}
321
	return 1;
322
}
323
			
324
			
325
			
326
CMD:admins(playerid, params[])
327
{
328
	new IsAdmin;
329
	SendClientMessage(playerid, ROSA, "Admin Online:");
330
	for(new i = 0; i < MAX_PLAYERS; i++)
331
	{
332
	    if(PlayerDados[i][Admin] > 0)
333
	    {
334
            if(PlayerDados[i][Admin] == 1) AdminNivel = "Moderador";
335
			if(PlayerDados[i][Admin] == 2) AdminNivel = "Admin Iniciante";
336
			if(PlayerDados[i][Admin] == 3) AdminNivel = "Admin Geral";
337
			if(PlayerDados[i][Admin] == 4) AdminNivel = "Sub Dono";
338
			if(PlayerDados[i][Admin] == 5) AdminNivel = "Poderoso Chefão";
339
			if(PlayerDados[i][Trabalhando] == true) AdminTrabalhando = "Trabalhando";
340
			if(PlayerDados[i][Trabalhando] == false) AdminTrabalhando = "Jogando";
341
	        format(String, sizeof(String), "%s | %s | %s", Nome(i), AdminNivel, AdminTrabalhando);
342
	        SendClientMessage(playerid, LARANJA, String);
343
	        IsAdmin ++;
344
		}
345
	}
346
	if(IsAdmin == 0)
347
	{
348
	    SendClientMessage(playerid, CINZA, "Nenhum Admin Online!");
349
	}
350
	IsAdmin = 0;
351
	return 1;
352
}
353
354
CMD:tempo(playerid, params[])
355
{
356
	if(PlayerDados[playerid][Preso] < 1) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Você não está preso para usar este comando");
357
	format(String, sizeof(String), "Faltam %d Segundos para você ficar livre!", PlayerDados[playerid][Preso]);
358
	SendClientMessage(playerid, VERDE_CLARO, String);
359
	return 1;
360
}
361
362
CMD:la(playerid, params[])
363
{
364
	new Ajuda[900];
365
	if(PlayerDados[playerid][Admin] == 0) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
366
	if(PlayerDados[playerid][Admin] > 0)
367
	{
368
	    strcat(Ajuda, "{FFFFFF}Nivel 1\n{4CFA1B}/Jogar - /Trabalhar - /InfoPlayer - /Verip - /Avisar - /Destrancarcarros\n/Kickar - /Tapa - /Assistir - /pAssistir - /Texto - /a\n\n");
369
	}
370
	if(PlayerDados[playerid][Admin] > 1)
371
	{
372
	    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\n\n");
373
	}
374
	if(PlayerDados[playerid][Admin] > 2)
375
	{
376
	    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\n");
377
	}
378
	if(PlayerDados[playerid][Admin] > 3)
379
	{
380
	    strcat(Ajuda, "{FFFFFF}Nivel 4\n{1170CF}/KickarTodos - /DesarmarTodos - /ChatFalso - /GMX - /Invisivel\n/Visivel - /InteriorTodos - /IPs - /CongelarTodos\n/DescongelarTodos - /MatarTodos\n\n");
381
	}
382
	if(PlayerDados[playerid][Admin] > 4)
383
	{
384
	    strcat(Ajuda, "{FFFFFF}Nivel 5\n{FA0505}/NomeServer - /NomeGM - /NomeMapa - /CriarTeleporte - /DarAdmin\n/SetarGravidade\n\n");
385
	}
386
	ShowPlayerDialog(playerid, DIALOG_AL, DIALOG_STYLE_MSGBOX, "LL ADMIN - Ajuda", Ajuda, "Fechar", "");
387
	return 1;
388
}
389
390
//---------------------------------COMANDOS DE ADMIN----------------------------------------
391
392
//------------------PARA NIVEL 1------------------------------
393
CMD:jogar(playerid, params[])
394
{
395
	if(PlayerDados[playerid][Admin] == 0) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
396
	if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você ja está jogando!");
397
	PlayerDados[playerid][Trabalhando] = false;
398
	format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Jogando, Agora ele é um Jogador Normal", Nome(playerid));
399
	SendClientMessageToAll(AZUL_CLARO, String);
400
	SendClientMessage(playerid, VERDE_CLARO, "Para voltar a trabalhar use /trabalhar");
401
	SetPlayerColor(playerid, LARANJA);
402
	SetPlayerHealth(playerid, 100);
403
	return 1;
404
}
405
406
CMD:trabalhar(playerid, params[])
407
{
408
	if(PlayerDados[playerid][Admin] == 0) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
409
	if(PlayerDados[playerid][Trabalhando] == true) return SendClientMessage(playerid, CINZA, "Você ja está trabalhando!");
410
	PlayerDados[playerid][Trabalhando] = true;
411
	format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Está Trabalhando, Veja em /admins", Nome(playerid));
412
	SendClientMessageToAll(AZUL_CLARO, String);
413
	SendClientMessage(playerid, VERDE_CLARO, "Para voltar a jogar use /jogar");
414
	SetPlayerColor(playerid, 0x24E9FFFF);
415
	SetPlayerHealth(playerid, 999999);
416
	return 1;
417
}
418
CMD:infoplayer(playerid, params[])
419
{
420
	new StringM[500];
421
	new Fala[4];
422
	new ip[25];
423
	if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
424
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
425
	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");
426
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
427
	if(PlayerDados[ID][Calado] == true) Fala = "Sim";
428
	if(PlayerDados[ID][Calado] == false) Fala = "Nao";
429
	GetPlayerIp(ID, ip, 25);
430
	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]);
431
	format(StringM, sizeof(StringM), "%s\n{11D41E}Advertencias:{FFFFFF} %d \n{11D41E}IP:{FFFFFF} %s", StringM, PlayerDados[ID][Advertencias], ip);
432
	ShowPlayerDialog(playerid, DIALOG_INFO, DIALOG_STYLE_MSGBOX, "Informações do Player", StringM, "Fechar", "");
433
	return 1;
434
}
435
436
CMD:verip(playerid, params[])
437
{
438
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
439
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
440
	if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL-ADMIN] Use /verid [ID]");
441
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
442
	new strip[20];
443
	GetPlayerIp(ID, strip, 20);
444
	format(String, sizeof(String), "O IP de %s é:", Nome(ID));
445
	SendClientMessage(playerid, AZUL_CLARO, String);
446
	format(String, sizeof(String), "%s", strip);
447
	SendClientMessage(playerid, VERDE_CLARO, String);
448
	return 1;
449
}
450
451
CMD:avisar(playerid, params[])
452
{
453
	new Texto[128];
454
	if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
455
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
456
	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");
457
	format(String, sizeof(String), "Admin %s [nivel %d]: %s", Nome(playerid), PlayerDados[playerid][Admin], Texto);
458
	SendClientMessageToAll(AZUL, "________________________AVISO DA ADMINISTRAÇÃO________________________");
459
	SendClientMessageToAll(AZUL_CLARO, String);
460
	return 1;
461
}
462
463
CMD:destrancarcarros(playerid, params[])
464
{
465
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
466
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
467
	for(new c = 0; c < MAX_VEHICLES; c++)
468
    {
469
        SetVehicleParamsEx(c, 0, 0, 0, 0, 0, 0, 0);
470
	}
471
	SendClientMessage(playerid, AMARELO, "Todos os veiculos foram destrancados!");
472
	return 1;
473
}
474
475
CMD:kickar(playerid, params[])
476
{
477
	new Razao[128];
478
	if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
479
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
480
	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");
481
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
482
	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);
483
	SendClientMessageToAll(VERDE_CLARO, String);
484
	Kickar(ID, Nome(playerid), Razao);
485
	new File:Kickados = fopen("LLADMIN/Logs/Kickados.log", io_append);
486
	fwrite(Kickados, String);
487
	fclose(Kickados);
488
	return 1;
489
}
490
491
CMD:tapa(playerid, params[])
492
{
493
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
494
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
495
	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");
496
    new Float:Pos[3];
497
    GetPlayerPos(ID, Pos[0], Pos[1], Pos[2]);
498
    SetPlayerPos(ID, Pos[0], Pos[1], Pos[2]+20);
499
    format(String, sizeof(String), "[LL ADMIN] O Admin %s Deu um tapa em %s\r\n", Nome(playerid), Nome(ID));
500
    SendClientMessageToAll(AMARELO, String);
501
    new File:Tapas = fopen("LLADMIN/Logs/Tapas.log", io_append);
502
	fwrite(Tapas, String);
503
	fclose(Tapas);
504
    return 1;
505
}
506
507
CMD:assistir(playerid, params[])
508
{
509
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
510
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
511
	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");
512
    TogglePlayerSpectating(playerid, 1);
513
    PlayerSpectatePlayer(playerid, ID);
514
    PlayerDados[playerid][Assistindo] = true;
515
    SendClientMessage(playerid, VERDE_CLARO, "Para parar de assistir use /passistir");
516
    return 1;
517
}
518
519
CMD:passistir(playerid, params[])
520
{
521
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
522
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
523
	if(PlayerDados[playerid][Assistindo] == false) return SendClientMessage(playerid, AZUL, "Você não está assistindo ninguem!");
524
    TogglePlayerSpectating(playerid, 0);
525
	SendClientMessage(playerid, VERDE_CLARO, "Você parou de assistir o jogador!");
526
	PlayerDados[playerid][Assistindo] = false;
527
	return 1;
528
}
529
530
CMD:texto(playerid, params[])
531
{
532
	new Texto[128];
533
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
534
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
535
	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");
536
	format(String, sizeof(String), "~y~%s: ~w~%s", Nome(playerid), Texto);
537
	GameTextForAll(String, 2000, 4);
538
	return 1;
539
}
540
541
CMD:a(playerid, params[])
542
{
543
	new Texto[128];
544
    if(PlayerDados[playerid][Admin] < 1) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin para usar este comando!");
545
	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");
546
 	if(PlayerDados[playerid][Admin] == 1) AdminNivel = "Moderador";
547
	if(PlayerDados[playerid][Admin] == 2) AdminNivel = "Admin Iniciante";
548
	if(PlayerDados[playerid][Admin] == 3) AdminNivel = "Admin Geral";
549
	if(PlayerDados[playerid][Admin] == 4) AdminNivel = "Sub Dono";
550
	if(PlayerDados[playerid][Admin] == 5) AdminNivel = "Poderoso Chefão";
551
	format(String, sizeof(String), "%s %s: %s", AdminNivel, Nome(playerid), Texto);
552
	for(new i = 0; i < MAX_PLAYERS; i++)
553
	{
554
	    if(PlayerDados[i][Admin] > 0)
555
	    {
556
	        SendClientMessage(i, AZUL_CLARO, String);
557
		}
558
	}
559
	new File:Chatadm = fopen("LLADMIN/Logs/Chatadm.log", io_append);
560
	fwrite(Chatadm, String);
561
	fclose(Chatadm);
562
	return 1;
563
}
564
565
//-----------------------------ADMIN NIVEL 2------------------------------------
566
567
CMD:forcarcarro(playerid, params[])
568
{
569
	new IDCarro;
570
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
571
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
572
	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");
573
	PutPlayerInVehicle(ID, IDCarro, 0);
574
	format(String, sizeof(String), "O Admin {1B95E0}%s{38FF06} te colocou em um veículo", Nome(playerid));
575
	SendClientMessage(ID, AZUL_CLARO, String);
576
	format(String, sizeof(String), "Você colocou o jogador {1B95E0}%s{38FF06} em um veículo", Nome(ID));
577
	SendClientMessage(playerid, AZUL_CLARO, String);
578
	return 1;
579
}
580
581
CMD:forcarskin(playerid, params[])
582
{
583
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
584
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
585
    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");
586
    ForceClassSelection(ID);
587
	format(String, sizeof(String), "O Admin {1B95E0}%s{38FF06} te forçou a seleção de skin", Nome(playerid));
588
	SendClientMessage(ID, AZUL_CLARO, String);
589
	format(String, sizeof(String), "Você forçou o jogador {1B95E0}%s{38FF06} a escolher uma skin", Nome(ID));
590
	SendClientMessage(playerid, AZUL_CLARO, String);
591-
 	SetPlayerHealth(ID, 0);
591+
	SetPlayerHealth(playerid, 0);
592
	return 1;
593
}
594
595
596
CMD:setarinterior(playerid, params[])
597
{
598
	new Interior;
599
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
600
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
601
	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");
602
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
603
	SetPlayerInterior(ID, Interior);
604
	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);
605
	SendClientMessageToAll(VERDE_CLARO, String);
606
	return 1;
607
}
608
609
610
CMD:banir(playerid, params[])
611
{
612
	new Razao[128];
613
	if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
614
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
615
	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");
616
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
617
	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);
618
	SendClientMessageToAll(VERDE_CLARO, String);
619
	new File:Banidos = fopen("LLADMIN/Logs/Banidos.log", io_append);
620
	fwrite(Banidos, String);
621
	fclose(Banidos);
622
	format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(ID));
623
	getdate(Ano, Mes, Dia);
624
	gettime(Hora, Minuto, Segundo);
625
	DOF2_CreateFile(String);
626
	DOF2_SetString(String, "Admin", Nome(playerid));
627
	DOF2_SetString(String, "Motivo", Razao);
628
	DOF2_SetInt(String, "Ano", Ano);
629
	DOF2_SetInt(String, "Mes", Mes);
630
	DOF2_SetInt(String, "Dia", Dia);
631
	DOF2_SetInt(String, "Hora", Hora);
632
	DOF2_SetInt(String, "Minuto", Minuto);
633
	Kick(ID);
634
	return 1;
635
}
636
637
CMD:desbanir(playerid, params[])
638
{
639
	new Conta[128];
640
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
641
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
642
	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");
643
	format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Conta);
644
	if(DOF2_FileExists(String))
645
	{
646
	    DOF2_RemoveFile(String);
647
		format(String, sizeof(String), "[LL ADMIN] Conta {1B95E0}%s{38FF06} Desbanida!", Conta);
648
		SendClientMessage(playerid, VERDE_CLARO, String);
649
		return 1;
650
	}
651
	else
652
	{
653
        format(String, sizeof(String), "[LL ADMIN] A Conta {1B95E0}%s{CECECE} Não Existe ou Não está banida!", Conta);
654
		SendClientMessage(playerid, CINZA, String);
655
	}
656
	format(String, sizeof(String), "O Admin %s desbaniu a conta %s\r\n", Nome(playerid), Conta);
657
	new File:Desbanidos = fopen("LLADMIN/Logs/Desbanidos.log", io_append);
658
	fwrite(Desbanidos, String);
659
	fclose(Desbanidos);
660
	return 1;
661
}
662
	
663
    
664
CMD:advertir(playerid, params[])
665
{
666
	new Razao[128];
667
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
668
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
669
	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");
670
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
671
    if(PlayerDados[ID][Advertencias] != 3)
672
    {
673
		format(String, sizeof(String), "[LL ADMIN] O Admin %s Deu uma Advertencia a %s Pelo Motivo: %s\r\n", Nome(playerid), Nome(ID), Razao);
674
    	SendClientMessageToAll(VERMELHO_CLARO, String);
675
    	new File:Advertidos = fopen("LLADMIN/Logs/Advertidos.log", io_append);
676
		fwrite(Advertidos, String);
677
		fclose(Advertidos);
678
	    format(String, sizeof(String), "Você foi Advertido pelo admin %s Pelo motivo: %s. Se for advertido 3 vezes será BANIDO Automaticamente", Nome(playerid), Razao);
679
	    SendClientMessage(ID, LARANJA, String);
680
	    PlayerDados[ID][Advertencias] += 1;
681
	}
682
	if(PlayerDados[ID][Advertencias] == 3)
683
	{
684
	    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);
685
    	SendClientMessageToAll(VERMELHO_CLARO, String);
686
    	format(String, sizeof(String), "Você foi Advertido pela terceira vez pelo admin %s Pelo motivo: %s. por isso você foi banido!", Nome(playerid), Razao);
687
	    SendClientMessage(ID, LARANJA, String);
688
	    format(String, sizeof(String), "LLADMIN/Banidos/Contas/%s.txt", Nome(ID));
689
		getdate(Ano, Mes, Dia);
690
		gettime(Hora, Minuto, Segundo);
691
		new IP[25];
692
		GetPlayerIp(ID, IP, 25);
693
		DOF2_CreateFile(String);
694
		DOF2_SetString(String, "Admin", Nome(playerid));
695
		DOF2_SetString(String, "Motivo", "3° Advertencia");
696
		DOF2_SetInt(String, "Ano", Ano);
697
		DOF2_SetInt(String, "Mes", Mes);
698
		DOF2_SetInt(String, "Dia", Dia);
699
		DOF2_SetInt(String, "Hora", Hora);
700
		DOF2_SetInt(String, "Minuto", Minuto);
701
		Kick(ID);
702
	}
703
	return 1;
704
}
705
706
CMD:ir(playerid, params[])
707
{
708
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
709
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
710
	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");
711
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
712
	new Float:Pos[3];
713
	GetPlayerPos(ID, Pos[0], Pos[1], Pos[2]);
714
	SetPlayerPos(playerid, Pos[0]+2, Pos[1]+2, Pos[2]+2);
715
	format(String, sizeof(String), "O Admin %s veio até você!", Nome(playerid));
716
	SendClientMessage(ID, AZUL_CLARO, String);
717
	format(String, sizeof(String), "Você foi até o Jogador %s [ID: %d]", Nome(ID), ID);
718
	SendClientMessage(playerid, AZUL_CLARO, String);
719
	return 1;
720
}
721
722
CMD:trazer(playerid, params[])
723
{
724
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
725
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
726
	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ê");
727
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
728
	new Float:Pos[3];
729
	GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
730
	SetPlayerPos(ID, Pos[0]+2, Pos[1]+2, Pos[2]+2);
731
	format(String, sizeof(String), "O Admin %s trouxe você até ele!", Nome(playerid));
732
	SendClientMessage(ID, AZUL_CLARO, String);
733
	format(String, sizeof(String), "Você trouxe o jogador %s [ID: %d] até você", Nome(ID), ID);
734
	SendClientMessage(playerid, AZUL_CLARO, String);
735
	return 1;
736
}
737
738
CMD:congelar(playerid, params[])
739
{
740
	new Razao[128];
741
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
742
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
743
	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");
744
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
745
	TogglePlayerControllable(ID, false);
746
    PlayerDados[playerid][Congelado] = true;
747
    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);
748
	SendClientMessageToAll(AZUL_CLARO, String);
749
	SendClientMessage(playerid, VERDE_CLARO, "Para descongelar use /descongelar");
750
	new File:Congelados = fopen("LLADMIN/Logs/Congelados.log", io_append);
751
	fwrite(Congelados, String);
752
	fclose(Congelados);
753
	return 1;
754
}
755
    
756
CMD:descongelar(playerid, params[])
757
{
758
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
759
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
760
	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");
761
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
762
	if(PlayerDados[ID][Congelado] == false) return SendClientMessage(playerid, CINZA, "O Jogados não está congelado!");
763
    TogglePlayerControllable(ID, true);
764
    PlayerDados[ID][Congelado] = false;
765
    format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} Descongelou o jogador {1BA5E0}%s{00C2EC} [ID: %d]", Nome(playerid), Nome(ID), ID);
766
    SendClientMessageToAll(AZUL_CLARO, String);
767
    return 1;
768
}
769
770
CMD:dararma(playerid, params[])
771
{
772
	new NomeArma[80];
773
	new
774
	    Arma,
775
	    Municao;
776
	if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
777
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
778
	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");
779
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
780
	if(Arma < 1 || Arma == 19 || Arma == 20 || Arma == 21 || Arma > 46) return SendClientMessage(playerid, CINZA, "[LL ADMIN] ID Invalido, use de 1 a 46");
781
	if(Arma == 1) NomeArma = "Soco Inglês";
782
	if(Arma == 2) NomeArma = "Taco de Golf";
783
	if(Arma == 3) NomeArma = "Cacetete";
784
	if(Arma == 4) NomeArma = "Faca";
785
	if(Arma == 5) NomeArma = "Taco de Baseball";
786
	if(Arma == 6) NomeArma = "Pá";
787
	if(Arma == 7) NomeArma = "Taco de Sinuca";
788
	if(Arma == 8) NomeArma = "Kitana";
789
	if(Arma == 9) NomeArma = "Serra elétrica";
790
	if(Arma == 10) NomeArma = "Pinto de Borracha";
791
	if(Arma == 11) NomeArma = "Pinto roxo";
792
	if(Arma == 12) NomeArma = "Vibrador";
793
	if(Arma == 13) NomeArma = "Vibrador de Prata";
794
	if(Arma == 14) NomeArma = "Flor";
795
	if(Arma == 15) NomeArma = "Bengala";
796
	if(Arma == 16) NomeArma = "Granada";
797
	if(Arma == 17) NomeArma = "Bomba de gás";
798
	if(Arma == 18) NomeArma = "Molotov";
799
	if(Arma == 22) NomeArma = "Pistola 9mm";
800
	if(Arma == 23) NomeArma = "Pistola com silenciador";
801
	if(Arma == 24) NomeArma = "Desert Eagle";
802
	if(Arma == 25) NomeArma = "ShotGun";
803
	if(Arma == 26) NomeArma = "Sawnoff Shotgun";
804
	if(Arma == 27) NomeArma = "Combat Shotgun";
805
	if(Arma == 28) NomeArma = "Micro SMG";
806
	if(Arma == 29) NomeArma = "MP5";
807
	if(Arma == 30) NomeArma = "AK47";
808
	if(Arma == 31) NomeArma = "M4";
809
	if(Arma == 32) NomeArma = "Tec 9";
810
	if(Arma == 33) NomeArma = "Country Rifle";
811
	if(Arma == 34) NomeArma = "Sniper Rifle";
812
	if(Arma == 35) NomeArma = "Bazooca RPG";
813
	if(Arma == 36) NomeArma = "Bazooca Normal";
814
	if(Arma == 37) NomeArma = "Lança Chamas";
815
	if(Arma == 38) NomeArma = "Mini Gun";
816
	if(Arma == 39) NomeArma = "C4";
817
	if(Arma == 40) NomeArma = "Detonador";
818
	if(Arma == 41) NomeArma = "Spray";
819
	if(Arma == 42) NomeArma = "Extintor";
820
	if(Arma == 43) NomeArma = "Oculos de visão noturna";
821
	if(Arma == 45) NomeArma = "Oculos de visão de calor";
822
	if(Arma == 46) NomeArma = "Paraquedas";
823
	GivePlayerWeapon(ID, Arma, Municao);
824
	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));
825
	SendClientMessageToAll(AZUL_CLARO, String);
826
	return 1;
827
}
828
829
CMD:desarmar(playerid, params[])
830
{
831
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
832
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
833
	if(sscanf(params, "u", ID)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /desarmar [ID]"), SendClientMessage(playerid, CINZA, "Use o comando para desarmar um jogador");
834
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
835
	format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} Desarmou o jogador {1BA5E0}%s{00C2EC}", Nome(playerid), Nome(ID));
836
	SendClientMessageToAll(AZUL_CLARO, String);
837
	ResetPlayerWeapons(ID);
838
	return 1;
839
}
840
841
CMD:criarcarro(playerid, params[])
842
{
843
	new
844
	    Carro,
845
	    Cor1,
846
	    Cor2;
847
	if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
848
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
849
	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");
850
	new Float:X,
851
	    Float:Y,
852
	    Float:X1,
853
	    Float:Y1,
854
	    Float:Z,
855
	    Float:A;
856
	PosicaoFrentePlayer(playerid, X, Y, 3);
857
	GetPlayerPos(playerid, X1, Y1, Z);
858
	GetPlayerFacingAngle(playerid, A);
859
	new idcarro;
860
	idcarro = CreateVehicle(Carro, X, Y, Z, A+90, Cor1, Cor2, 15);
861
	CarrosCriados[TodosCarros] = idcarro;
862
	TodosCarros ++;
863
	return 1;
864
}
865
866
CMD:respawn(playerid, params[])
867
{
868
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
869
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
870
	format(String, sizeof(String), "[LL ADMIN] O Admin {1BA5E0}%s{00C2EC} deu Respawn nos veículos!", Nome(playerid));
871
	SendClientMessageToAll(AZUL_CLARO, String);
872
	SendClientMessage(playerid, VERDE_CLARO, "Todos os carros criados foram destruidos!");
873
	for(new i = 0; i < sizeof(CarrosCriados); i++)
874
	{
875
	    DestroyVehicle(CarrosCriados[i]);
876
	}
877
	for(new c = 0; c < MAX_VEHICLES; c++)
878
    {
879
        SetVehicleToRespawn(c);
880
	}
881
	return 1;
882
}
883
884
CMD:destruircarro(playerid, params[])
885
{
886
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
887
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
888
	if(IsPlayerInAnyVehicle(playerid))
889
    {
890
		new idcarro = GetPlayerVehicleID(playerid);
891
		DestroyVehicle(idcarro);
892
		format(String, sizeof(String), "[LL ADMIN] Você destruiu o veículo ID %d", idcarro);
893
		SendClientMessage(playerid, AZUL_CLARO, String);
894
		return 1;
895
	}
896
	new idc;
897
	if(sscanf(params, "i", idc)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /destruircarro [ID], ou entre em um veículo e use o comando.");
898
	if(idc == INVALID_VEHICLE_ID) return SendClientMessage(playerid, CINZA, "[LL ADMIN] ID invalido!");
899
	DestroyVehicle(idc);
900
	format(String, sizeof(String), "[LL ADMIN] Você destruiu o veículo ID %d", idc);
901
	SendClientMessage(playerid, AZUL_CLARO, String);
902
	return 1;
903
}
904
905
CMD:idcarro(playerid, params[])
906
{
907
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
908
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
909
	if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, BRANCO, "Você não está em um veículo!");
910
	new idc;
911
	idc = GetPlayerVehicleID(playerid);
912
	format(String, sizeof(String), "O ID do veículo é %d, para destrui-lo use /destruircarro", idc);
913
	SendClientMessage(playerid, CINZA, String);
914
	return 1;
915
}
916
917
CMD:calar(playerid, params[])
918
{
919
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
920
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
921
	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");
922
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
923
	if(PlayerDados[ID][Calado] == true) return SendClientMessage(playerid, CINZA, "[LL ADMIN] O jogador Ja está calado!");
924
	PlayerDados[ID][Calado] = true;
925
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Calou o Jogador {1B95E0}%s{00C2EC}\r\n", Nome(playerid), Nome(ID));
926
	SendClientMessageToAll(AZUL_CLARO, String);
927
	new File:Calados = fopen("LLADMIN/Logs/Calados.log", io_append);
928
	fwrite(Calados, String);
929
	fclose(Calados);
930
	SendClientMessage(playerid, VERDE_CLARO, "[LL ADMIN] Para Liberar a fala do jogador use /liberar [ID]");
931
	return 1;
932
}
933
934
CMD:liberar(playerid, params[])
935
{
936
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
937
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
938
    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");
939
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
940
	if(PlayerDados[ID][Calado] == false) return SendClientMessage(playerid, CINZA, "[LL ADMIN] O jogador não está calado!");
941
	PlayerDados[ID][Calado] = false;
942
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Liberou a fala de {1B95E0}%s{00C2EC}", Nome(playerid), Nome(ID));
943
	SendClientMessageToAll(AZUL_CLARO, String);
944
	return 1;
945
}
946
947
CMD:setarvida(playerid, params[])
948
{
949
	new Vida;
950
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
951
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
952
    if(sscanf(params, "ui", ID, Vida)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarvida [ID] [VIDA]");
953
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
954
	if(Vida < 0 || Vida > 100) return SendClientMessage(playerid, CINZA, "[LL ADMIN]Valor Inválido! Use de 0 a 100");
955
	SetPlayerHealth(ID, Vida);
956
	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);
957
	SendClientMessageToAll(AZUL_CLARO, String);
958
	return 1;
959
}
960
961
CMD:setarcolete(playerid, params[])
962
{
963
	new Colete;
964
    if(PlayerDados[playerid][Admin] < 2) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 2 para usar este comando!");
965
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
966
    if(sscanf(params, "ui", ID, Colete)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /setarcolete [ID] [COLETE]");
967
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
968
	if(Colete < 0 || Colete > 100) return SendClientMessage(playerid, CINZA, "[LL ADMIN]Valor Inválido! Use de 0 a 100");
969
	SetPlayerArmour(ID, Colete);
970
	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);
971
	SendClientMessageToAll(AZUL_CLARO, String);
972
	return 1;
973
}
974
975
//-------------------------ADMIN NIVEL 3----------------------------------------
976
977
CMD:prender(playerid, params[])
978
{
979
	new Tempo, Motivo[70];
980
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
981
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
982
    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");
983
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
984
    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);
985
    SendClientMessageToAll(AZUL_CLARO, String);
986
    new File:Presos = fopen("LLADMIN/Logs/Presos.log", io_append);
987
	fwrite(Presos, String);
988
	fclose(Presos);
989
    SetPlayerPos(ID, 264.6288,77.5742,1001.0391);
990
    SetPlayerInterior(ID, 6);
991
    PlayerDados[ID][Preso] = Tempo;
992
    TimerPreso = SetTimerEx("TempoPreso", 1000, true, "i", ID);
993
    return 1;
994
}
995
996
CMD:soltar(playerid, params[])
997
{
998
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
999
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1000
    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");
1001
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1002
    if(PlayerDados[ID][Preso] == 0) return SendClientMessage(playerid, CINZA, "O Jogador não está preso");
1003
    PlayerDados[ID][Preso] = 1;
1004
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Tirou o jogador {1B95E0}%s{00C2EC} da Cadeia", Nome(playerid), Nome(ID));
1005
    SendClientMessageToAll(AZUL_CLARO, String);
1006
    return 1;
1007
}
1008
1009
CMD:setarskin(playerid, params[])
1010
{
1011
	new Skin;
1012
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1013
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1014
	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");
1015
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1016
	if(Skin < 0 || Skin > 299) return SendClientMessage(playerid, CINZA, "[ERRO] ID Inválido, use IDs de 0 a 299!");
1017
	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);
1018
	SendClientMessageToAll(AZUL_CLARO, String);
1019
	SetPlayerSkin(ID, Skin);
1020
	return 1;
1021
}
1022
1023
CMD:setarnome(playerid, params[])
1024
{
1025
	new NovoNome[30];
1026
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1027
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1028
	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");
1029
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1030
	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);
1031
	SendClientMessageToAll(AZUL_CLARO, String);
1032
	new File:nNovoNome = fopen("LLADMIN/Logs/NovoNome.log", io_append);
1033
	fwrite(nNovoNome, String);
1034
	fclose(nNovoNome);
1035
	format(String, sizeof(String), "LLADMIN/Contas/%s.txt", Nome(ID));
1036
	DOF2_RemoveFile(String);
1037
	SetPlayerName(ID, NovoNome);
1038
	format(String, sizeof(String), "LLADMIN/Contas/%s.txt", Nome(ID));
1039
	DOF2_CreateFile(String);
1040
	SalvarDados(ID);
1041
	return 1;
1042
}
1043
1044
CMD:setarcor(playerid, params[])
1045
{
1046
	new Cor[100];
1047
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1048
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1049
    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");
1050
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1051
	if(strcmp(Cor, "vermelho", true) == 0)
1052
    {
1053
        SetPlayerColor(ID, VERMELHO);
1054
    	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));
1055
		SendClientMessageToAll(AZUL_CLARO, String);
1056
		return 1;
1057
	}
1058
	if(strcmp(Cor, "azul", true) == 0)
1059
    {
1060
        SetPlayerColor(ID, AZUL);
1061
    	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));
1062
		SendClientMessageToAll(AZUL_CLARO, String);
1063
		return 1;
1064
	}
1065
	if(strcmp(Cor, "verde", true) == 0)
1066
    {
1067
        SetPlayerColor(ID, VERDE);
1068
    	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));
1069
		SendClientMessageToAll(AZUL_CLARO, String);
1070
		return 1;
1071
	}
1072
	if(strcmp(Cor, "amarelo", true) == 0)
1073
    {
1074
        SetPlayerColor(ID, AMARELO);
1075
    	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));
1076
		SendClientMessageToAll(AZUL_CLARO, String);
1077
		return 1;
1078
	}
1079
	if(strcmp(Cor, "rosa", true) == 0)
1080
    {
1081
        SetPlayerColor(ID, ROSA_CHOQUE);
1082
    	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));
1083
		SendClientMessageToAll(AZUL_CLARO, String);
1084
		return 1;
1085
	}
1086
	if(strcmp(Cor, "laranja", true) == 0)
1087
    {
1088
        SetPlayerColor(ID, LARANJA);
1089
    	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));
1090
		SendClientMessageToAll(AZUL_CLARO, String);
1091
		return 1;
1092
	}
1093
	if(strcmp(Cor, "cinza", true) == 0)
1094
    {
1095
        SetPlayerColor(ID, CINZA);
1096
    	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));
1097
		SendClientMessageToAll(AZUL_CLARO, String);
1098
		return 1;
1099
	}
1100
	if(strcmp(Cor, "branco", true) == 0)
1101
    {
1102
        SetPlayerColor(ID, BRANCO);
1103
    	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));
1104
		SendClientMessageToAll(AZUL_CLARO, String);
1105
		return 1;
1106
	}
1107
	if(strcmp(Cor, "preto", true) == 0)
1108
    {
1109
        SetPlayerColor(ID, PRETO);
1110
    	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));
1111
		SendClientMessageToAll(AZUL_CLARO, String);
1112
		return 1;
1113
	}
1114
	SendClientMessage(playerid, CINZA, "Cores: Vermelho, Azul, Verde, Amarelo, Rosa, Laranja, Cinza, Branco e Preto");
1115
	return 1;
1116
}
1117
	
1118
CMD:clima(playerid, params[])
1119
{
1120
	new Clima;
1121
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1122
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1123
    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");
1124
    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");
1125
    SetWeather(Clima);
1126
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} mudou o Clima para o ID %d!", Nome(playerid), Clima);
1127
	SendClientMessageToAll(AZUL_CLARO, String);
1128
	return 1;
1129
}
1130
1131
CMD:godmode(playerid, params[])
1132
{
1133
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1134
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1135
    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");
1136
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1137
	SetPlayerHealth(ID, 999999);
1138
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} deixou o Jogador {1B95E0}%s{00C2EC} em GodMode!", Nome(playerid), Nome(ID));
1139
	SendClientMessageToAll(AZUL_CLARO, String);
1140
	return 1;
1141
}
1142
1143
CMD:ejetar(playerid, params[])
1144
{
1145
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1146
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1147
    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");
1148
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1149
	if(!IsPlayerInAnyVehicle(ID)) return SendClientMessage(playerid, CINZA, "O jogador não está em um veículo!");
1150
	RemovePlayerFromVehicle(ID);
1151
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Ejetou o jogador {1B95E0}%s{00C2EC} de seu carro!", Nome(playerid), Nome(ID));
1152
	SendClientMessageToAll(AZUL_CLARO, String);
1153
	return 1;
1154
}
1155
1156
CMD:falar(playerid, params[])
1157
{
1158
    new Fala[128];
1159
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1160
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1161
	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");
1162
	for(new i = 0; i < MAX_PLAYERS; i++)
1163
	{
1164
	    format(String, sizeof(String), "http://translate.google.com/translate_tts?tl=pt&q=%s", Fala);
1165
		PlayAudioStreamForPlayer(i, String, 0, 0, 0, 0, 0);
1166
	}
1167
	format(String, sizeof(String), "[LL ADMIN] Admin {1B95E0}%s{00C2EC} Falando!", Nome(playerid));
1168
	SendClientMessageToAll(AZUL_CLARO, String);
1169
	return 1;
1170
}
1171
	
1172
CMD:crash(playerid, params[])
1173
{
1174
	new Motivo[100];
1175
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1176
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1177
    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");
1178
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1179
	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);
1180
	SendClientMessageToAll(AZUL_CLARO, String);
1181
	new File:Crashados = fopen("LLADMIN/Logs/Crashados.log", io_append);
1182
	fwrite(Crashados, String);
1183
	fclose(Crashados);
1184
	GameTextForPlayer(ID, "~k~~INVALID_KEY~", 5000, 5);
1185
	return 1;
1186
}
1187
1188
CMD:setarpontos(playerid, params[])
1189
{
1190
	new Pontos;
1191
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1192
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1193
    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");
1194
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1195
	SetPlayerScore(ID, Pontos);
1196
	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);
1197
	SendClientMessageToAll(AZUL_CLARO, String);
1198
	return 1;
1199
}
1200
1201
CMD:setarpos(playerid, params[])
1202
{
1203
	new X, Y, Z;
1204
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1205
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1206
    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");
1207
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1208
    SetPlayerPos(ID, X, Y, Z);
1209
    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);
1210
	SendClientMessageToAll(AZUL_CLARO, String);
1211
	return 1;
1212
}
1213
1214
CMD:verpos(playerid, params[])
1215
{
1216
    new Float: X,
1217
		Float: Y,
1218
		Float: Z;
1219
	if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1220
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1221
    GetPlayerPos(playerid, X, Y, Z);
1222
    format(String, sizeof(String), "[LL ADMIN] Você está na posição %f %f %f", X, Y, Z);
1223
    SendClientMessage(playerid, AMARELO, String);
1224
    return 1;
1225
}
1226
    
1227
CMD:barril(playerid, params[])
1228
{
1229
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1230
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1231
	new Float: X,
1232
	    Float: Y,
1233
	    Float: Z;
1234
	GetPlayerPos(playerid, X, Y, Z);
1235
	PosicaoFrentePlayer(playerid, X, Y, 5);
1236
	new barril;
1237
	barril = CreateObject(1225, X, Y, Z, 0, 0, 0, 50);
1238
	Barris[tBarris] = barril;
1239
	tBarris ++;
1240
	SendClientMessage(playerid, VERDE_CLARO, "[LL ADMIN] Você criou um barril explosivo, para destrui-lo use /dbarris");
1241
	return 1;
1242
}
1243
1244
CMD:dbarris(playerid, params[])
1245
{
1246
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1247
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1248
	for(new o = 0; o < sizeof(Barris); o++)
1249
	{
1250
	    DestroyObject(Barris[o]);
1251
	}
1252
	SendClientMessage(playerid, VERDE_CLARO, "[LL ADMIN] Todos os Barris foram destruídos");
1253
	return 1;
1254
}
1255
1256
CMD:hora(playerid, params[])
1257
{
1258
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1259
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1260
    if(sscanf(params, "ii", Hora, Minuto)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Use /hora [Hora] [Minuto]");
1261
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Setou a hora do servidor para: {1B95E0}%d:%d", Nome(playerid), Hora, Minuto);
1262
	SendClientMessageToAll(AZUL_CLARO, String);
1263
	for(new i = 0; i < MAX_PLAYERS; i++)
1264
	{
1265
	    SetPlayerTime(i, Hora, Minuto);
1266
	}
1267
	return 1;
1268
}
1269
1270
CMD:banirip(playerid, params[])
1271
{
1272
	new Motivo[128];
1273
	new Str2[128];
1274
	new Ip[25];
1275
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1276
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1277
	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");
1278
	if(!DOF2_FileExists("LLADMIN/BANIDOS/Ips.txt")) DOF2_CreateFile("LLADMIN/BANIDOS/Ips.txt");
1279
	GetPlayerIp(ID, Ip, 25);
1280
	format(String, sizeof(String), "%s", Ip);
1281
	format(Str2, sizeof(Str2), "Admin: %s - Motivo: %s", Nome(playerid), Motivo);
1282
	DOF2_SetString("LLADMIN/BANIDOS/Ips.txt", String, Str2);
1283
	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);
1284
	SendClientMessageToAll(AZUL_CLARO, String);
1285
	new File:Banip = fopen("LLADMIN/Logs/BanirIp.log", io_append);
1286
	fwrite(Banip, String);
1287
	fclose(Banip);
1288
	Kick(ID);
1289
	return 1;
1290
}
1291
1292
CMD:desbanirip(playerid, params[])
1293
{
1294
	new IP[25];
1295
    if(PlayerDados[playerid][Admin] < 3) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 3 para usar este comando!");
1296
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1297
	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");
1298
	if(!DOF2_IsSet("LLADMIN/Banidos/Ips.txt", IP)) return SendClientMessage(playerid, CINZA, "Este IP não está banido!");
1299
	DOF2_Unset("LLADMIN/Banidos/Ips.txt", IP);
1300
	format(String, sizeof(String), "[LL ADMIN]IP %s Desbanido pelo admin %s!", IP, Nome(playerid));
1301
	SendClientMessageToAll(AZUL_CLARO, String);
1302
	new File:Desbanip = fopen("LLADMIN/Logs/DesbanirIp.log", io_append);
1303
	fwrite(Desbanip, String);
1304
	fclose(Desbanip);
1305
	return 1;
1306
}
1307
1308
//------------------------------ADMIN LEVEL 4-----------------------------------
1309
1310
CMD:kickartodos(playerid, params[])
1311
{
1312
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1313
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1314
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Kickou Todos do servidor!", Nome(playerid));
1315
	SendClientMessageToAll(AZUL_CLARO, String);
1316
	for(new i = 0; i < MAX_PLAYERS; i++)
1317
	{
1318
	    if(PlayerDados[i][Admin] < 1)
1319
	    {
1320
	        Kick(i);
1321
		}
1322
	}
1323
	return 1;
1324
}
1325
1326
CMD:desarmartodos(playerid, params[])
1327
{
1328
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1329
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1330
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Tirou as armas de Todos do servidor!", Nome(playerid));
1331
	SendClientMessageToAll(AZUL_CLARO, String);
1332
	for(new i = 0; i < MAX_PLAYERS; i++)
1333
	{
1334
		if(PlayerDados[i][Admin] < 1)
1335
		{
1336
		    ResetPlayerWeapons(i);
1337
		}
1338
	}
1339
	return 1;
1340
}
1341
1342
CMD:chatfalso(playerid, params[])
1343
{
1344
	new Fala[128];
1345
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1346
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1347
    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");
1348
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1349
	new Cor = GetPlayerColor(ID);
1350
	format(String, sizeof(String), "%s: {FFFFFF}%s", Nome(ID), Fala);
1351
	SendClientMessageToAll(Cor, String);
1352
	for(new i = 0; i < MAX_PLAYERS; i++)
1353
	{
1354
	    if(PlayerDados[i][Admin] > 0)
1355
	    {
1356
	        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));
1357
	        SendClientMessage(i, AZUL_CLARO, String);
1358
		}
1359
	}
1360
	return 1;
1361
}
1362
1363
CMD:gmx(playerid, params[])
1364
{
1365
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1366
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1367
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Deu GMX no servidor, em alguns segundos ele será reiniciado", Nome(playerid));
1368
    SendClientMessageToAll(AZUL_CLARO, String);
1369
    SendRconCommand("gmx");
1370
    return 1;
1371
}
1372
1373
CMD:invisivel(playerid, params[])
1374
{
1375
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1376
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1377
	if(PlayerDados[playerid][Invisivel] == true) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Você ja está invisivel!");
1378
	SetPlayerVirtualWorld(playerid, 5);
1379
	PlayerDados[playerid][Invisivel] = true;
1380
	SendClientMessage(playerid, AZUL_CLARO, "Use /visivel para ficar visivel novamente");
1381
	return 1;
1382
}
1383
1384
CMD:visivel(playerid, params[])
1385
{
1386
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1387
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1388
	if(PlayerDados[playerid][Invisivel] == false) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Você não está invisivel!");
1389
	SetPlayerVirtualWorld(playerid, 0);
1390
	PlayerDados[playerid][Invisivel] = false;
1391
	SendClientMessage(playerid, AZUL_CLARO, "Você está visivel novamente!");
1392
	return 1;
1393
}
1394
    
1395
CMD:interiortodos(playerid, params[])
1396
{
1397
	new Interior;
1398
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1399
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1400
	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");
1401
	for(new i = 0; i < MAX_PLAYERS; i++)
1402
    {
1403
        SetPlayerInterior(i, Interior);
1404
	}
1405
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Setou o interior de todos para %d", Nome(playerid), Interior);
1406
    SendClientMessageToAll(AZUL_CLARO, String);
1407
    return 1;
1408
}
1409
	
1410
CMD:ips(playerid, params[])
1411
{
1412
	new StrIps[400];
1413
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1414
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1415
    for(new i = 0; i < MAX_PLAYERS; i++)
1416
    {
1417
        if(IsPlayerConnected(i))
1418
        {
1419
			new Ip[30];
1420
			GetPlayerIp(i, Ip, 30);
1421
			format(String, sizeof(String), "\n{1BE049}Nome: {FFFFFF}%s\n{1BE049}Ip: {FFFFFF}%s\n", Nome(i), Ip);
1422
			strcat(StrIps, String);
1423
		}
1424
	}
1425
	ShowPlayerDialog(playerid, DIALOG_IPS, DIALOG_STYLE_MSGBOX, "Ips dos jogadores conectados:", StrIps, "Fechar", "");
1426
	return 1;
1427
}
1428
1429
CMD:congelartodos(playerid, params[])
1430
{
1431
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1432
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1433
    for(new i = 0; i < MAX_PLAYERS; i++)
1434
    {
1435
        TogglePlayerControllable(i, false);
1436
        PlayerDados[i][Congelado] = true;
1437
	}
1438
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Congelou todos os Jogadores", Nome(playerid));
1439
    SendClientMessageToAll(AZUL_CLARO, String);
1440
    return 1;
1441
}
1442
1443
CMD:descongelartodos(playerid, params[])
1444
{
1445
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1446
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1447
    for(new i = 0; i < MAX_PLAYERS; i++)
1448
    {
1449
        TogglePlayerControllable(i, true);
1450
        PlayerDados[i][Congelado] = false;
1451
	}
1452
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Descongelou todos os Jogadores", Nome(playerid));
1453
    SendClientMessageToAll(AZUL_CLARO, String);
1454
    return 1;
1455
}
1456
1457
CMD:matartodos(playerid, params[])
1458
{
1459
    if(PlayerDados[playerid][Admin] < 4) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 4 para usar este comando!");
1460
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1461
    for(new i = 0; i < MAX_PLAYERS; i++)
1462
    {
1463
        SetPlayerHealth(i, 0);
1464
	}
1465
    format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Matou todos os Jogadores", Nome(playerid));
1466
    SendClientMessageToAll(AZUL_CLARO, String);
1467
    return 1;
1468
}
1469
		
1470
//-----------------------ADMIN NIVEL 5------------------------------------------
1471
1472
CMD:nomeserver(playerid, params[])
1473
{
1474
	new NomeServer[128];
1475
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
1476
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1477
	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");
1478
	format(String, sizeof(String), "hostname %s", NomeServer);
1479
	SendRconCommand(String);
1480
	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);
1481
    SendClientMessageToAll(AZUL_CLARO, String);
1482
    new File:nServer = fopen("LLADMIN/Logs/Nome Server.log", io_append);
1483
	fwrite(nServer, String);
1484
	fclose(nServer);
1485
    return 1;
1486
}
1487
1488
CMD:nomegm(playerid, params[])
1489
{
1490
    new NomeGM[128];
1491
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
1492
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1493
	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");
1494
	SetGameModeText(NomeGM);
1495
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Mudou o nome do Game Mode para {1B95E0}%s{00C2EC}", Nome(playerid), NomeGM);
1496
    SendClientMessageToAll(AZUL_CLARO, String);
1497
    new File:nGM = fopen("LLADMIN/Logs/Nome GM.log", io_append);
1498
	fwrite(nGM, String);
1499
	fclose(nGM);
1500
    return 1;
1501
}
1502
	
1503
CMD:nomemapa(playerid, params[])
1504
{
1505
    new NomeMapa[128];
1506
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
1507
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1508
	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");
1509
	format(String, sizeof(String), "mapname %s", NomeMapa);
1510
	SendRconCommand(String);
1511
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Mudou o nome do Mapa para {1B95E0}%s{00C2EC}", Nome(playerid), NomeMapa);
1512
    SendClientMessageToAll(AZUL_CLARO, String);
1513
    return 1;
1514
}
1515
1516
CMD:criarteleporte(playerid, params[])
1517
{
1518
	new Comando[128],
1519
	    Float:X,
1520
	    Float:Y,
1521
	    Float:Z;
1522
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
1523
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1524
	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");
1525
	format(String, sizeof(String), "LLADMIN/Teleportes/te %s.txt", Comando);
1526
	if(DOF2_FileExists(String)) return SendClientMessage(playerid, CINZA, "[LL ADMIN] Este Comando ja existe!");
1527
	DOF2_CreateFile(String);
1528
	GetPlayerPos(playerid, X, Y, Z);
1529
	DOF2_SetString(String, "Admin", Nome(playerid));
1530
	DOF2_SetString(String, "Comando", Comando);
1531
	DOF2_SetFloat(String, "X", X);
1532
	DOF2_SetFloat(String, "Y", Y);
1533
	DOF2_SetFloat(String, "Z", Z);
1534
	format(String, sizeof(String), "[LL ADMIN] O Admin {1B95E0}%s{00C2EC} Criou o teleporte {1B95E0}'te %s'{00C2EC}", Nome(playerid), Comando);
1535
    SendClientMessageToAll(AZUL_CLARO, String);
1536
    return 1;
1537
}
1538
1539
CMD:daradmin(playerid, params[])
1540
{
1541
	if(!IsPlayerAdmin(playerid) && PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
1542
	if(sscanf(params, "ud", ID, nivel)) return SendClientMessage(playerid, CINZA, "Use /daradmin [ID] [nivel]"), SendClientMessage(playerid, CINZA, "Use o comando para dar admin para algum jogador");
1543
	if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, BRANCO, "[ERRO] ID invalido");
1544
	if(nivel < 0 || nivel > 5) return SendClientMessage(playerid, BRANCO, "[ERRO] Nivel invalido, use de 0 a 5");
1545
	format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Ofereceu Admin Nivel %d de Admin para %s.\r\n", Nome(playerid), nivel, Nome(ID));
1546
	SendClientMessageToAll(VERDE_AGUA, String);
1547
	format(String, sizeof(String), "{FFFFFF}O Admin {1B95E0}%s{FFFFFF} está lhe oferencendo admin nivel {1b95E0}%d", Nome(playerid), nivel);
1548
	ShowPlayerDialog(ID, DIALOG_ADM, DIALOG_STYLE_MSGBOX, "Admin", String, "Aceitar", "Recusar");
1549
	return 1;
1550
}
1551
1552
CMD:setargravidade(playerid, params[])
1553
{
1554
	new Gravidade;
1555
    if(PlayerDados[playerid][Admin] < 5) return SendClientMessage(playerid, BRANCO, "Você precisa ser admin nivel 5 para usar este comando!");
1556
    if(PlayerDados[playerid][Trabalhando] == false) return SendClientMessage(playerid, CINZA, "Você precisa /trabalhar para usar esse comando!");
1557
	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");
1558
    format(String, sizeof(String), "O Admin {1B95E0}%s{00C2EC} Setou a gravidade do server para %d.", Nome(playerid), Gravidade);
1559
	SendClientMessageToAll(VERDE_AGUA, String);
1560
	SetGravity(Gravidade);
1561
	return 1;
1562
}
1563
1564
CMD:reportar(playerid, params[])
1565
{
1566
	new Texto[128];
1567
	if(sscanf(params, "s", Texto)) return SendClientMessage(playerid, BRANCO, "[LL ADMIN] Use /reporar [texto] para mandar uma mensagem para os admins online");
1568
	for(new i = 0; i < MAX_PLAYERS; i++)
1569
	{
1570
	    if(PlayerDados[i][Admin] > 0)
1571
	    {
1572
	        format(String, sizeof(String), "Report de %s [ID: %d]: %s", Nome(playerid), playerid, Texto);
1573
	        SendClientMessage(i, AMARELO, String);
1574
		}
1575
	}
1576
	SendClientMessage(playerid, AMARELO, "Seu Report foi enviado com sucesso!");
1577
	return 1;
1578
}
1579
    
1580
public TempoPreso(playerid)
1581
{
1582
	PlayerDados[playerid][Preso] --;
1583
	if(PlayerDados[playerid][Preso] == 0)
1584
	{
1585
		SetPlayerHealth(playerid, 0);
1586
		SendClientMessage(playerid, VERDE, "Você está livre da cadeia!");
1587
		KillTimer(TimerPreso);
1588
	}
1589
	return 1;
1590
}
1591
1592
stock SalvarDados(playerid)
1593
{
1594
    format(StringContas, sizeof(StringContas), "LLADMIN/Contas/%s.txt", Nome(playerid));
1595
	DOF2_SetInt(StringContas, "Matou", PlayerDados[playerid][Matou]);
1596
	DOF2_SetInt(StringContas, "Morreu", PlayerDados[playerid][Morreu]);
1597
	DOF2_SetInt(StringContas, "Grana", GetPlayerMoney(playerid));
1598
	DOF2_SetInt(StringContas, "Admin", PlayerDados[playerid][Admin]);
1599
	DOF2_SetInt(StringContas, "Advertencias", PlayerDados[playerid][Advertencias]);
1600
	DOF2_SetInt(StringContas, "Preso", PlayerDados[playerid][Preso]);
1601
	DOF2_SaveFile();
1602
	return 1;
1603
}
1604
1605
stock Nome(playerid)
1606
{
1607
	new pNome[MAX_PLAYER_NAME];
1608
	GetPlayerName(playerid, pNome, 24);
1609
	return pNome;
1610
}
1611
1612
stock Kickar(playerid, admin[], razao[])
1613
{
1614
	if(!DOF2_FileExists("LLADMIN/Kickados.txt")) DOF2_CreateFile("LLADMIN/Kickados.txt");
1615
	new IP[20];
1616
	GetPlayerIp(playerid, IP, 20);
1617
	format(String, sizeof(String), " IP = %d - Admin = %s - Razao = %s", IP, admin, razao);
1618
	DOF2_SetString("LLADMIN/Kickados.txt", Nome(playerid), String);
1619
	Kick(playerid);
1620
	return 1;
1621
}
1622
1623
stock PosicaoFrentePlayer( playerid, &Float:x, &Float:y, Float:distance)
1624
{
1625
    new
1626
        Float:a
1627
    ;
1628
    GetPlayerPos( playerid, x, y, a);
1629
    GetPlayerFacingAngle( playerid, a);
1630
    if(GetPlayerVehicleID( playerid ))
1631
    {
1632
        GetVehicleZAngle(GetPlayerVehicleID( playerid ), a);
1633
    }
1634
    x += (distance * floatsin(-a, degrees));
1635
    y += (distance * floatcos(-a, degrees));
1636
}