Quisiera cambiar la forma de ingreso y registro, en lugar de poner /ingreso [contraseсa] ponga solamente la contraseсa, y en lugar de poner /registro solamente ponga cual quiero que sea mi contraseсa.
Todo esto en forma de dialog, que me aparesca el cuadro y escriba la contraseсa.
Код:
//includes
#include <a_samp>
#include <dini.inc>
//colores
#define COLOR_ROJO 0xFF0000FF
#define COLOR_NARANJA 0xFF9600FF
#define COLOR_AMARILLO 0xFFC800FF
#define COLOR_DORADO 0x966400FF
#define COLOR_AZUL 0x0000FFFF
#define COLOR_CELESTE 0x0096FFFF
#define COLOR_AQUA 0x009696FF
#define COLOR_VERDE_OSCURO 0x00C800FF
#define COLOR_VERDE_CLARO 0x00FF00FF
//carpeta de las cuentas
#define ACCOUNTS_FOLDER "/Usuarios/%s.ini"
/* ------------------------> [Filterscript] <------------------------- */
#define FILTERSCRIPT
/* ------------------------> [Estados] <------------------------- */
new Ingreso[MAX_PLAYERS];
new NivelAdmin[MAX_PLAYERS];
new EsAdmin[MAX_PLAYERS];
new Espiando[MAX_PLAYERS];
new Dios[MAX_PLAYERS];
new VDios[MAX_PLAYERS];
new Callado[MAX_PLAYERS];
new Advertido[MAX_PLAYERS];
new Encarcelado[MAX_PLAYERS];
new Congelado[MAX_PLAYERS];
/* ------------------------> [Timers] <------------------------- */
forward tvdios(playerid);
forward tdescongelar(playerid);
forward tdesencarcelar(playerid);
forward pingcheck(playerid);
/* ------------------------> [KillTimers] <------------------------- */
new ktvdios;
new ktdescongelar;
new ktdesencarcelar;
/* ------------------------> [Vehiculos] <------------------------- */
new Vehiculos[212][] = {
"Landstalker","Bravura","Buffalo","Linerunner","Pereniel","Sentinel","Dumper","Firetruck","Trashmaster","Stretch","Manana","Infernus",
"Voodoo","Pony","Mule","Cheetah","Ambulance","Leviathan","Moonbeam","Esperanto","Taxi","Washington","Bobcat","Mr Whoopee","BF Injection",
"Hunter","Premier","Enforcer","Securicar","Banshee","Predator","Bus","Rhino","Barracks","Hotknife","Trailer","Previon","Coach","Cabbie",
"Stallion","Rumpo","RC Bandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer","Turismo","Speeder",
"Reefer","Tropic","Flatbed","Yankee","Caddy","Solair","Berkley's RC Van","Skimmer","PCJ-600","Faggio","Freeway","RC Baron","RC Raider",
"Glendale","Oceanic","Sanchez","Sparrow","Patriot","Quad","Coastguard","Dinghy","Hermes","Sabre","Rustler","ZR3 50","Walton","Regina",
"Comet","BMX","Burrito","Camper","Marquis","Baggage","Dozer","Maverick","News Chopper","Rancher","FBI Rancher","Virgo","Greenwood",
"Jetmax","Hotring","Sandking","Blista Compact","Police Maverick","Boxville","Benson","Mesa","RC Goblin","Hotring Racer A","Hotring Racer B",
"Bloodring Banger","Rancher","Super GT","Elegant","Journey","Bike","Mountain Bike","Beagle","Cropdust","Stunt","Tanker","RoadTrain",
"Nebula","Majestic","Buccaneer","Shamal","Hydra","FCR-900","NRG-500","HPV1000","Cement Truck","Tow Truck","Fortune","Cadrona","FBI Truck",
"Willard","Forklift","Tractor","Combine","Feltzer","Remington","Slamvan","Blade","Freight","Streak","Vortex","Vincent","Bullet","Clover",
"Sadler","Firetruck","Hustler","Intruder","Primo","Cargobob","Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster A",
"Monster B","Uranus","Jester","Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight","Trailer",
"Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley","Stafford","BF-400","Newsvan","Tug","Trailer A","Emperor",
"Wayfarer","Euros","Hotdog","Club","Trailer B","Trailer C","Andromada","Dodo","RC Cam","Launch","Police Car (LSPD)","Police Car (SFPD)",
"Police Car (LVPD)","Police Ranger","Picador","S.W.A.T. Van","Alpha","Phoenix","Glendale","Sadler","Luggage Trailer A","Luggage Trailer B",
"Stair Trailer","Boxville","Farm Plow","Utility Trailer"
};
////////////////////////////////////////////////////
public OnFilterScriptInit()
{
print(" SISTEMA DE ADMINISTRACION");
print(" JADMIN");
print(" POR JAZI");
return 1;
}
////////////////////////////////////////////////////
public OnFilterScriptExit()
{
print(" SISTEMA DE ADMINISTRACION ");
print(" JADMIN");
print(" POR JAZI");
print(" CERRADO");
return 1;
}
////////////////////////////////////////////////////
public OnPlayerConnect(playerid)
{
Ingreso[playerid] = 0;
EsAdmin[playerid] = 0;
Espiando[playerid] = 0;
Dios[playerid] = 0;
VDios[playerid] = 0;
Callado[playerid] = 0;
Advertido[playerid] = 0;
SetTimerEx("pingcheck", 0, true, "d", playerid);
new nombre[MAX_PLAYER_NAME], string[256];
GetPlayerName(playerid, nombre, MAX_PLAYER_NAME);
format(string, sizeof(string), "{FF0000}%s {FFFFFF}ha entrado al servidor.", nombre);
SendClientMessageToAll(0xFFFFFFFF, string);
new archivo[256], usuario[MAX_PLAYER_NAME];
GetPlayerName(playerid, usuario, sizeof(usuario));
format(archivo, sizeof(string), "JADMIN/Users/%s.ini", usuario);
if (dini_Exists(archivo)) return SendClientMessage(playerid, 0xFFFFFFFF, "Tu nombre se encuentra registrado. Usa /ingreso [Contraseсa] para ingresar.");
if (!dini_Exists(archivo)) return SendClientMessage(playerid, 0xFFFFFFFF, "Tu nombre no se encuentra registrado. Usa /registro [Contraseсa] para registrarte.");
return 1;
}
////////////////////////////////////////////////////
public OnPlayerDisconnect(playerid, reason)
{
new nombre[MAX_PLAYER_NAME], string[256];
GetPlayerName(playerid, nombre, MAX_PLAYER_NAME);
switch(reason)
{
case 0: format(string, sizeof(string), "%s ha dejado el servidor. (Crash)", nombre);
case 1: format(string, sizeof(string), "%s ha dejado el servidor.", nombre);
case 2: format(string, sizeof(string), "%s ha dejado el servidor. (Kickeado/Baneado)", nombre);
}
SendClientMessageToAll(0xFFFFFFFF, string);
new archivo[256], usuario[MAX_PLAYER_NAME];
GetPlayerName(playerid, usuario, sizeof(usuario));
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", usuario);
dini_IntSet(archivo, "Puntaje", GetPlayerScore(playerid));
dini_IntSet(archivo, "Dinero", GetPlayerMoney(playerid));
return 1;
}
////////////////////////////////////////////////////
public OnPlayerSpawn(playerid)
{
if (Dios[playerid] == 1)
{
SetPlayerHealth(playerid, 100000);
}
return 1;
}
////////////////////////////////////////////////////
public OnPlayerDeath(playerid, killerid, reason)
{
new archivo1[256], archivo2[256], asesino[MAX_PLAYER_NAME], jugador[MAX_PLAYER_NAME];
GetPlayerName(killerid, asesino, sizeof(asesino));
GetPlayerName(playerid, jugador, sizeof(jugador));
format(archivo1, sizeof(archivo1), "JADMIN/Usars/%s.ini", asesino);
format(archivo2, sizeof(archivo2), "JADMIN/Users/%s.ini", jugador);
dini_IntSet(archivo1, "Asesinatos", dini_Int(archivo1, "Asesinatos")+1);
dini_IntSet(archivo2, "Muertes", dini_Int(archivo2, "Muertes")+1);
return 1;
}
////////////////////////////////////////////////////
public OnPlayerText(playerid, text[])
{
new archivo[256], usuario[MAX_PLAYER_NAME];
GetPlayerName(playerid, usuario, sizeof(usuario));
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", usuario);
if(dini_Exists(archivo))
{
if(Ingreso[playerid] == 0)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Debes ingresar para poder hablar. Usa /ingreso [Contraseсa].");
return 0;
}
}
else if(!dini_Exists(archivo))
{
SendClientMessage(playerid, 0xFFFFFFFF, "Debes ingresar para poder hablar. Como no estas registrado, primero usa /registro [Contraseсa].");
return 0;
}
if(Callado[playerid] == 1)
{
SendClientMessage(playerid, 0xFFFFFFFF, "No puedes hablar, ya que te han callado.");
return 0;
}
new string[256];
format(string, sizeof(string), "[%d]: %s", playerid, text);
SendPlayerMessageToAll(playerid, string);
return 0;
}
////////////////////////////////////////////////////
public OnPlayerCommandText(playerid, cmdtext[])
{
new cmd[256], idx;
cmd = strtok(cmdtext, idx);
/* ------------------------> [Comandos de usuarios] <------------------------- */
if (strcmp("/ayuda", cmd, true) == 0)
{
new nombre[MAX_PLAYER_NAME], string[256];
GetPlayerName(playerid, nombre, MAX_PLAYER_NAME);
format(string, sizeof(string), "Bienvenido, %s!", nombre);
SendClientMessage(playerid, 0xFFFFFFFF, string);
SendClientMessage(playerid, 0xFFFFFFFF, "||---------------------------|JADMIN|---------------------------||");
SendClientMessage(playerid, 0xFFFFFFFF, "Si Quieres registarte puedes usar /registro [contraseсa] (Seguramente ya estas registrado).");
SendClientMessage(playerid, 0xFFFFFFFF, "Para ingresar, usa /ingreso [contraseсa].");
SendClientMessage(playerid, 0xFFFFFFFF, "Para cambiar tu contraseсa, usa /cambiarPass [Otra contraseсa].");
SendClientMessage(playerid, 0xFFFFFFFF, "Para ver tus estadisticas, usa /Stat.");
SendClientMessage(playerid, 0xFFFFFFFF, "Si vez a un Cheater puedes usar /reportar [id] [razon].");
SendClientMessage(playerid, 0xFFFFFFFF, "Para guardar una posicion usa /guardarpos, y luego Cuando Quieras /cargarpos para Ir hacia ella.");
SendClientMessage(playerid, 0xFFFFFFFF, "Si quieres saber que admins estan conectados usa /Admins");
SendClientMessage(playerid, 0xFFFFFFFF, "||----------------------------|Fin|-----------------------------||");
return 1;
}
if (strcmp("/Stat", cmd, true) == 0)
{
new usuario[MAX_PLAYER_NAME], archivo[256], string1[256], string2[256], string3[256], string4[256], string5[256], string6[256], string7[256], string8[256];
GetPlayerName(playerid, usuario, sizeof(usuario));
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", usuario);
format(string1, sizeof(string1), "Tu usuario es {FF0000}%s y estos son los siguientes datos::", usuario);
format(string2, sizeof(string2), "Contraseсa: {FF0000}%s", dini_Get(archivo, "Contraseсa"));
format(string3, sizeof(string3), "Nivel Admin: {FF0000}%d", dini_Int(archivo, "NivelAdmin"));
format(string4, sizeof(string4), "Asesinatos: {FF0000}%d", dini_Int(archivo, "Asesinatos"));
format(string5, sizeof(string5), "Muertes: {FF0000}%d", dini_Int(archivo, "Muertes"));
format(string6, sizeof(string6), "Puntos: {FF0000}%d", GetPlayerScore(playerid));
format(string7, sizeof(string7), "Dinero: {FF0000}%d", GetPlayerMoney(playerid));
format(string8, sizeof(string8), "Posicion guardada: {FF0000}%f, %f, %f, %f.", dini_Int(archivo, "PosGuardada(X)"), dini_Int(archivo, "PosGuardada(Y)"), dini_Int(archivo, "PosGuardada(Z)"), dini_Int(archivo, "PosGuardada(Angulo)"));
SendClientMessage(playerid, 0xFFFFFFFF, string1);
SendClientMessage(playerid, 0xFFFFFFFF, string2);
SendClientMessage(playerid, 0xFFFFFFFF, string3);
SendClientMessage(playerid, 0xFFFFFFFF, string4);
SendClientMessage(playerid, 0xFFFFFFFF, string5);
SendClientMessage(playerid, 0xFFFFFFFF, string6);
SendClientMessage(playerid, 0xFFFFFFFF, string7);
SendClientMessage(playerid, 0xFFFFFFFF, string8);
return 1;
}
if (strcmp("/Creditos", cmd, true) == 0)
{
SendClientMessage(playerid, 0xFFFFFFFF, "||---------------------------|JADMIN|Creditos|---------------------------||");
SendClientMessage(playerid, 0xFFFFFFFF, "Has entrado en la parte de creditos. A continuacion veremos los creadores:");
SendClientMessage(playerid, 0xFFFFFFFF, "Bruunosoniico{FF0000} Fs Base");
SendClientMessage(playerid, 0xFFFFFFFF, "AugustO Modificacion y correcion de Bug's");
SendClientMessage(playerid, 0xFFFFFFFF, "||----------------------------|Fin|-----------------------------||");
return 1;
}
if (strcmp("/reportar", cmd, true) == 0)
{
new tmp1[256], tmp2[256], nombrejugador[MAX_PLAYER_NAME], nombrereportado[MAX_PLAYER_NAME], string[256], reportadoid;
{
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
reportadoid = strval(tmp1);
GetPlayerName(playerid, nombrejugador, sizeof(nombrejugador));
GetPlayerName(reportadoid, nombrereportado, sizeof(nombrereportado));
if (!strlen(tmp1) ||!strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /reportar [ID] [Razon]");
PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
format(string, sizeof(string), "El usuario %s [%d] ha reportado al usuario %s [%d] por %s.", nombrejugador, playerid, nombrereportado, reportadoid, cmdtext[10+strval(tmp1)]);
SendClientMessage(playerid, 0xFFFFFFFF, "Mensaje enviado a los administradores conectados.");
EnviarReporte(string);
}
return 1;
}
if (strcmp("/admins", cmd, true) == 0)
{
new cantidadadmins;
for(new i=0; i < MAX_PLAYERS; i++)
{
if (EsAdmin[i] == 1) cantidadadmins++;
}
if (cantidadadmins == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "No hay administradores conectados.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administradores conectados:");
for(new i=0; i < MAX_PLAYERS; i++)
{
if (EsAdmin[i] == 1)
{
new nombre[MAX_PLAYER_NAME], string[256];
GetPlayerName(i, nombre, MAX_PLAYER_NAME);
format(string, sizeof(string), "%s - Nivel %d", nombre, NivelAdmin);
SendClientMessage(playerid, 0xFFFFFFFF, string);
}
}
return 1;
}
if (strcmp("/guardarpos", cmd, true) == 0)
{
if (Ingreso[playerid] == 1)
{
new usuario[MAX_PLAYER_NAME], archivo[256], Float:x, Float:y, Float:z, Float:angulo;
GetPlayerName(playerid, usuario, sizeof(usuario));
GetPlayerPos(playerid, Float:x, Float:y, Float:z);
GetPlayerFacingAngle(playerid, Float:angulo);
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", usuario);
dini_FloatSet(archivo, "PosGuardada(X)", Float:x);
dini_FloatSet(archivo, "PosGuardada(Y)", Float:y);
dini_FloatSet(archivo, "PosGuardada(Z)", Float:z);
dini_FloatSet(archivo, "PosGuardada(Angulo)", Float:angulo);
SendClientMessage(playerid, 0xFFFFFFFF, "Posicion guardada exitosamente");
PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Para guardar una posicion, debes estar registrado. Usa /registro [Contraseсa] para registrarte.");
return 1;
}
if (strcmp("/cargarpos", cmd, true) == 0)
{
if (Ingreso[playerid] == 1)
{
new vehiculo, usuario[MAX_PLAYER_NAME], archivo[256];
vehiculo = GetPlayerVehicleID(playerid);
GetPlayerName(playerid, usuario, sizeof(usuario));
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", usuario);
if (dini_Int(archivo, "PosGuardada(X)") == 0 || dini_Int(archivo, "PosGuardada(Y)") == 0 || dini_Int(archivo, "PosGuardada(Z)") == 0 || dini_Int(archivo, "PosGuardada(Angulo)") == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "No has guardado ninguna posicion aun. Para guardar una, usa /guardarpos");
SetPlayerPos(playerid, dini_Int(archivo, "PosGuardada(X)"), dini_Int(archivo, "PosGuardada(Y)"), dini_Int(archivo, "PosGuardada(Z)")+1);
if(IsPlayerInAnyVehicle(playerid))
{
SetVehiclePos(vehiculo, dini_Int(archivo, "PosGuardada(X)"), dini_Int(archivo, "PosGuardada(Y)"), dini_Int(archivo, "PosGuardada(Z)")+1);
PutPlayerInVehicle(playerid, vehiculo, 0);
}
SetPlayerFacingAngle(playerid, dini_Int(archivo, "PosGuardada(Angulo)"));
SetCameraBehindPlayer(playerid);
SendClientMessage(playerid, 0xFFFFFFFF, "Posicion cargada exitosamente");
PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Para cargar una posicion debes estar registrado. Usa /registro [Contraseсa] para registrarte.");
return 1;
}
if (strcmp("/registro", cmd, true) == 0)
{
new tmp[256], usuario[MAX_PLAYER_NAME], archivo[256], string[256];
tmp = strtok(cmdtext, idx);
GetPlayerName(playerid, usuario, sizeof(usuario));
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", usuario);
if (dini_Exists(archivo)) return SendClientMessage(playerid, 0xFFFFFFFF, "Tu nombre ya se encuentra registrado. Usa /ingreso [contraseсa] para ingresar.");
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /registro [Contraseсa].");
if (strlen(tmp) < 4 || strlen(tmp) > 12) return SendClientMessage(playerid, 0xFFFFFFFF, "Su contraseсa debe contener entre 4 y 12 caracteres.");
dini_Create(archivo);
dini_Set(archivo, "Usuario", usuario);
dini_Set(archivo, "Contraseсa", cmdtext[10]);
dini_IntSet(archivo, "Baneado", 0);
dini_IntSet(archivo, "NivelAdmin", 0);
dini_IntSet(archivo, "Asesinatos", 0);
dini_IntSet(archivo, "Muertes", 0);
dini_IntSet(archivo, "Puntaje", GetPlayerScore(playerid));
dini_IntSet(archivo, "Dinero", GetPlayerMoney(playerid));
dini_IntSet(archivo, "PosGuardada(X)", 0);
dini_IntSet(archivo, "PosGuardada(Y)", 0);
dini_IntSet(archivo, "PosGuardada(Z)", 0);
dini_IntSet(archivo, "PosGuardada(Angulo)", 0);
format(string, sizeof(string), "Te has registrado correctamente. Usa /ingreso %s para ingresar.", cmdtext[10]);
SendClientMessage(playerid, COLOR_VERDE_OSCURO, string);
PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
return 1;
}
if (strcmp("/ingreso", cmd, true) == 0)
{
new tmp[256], archivo[256], usuario[MAX_PLAYER_NAME], comprobante1[256], comprobante2[256], string[256];
tmp = strtok(cmdtext, idx);
GetPlayerName(playerid, usuario, sizeof(usuario));
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", usuario);
if (Ingreso[playerid] == 1) return SendClientMessage(playerid, 0xFFFFFFFF, "Ya te encuentras identificado.");
if (!dini_Exists(archivo)) return SendClientMessage(playerid, 0xFFFFFFFF, "Tu nombre no se encuentra registrado. Usa /registro [contraseсa] para registrarte.");
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa /ingreso [Contraseсa].");
format(comprobante1, sizeof(comprobante1), "%s", cmdtext[9]);
format(comprobante2, sizeof(comprobante2), "%s", dini_Get(archivo, "Contraseсa"));
if (!strcmp(comprobante1, comprobante2))
{
if (dini_Int(archivo, "Baneado") == 0)
{
Ingreso[playerid] = 1;
NivelAdmin[playerid] = dini_Int(archivo, "NivelAdmin");
SetPlayerScore(playerid, dini_Int(archivo, "Puntaje"));
GivePlayerMoney(playerid, dini_Int(archivo, "Dinero")-GetPlayerMoney(playerid));
SendClientMessage(playerid, 0xFFFFFFFF, "Has ingresado correctamente");
PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
if (NivelAdmin[playerid] == 1 || NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
EsAdmin[playerid] = 1;
}
}
else
{
format(string, sizeof(string), "%s ha sido auto-kickeado. (Razon: Usuario baneado.)", usuario);
SendClientMessageToAll(0xFFFFFFFF, string);
Kick(playerid);
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Contraseсa incorrecta.");
return 1;
}
if (strcmp("/cambiarPass", cmd, true) == 0)
{
if (Ingreso[playerid] == 1)
{
new tmp[256], usuario[MAX_PLAYER_NAME], archivo[256], string[256];
tmp = strtok(cmdtext, idx);
GetPlayerName(playerid, usuario, sizeof(usuario));
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", usuario);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: {FFFF00}/cambiarpass [Nueva contraseсa].");
if (strlen(tmp) < 4 || strlen(tmp) > 12) return SendClientMessage(playerid, 0xFFFFFFFF, "Su contraseсa debe contener entre 4 y 12 caracteres.");
dini_Set(archivo, "Contraseсa", cmdtext[15]);
Ingreso[playerid] = 0;
format(string, sizeof(string), "Tu contraseсa a sido cambiada con exito. Usa /ingreso %s para ingresar nuevamente.", cmdtext[15]);
SendClientMessage(playerid, COLOR_VERDE_OSCURO, string);
PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Para cambiar tu contraseсa, debes estar registrado. Usa /registro [contraseсa] para registrarte.");
return 1;
}
/* ------------------------> [Comandos de administradores] <------------------------- */
if (strcmp(cmd, "/acomandos", true) == 0)
{
if (NivelAdmin[playerid] == 1)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Comandos de administrador:");
SendClientMessage(playerid, 0xFFFFFFFF, "Moderador nivel 1: /adecir /color /anuncio /limpiar /vcolor /espiar /kick");
}
else if (NivelAdmin[playerid] == 2)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Comandos de administrador:");
SendClientMessage(playerid, 0xFFFFFFFF, "Moderador Lider nivel 2: /adecir /color /anuncio /limpiar /vcolor /espiar /kick.");
SendClientMessage(playerid, 0xFFFFFFFF, "Moderador Lider nivel 2: /ir /traer /encarcelar / desencarcelar /congelar /descongelar /advertir.");
}
else if (NivelAdmin[playerid] == 3)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Comandos de administrador:");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador nivel 3: /adecir /color /anuncio /limpiar /vcolor /espiar /kick.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador nivel 3: /ir /traer /encarcelar / desencarcelar /congelar /descongelar /advertir.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador nivel 3: /Darvida /dardinero /dararma /blindaje /Autovida /Autoreparar /Autodestruir /askin.");
}
else if (NivelAdmin[playerid] == 4)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Comandos de administrador:");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador Lider nivel 4: /adecir /color /anuncio /limpiar /vcolor /espiar /kick.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador Lider nivel 4: /ir /traer /encarcelar / desencarcelar /congelar /descongelar /advertir.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador Lider nivel 4: /Darvida /dardinero /dararma /blindaje /Autovida /Autoreparar /Autodestruir /askin.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador Lider nivel 4: /callar /hora /clima /ban /mundo /cambiarinterior /vnitro /adminV /puntaje.");
}
else if (NivelAdmin[playerid] == 5)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Comandos de administrador:");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador Dueсo nivel 5: /adecir /color /anuncio /limpiar /vcolor /espiar /kick.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador Dueсo nivel 5: /ir /traer /encarcelar / desencarcelar /congelar /descongelar /advertir.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador Dueсo nivel 5: /Darvida /dardinero /dararma /blindaje /Autovida /Autoreparar /Autodestruir /askin.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador Dueсo nivel 5: /callar /hora /clima /ban /mundo /cambiarinterior /vnitro /adminV /puntaje.");
SendClientMessage(playerid, 0xFFFFFFFF, "Administrador Dueсo nivel 5: /niveladmin /dios /vdios /nombre.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador para usar este comando.");
return 1;
}
if (strcmp(cmd, "/adecir", true) == 0)
{
if (NivelAdmin[playerid] == 1 || NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256], string[256], nombre[MAX_PLAYER_NAME];
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /adecir [Texto].");
GetPlayerName(playerid, nombre, MAX_PLAYER_NAME);
format(string, sizeof(string), "{FF0000}[%s]: %s", nombre, cmdtext[7]);
SendClientMessageToAll(0xFFFFFFFF, string);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 1 para usar este comando.");
return 1;
}
if(!strcmp(cmdtext, "/color", true, 19))
{
if(!strlen(cmdtext[45]))return Mensaje(jugador, rojo, "Uso: /color [Nombre del Color]");
if(!strcmp(cmdtext[20], "verde", true))
{
SetPlayerColor(jugador, verde);
return Mensaje(jugador, verde, "-= Tu nick ahora es verde!! =-");
}
else if(!strcmp(cmdtext[20], "blanco", true))
{
SetPlayerColor(jugador, blanco);
return Mensaje(jugador, blanco, "-= Tu nick ahora es blanco!! =-");
}
else if(!strcmp(cmdtext[20], "rojo", true))
{
SetPlayerColor(jugador, rojo);
return Mensaje(jugador, rojo, "-= Tu nick ahora es rojo!! =-");
}
else if(!strcmp(cmdtext[20], "amarillo", true))
{
SetPlayerColor(jugador, amarillo);
return Mensaje(jugador, amarillo, "-= Tu nick ahora es blanco!! =-");
}
else if(!strcmp(cmdtext[20], "azul", true))
{
SetPlayerColor(jugador, azul);
return Mensaje(jugador, azul, "-= Tu nick ahora es blanco!! =-");
}
else if(!strcmp(cmdtext[20], "naranja", true))
{
SetPlayerColor(jugador, naranja);
return Mensaje(jugador, naranja, "-= Tu nick ahora es blanco!! =-");
}
else if(!strcmp(cmdtext[20], "celeste", true))
{
SetPlayerColor(jugador, celeste);
return Mensaje(jugador, celeste, "-= Tu nick ahora es blanco!! =-");
}
else if(!strcmp(cmdtext[20], "rosa", true))
{
SetPlayerColor(jugador, rosa);
return Mensaje(jugador, rosa, "-= Tu nick ahora es blanco!! =-");
}
else if(!strcmp(cmdtext[20], "negro", true))
{
SetPlayerColor(jugador, negro);
return Mensaje(jugador, negro, "-= Tu nick ahora es blanco!! =-");
}
else if(!strcmp(cmdtext[20], "morado", true))
{
SetPlayerColor(jugador, morado);
return Mensaje(jugador, morado, "-= Tu nick ahora es blanco!! =-");
}return Mensaje(jugador, rojo, "-= El color que intentas obtener no existe =-");
}
if (strcmp(cmd, "/anuncio", true) == 0)
{
if (NivelAdmin[playerid] == 1 || NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256];
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /anuncio [Texto].");
GameTextForAll(cmdtext[9], 5000, 5);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 1 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/limpiar", true) == 0)
{
if (NivelAdmin[playerid] == 1 || NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new nombre[MAX_PLAYER_NAME], string[256];
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
SendClientMessageToAll(0xFFFFFFFF, " ");
GetPlayerName(playerid, nombre, sizeof(nombre));
format(string, sizeof(string), "%s ha limpiado el chat.", nombre);
SendClientMessageToAll(COLOR_VERDE_CLARO, string);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 1 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/vcolor", true) == 0)
{
if (NivelAdmin[playerid] == 1 || NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], tmp3[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], vehiculo, color1, color2;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
tmp3 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2) || strlen(tmp3)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /vcolor [ID] [Color1] [Color2].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
vehiculo = GetVehicleModel(GetPlayerVehicleID(jugador));
color1 = strval(tmp2);
color2 = strval(tmp3);
if (IsPlayerConnected(jugador))
{
if (IsPlayerInAnyVehicle(jugador))
{
format(string1, sizeof(string1), "Has cambiado el color del vehiculo de %s. (Color 1: %d Color 2: %d)", nombrejugador, color1, color2);
format(string2, sizeof(string2), "%s ha cambiado el color de tu vehiculo. (Color 1: %d Color 2: %d)", nombreadmin, color1, color2);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
ChangeVehicleColor(vehiculo, color1, color2);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra en un vehiculo.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 1 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/espiar", true) == 0)
{
if (NivelAdmin[playerid] == 1 || NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256], jugador, admin, Float:x, Float:y, Float:z, Float:angulo;
if (Espiando[playerid] == 0)
{
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /espiar [ID]. Para dejar de espiar usa /espiar nuevamente.");
jugador = strval(tmp);
admin = playerid;
if (strval(tmp) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes espiarte a ti mismo.");
if (IsPlayerConnected(jugador))
{
Espiando[playerid] = 1;
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
TogglePlayerSpectating(admin, true);
PlayerSpectatePlayer(admin, jugador, SPECTATE_MODE_NORMAL);
GetPlayerPos(admin, Float:x, Float:y, Float:z);
GetPlayerFacingAngle(admin, Float:angulo);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else if (Espiando[playerid] == 1)
{
if (strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /espiar para dejar de espiar.");
Espiando[admin] = 0;
TogglePlayerSpectating(admin, false);
SetPlayerPos(admin, Float:x, Float:y, Float:z);
SetPlayerFacingAngle(admin, Float:angulo);
SetCameraBehindPlayer(admin);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 1 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/kick", true) == 0)
{
if (NivelAdmin[playerid] == 1 || NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
jugador = strval(tmp1);
admin = playerid;
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /kick [ID] [Razon].");
if (strval(tmp1) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes kickearte a ti mismo.");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "%s ha sido kickeado. (Razon: %s.)", nombrejugador, cmdtext[7+strlen(tmp1)]);
format(string2, sizeof(string2), "Has sido kickeado por %s. (Razon: %s.)", nombreadmin, cmdtext[7+strlen(tmp1)]);
format(string3, sizeof(string3), "%s ha sido kickeado por %s. (Razon: %s.)", nombrejugador, nombreadmin, cmdtext[7+strlen(tmp1)]);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
Kick(jugador);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 1 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/ir", true) == 0)
{
if (NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256], jugador, admin, vehiculo, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], Float:x, Float:y, Float:z, Float:angulo;
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /ir [ID].");
jugador = strval(tmp);
admin = playerid;
vehiculo = GetPlayerVehicleID(admin);
if (strval(tmp) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes ir hacia ti mismo.");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
GetPlayerPos(jugador, Float:x, Float:y, Float:z);
GetPlayerFacingAngle(jugador, Float:angulo);
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has ido a la posicion de %s.", nombrejugador);
format(string2, sizeof(string2), "%s ha ido a tu posicion.", nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerPos(admin, Float:x+2, Float:y, Float:z);
SetPlayerInterior(admin, GetPlayerInterior(jugador));
if (IsPlayerInAnyVehicle(admin))
{
SetVehiclePos(vehiculo, Float:x+2, Float:y, Float:z);
PutPlayerInVehicle(admin, vehiculo, 0);
}
SetPlayerFacingAngle(admin, Float:angulo);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 2 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/traer", true) == 0)
{
if (NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256], jugador, admin, vehiculo, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], Float:x, Float:y, Float:z, Float:angulo;
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /traer [ID].");
jugador = strval(tmp);
admin = playerid;
vehiculo = GetPlayerVehicleID(jugador);
if (strval(tmp) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes traerte a ti mismo.");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
GetPlayerPos(admin, Float:x, Float:y, Float:z);
GetPlayerFacingAngle(admin, Float:angulo);
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has traido a %s a tu posicion.", nombrejugador);
format(string2, sizeof(string2), "Has sido traido a la posicion de %s.", nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerPos(jugador, Float:x+2, Float:y, Float:z);
SetPlayerInterior(jugador, GetPlayerInterior(admin));
if(IsPlayerInAnyVehicle(jugador))
{
SetVehiclePos(vehiculo, Float:x+2, Float:y, Float:z);
PutPlayerInVehicle(jugador, vehiculo, 0);
}
SetPlayerFacingAngle(jugador, Float:angulo);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 2 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/encarcelar", true) == 0)
{
if (NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], tmp3[256], jugador, admin, string1[256], string2[256], string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], minutos;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
tmp3 = strtok(cmdtext, idx);
jugador = strval(tmp1);
admin = playerid;
if (!strlen(tmp1) || !strlen(tmp2) || !strlen(tmp3)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /encarcelar [ID] [Minutos] [Razon].");
if (strval(tmp1) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes encarcelarte a ti mismo.");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
minutos = strval(tmp2);
if (IsPlayerConnected(jugador))
{
if (Encarcelado[jugador] == 1) return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador se encuentra encarcelado.");
Encarcelado[jugador] = 1;
format(string1, sizeof(string1), "%s ha sido encarcelado durante %d minutos. (Razon: %s.)", nombrejugador, minutos, cmdtext[14+strlen(tmp1)+strlen(tmp2)]);
format(string2, sizeof(string2), "Has sido encarcelado por %s durante %d minutos. (Razon: %s.)", nombreadmin, minutos, cmdtext[14+strlen(tmp1)+strlen(tmp2)]);
format(string3, sizeof(string3), "%s ha sido encarcelado por %s durante %d minutos. (Razon: %s.)", nombrejugador, nombreadmin, minutos, cmdtext[14+strlen(tmp1)+strlen(tmp2)]);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
SetPlayerPos(jugador, 264.3726, 77.2826, 1001.0391);
SetPlayerFacingAngle(jugador, 269.9999);
SetPlayerInterior(jugador, 6);
SetCameraBehindPlayer(jugador);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
ktdesencarcelar = SetTimerEx("tdesencarcelar", minutos*60000, false, "d", jugador);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 2 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/desencarcelar", true) == 0)
{
if (NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256], jugador, admin, string1[256], string2[256], string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
tmp = strtok(cmdtext, idx);
jugador = strval(tmp);
admin = playerid;
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /desencarcelar [ID].");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
if (Encarcelado[jugador] == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra encarcelado.");
Encarcelado[jugador] = 0;
format(string1, sizeof(string1), "%s ha sido desencarcelado.", nombrejugador);
format(string2, sizeof(string2), "Has sido desencarcelado por %s.", nombreadmin);
format(string3, sizeof(string3), "%s ha sido desencarcelado por %s.", nombrejugador, nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerPos(jugador, 264.1163, 82.0803, 1001.0391);
SetPlayerFacingAngle(jugador, 269.0000);
SetPlayerInterior(jugador, 6);
SetCameraBehindPlayer(jugador);
KillTimer(ktdesencarcelar);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 2 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/congelar", true) == 0)
{
if (NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], tmp3[256], jugador, admin, string1[256], string2[256], string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], minutos;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
tmp3 = strtok(cmdtext, idx);
jugador = strval(tmp1);
admin = playerid;
if (!strlen(tmp1) || !strlen(tmp2) || !strlen(tmp3)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /congelar [ID] [Minutos] [Razon].");
if (strval(tmp1) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes congelarte a ti mismo.");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
minutos = strval(tmp2);
if (IsPlayerConnected(jugador))
{
if (Congelado[jugador] == 1) return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador se encuentra congelado.");
Congelado[jugador] = 1;
format(string1, sizeof(string1), "%s ha sido congelado durante %d minutos. (Razon: %s.)", nombrejugador, minutos, cmdtext[12+strlen(tmp1)+strlen(tmp2)]);
format(string2, sizeof(string2), "Has sido congelado por %s durante %d minutos. (Razon: %s.)", nombreadmin, minutos, cmdtext[12+strlen(tmp1)+strlen(tmp2)]);
format(string3, sizeof(string3), "%s ha sido congelado por %s durante %d minutos. (Razon: %s.)", nombrejugador, nombreadmin, minutos, cmdtext[12+strlen(tmp1)+strlen(tmp2)]);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
TogglePlayerControllable(jugador, false);
SetCameraBehindPlayer(jugador);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
ktdescongelar = SetTimerEx("tdescongelar", minutos*60000, false, "d", jugador);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 2 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/descongelar", true) == 0)
{
if (NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256], jugador, admin, string1[256], string2[256], string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
tmp = strtok(cmdtext, idx);
jugador = strval(tmp);
admin = playerid;
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /descongelar [ID].");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
if (Congelado[jugador] == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra congelado.");
Congelado[jugador] = 0;
format(string1, sizeof(string1), "%s ha sido descongelado.", nombrejugador);
format(string2, sizeof(string2), "Has sido descongelado por %s.", nombreadmin);
format(string3, sizeof(string3), "%s ha sido descongelado por %s.", nombrejugador, nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
TogglePlayerControllable(jugador, true);
SetCameraBehindPlayer(jugador);
KillTimer(ktdescongelar);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 2 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/advertir", true) == 0)
{
if (NivelAdmin[playerid] == 2 || NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /advertir [ID] [Razon].");
jugador = strval(tmp1);
admin = playerid;
if (strval(tmp1) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes advertirte a ti mismo.");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
if (Advertido[jugador] == 0)
{
Advertido[jugador] = 1;
format(string1, sizeof(string1), "%s ha sido advertido. (Razon: %s.) (1/3)", nombrejugador, cmdtext[11+strlen(tmp1)]);
format(string2, sizeof(string2), "Has sido advertido por %s. (Razon: %s.) (1/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
format(string3, sizeof(string3), "%s ha sido advertido por %s. (Razon: %s.) (1/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
}
else if (Advertido[jugador] == 1)
{
Advertido[jugador] = 2;
format(string1, sizeof(string1), "%s ha sido advertido. (Razon: %s.) (2/3)", nombrejugador, cmdtext[11+strlen(tmp1)]);
format(string2, sizeof(string2), "Has sido advertido por %s. (Razon: %s.) (2/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
format(string3, sizeof(string3), "%s ha sido advertido por %s. (Razon: %s.) (2/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
}
else if (Advertido[jugador] == 2)
{
format(string1, sizeof(string1), "%s ha sido advertido. (Razon: %s.) (3/3)", nombrejugador, cmdtext[11+strlen(tmp1)]);
format(string2, sizeof(string2), "Has sido advertido por %s. (Razon: %s.) (3/3)", nombreadmin, cmdtext[11+strlen(tmp1)]);
format(string3, sizeof(string3), "%s ha sido advertido por %s. (Razon: %s.) (3/3)", nombrejugador, nombreadmin, cmdtext[11+strlen(tmp1)]);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
Kick(jugador);
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 2 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/DarVida", true) == 0)
{
if (NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], Float:vida;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /Darvida [ID] [Cantidad].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
vida = float(strval(tmp2));
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has puesto la vida de %s en %f.", nombrejugador, vida);
format(string2, sizeof(string2), "%s ha puesto tu vida en %f.", nombreadmin, vida);
SendClientMessage(admin, 0xFFFFFFFF, string1);
SendClientMessage(jugador, 0xFFFFFFFF, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerHealth(jugador, vida);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 3 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/dardinero", true) == 0)
{
if (NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], dinero;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /dardinero [ID] [Cantidad].");
if (strval(tmp2) < 100 || strval(tmp2) > 1000000) return SendClientMessage(playerid, 0xFFFFFFFF, "Debes dar entre $100 y $1000000.");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
dinero = strval(tmp2);
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Le has dado $%d a %s.", dinero, nombrejugador);
format(string2, sizeof(string2), "%s te ha dado $%d.", nombreadmin, dinero);
SendClientMessage(admin, 0xFFFFFFFF, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
GivePlayerMoney(jugador, dinero);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 3 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/dararma", true) == 0)
{
if (NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], tmp3[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], arma, municion;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
tmp3 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2) || !strlen(tmp3)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /dararma [ID] [Arma] [Municion].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
arma = strval(tmp2);
municion = strval(tmp3);
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Le has dado a %s un arma. (ID: %d - Municion: %d)", nombrejugador, arma, municion);
format(string2, sizeof(string2), "%s te ha dado un arma. (ID: %d - Municion: %d)", nombreadmin, arma, municion);
SendClientMessage(admin, 0xFFFFFFFF, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
GivePlayerWeapon(jugador, arma, municion);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 3 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/blindaje", true) == 0)
{
if (NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], Float:blindaje;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /blindaje [ID] [Cantidad].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
blindaje = float(strval(tmp2));
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has puesto el blindaje de %s en %f.", nombrejugador, blindaje);
format(string2, sizeof(string2), "%s ha puesto tu blindaje en %f.", nombreadmin, blindaje);
SendClientMessage(admin, 0xFFFFFFFF, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerArmour(jugador, blindaje);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 3 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/Autovida", true) == 0)
{
if (NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], Float:vvida;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: {00FFFF}/Autovida [ID] [Cantidad].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
vvida = float(strval(tmp2));
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has puesto la vida del vehiculo de %s en %f.", nombrejugador, vvida);
format(string2, sizeof(string2), "%s ha puesto la vida de tu vehiculo en %f.", nombreadmin, vvida);
SendClientMessage(admin, 0xFFFFFFFF, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetVehicleHealth(GetPlayerVehicleID(jugador), vvida);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 3 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/AutoReparar", true) == 0)
{
if (NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /Autoreparar [ID].");
jugador = strval(tmp);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
if (IsPlayerInAnyVehicle(jugador))
{
format(string1, sizeof(string1), "Has reparado el vehiculo de %s.", nombrejugador);
format(string2, sizeof(string2), "%s ha reparado tu vehiculo.", nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
RepairVehicle(GetPlayerVehicleID(jugador));
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra en un vehiculo.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 3 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/Autodestruir", true) == 0)
{
if (NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
tmp1 = strtok(cmdtext, idx);
if (!strlen(tmp1)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /Autodestruir [ID].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
if (IsPlayerInAnyVehicle(jugador))
{
format(string1, sizeof(string1), "Has destruido el vehiculo de %s.", nombrejugador);
format(string2, sizeof(string2), "%s ha destruido tu vehiculo.", nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
DestroyVehicle(GetPlayerVehicleID(jugador));
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra en un vehiculo.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nviel 3 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/askin", true) == 0)
{
if (NivelAdmin[playerid] == 3 || NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], skin;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /askin [ID] [Skin].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
skin = strval(tmp2);
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has cambiado el skin de %s. (ID: %d)", nombrejugador, skin);
format(string2, sizeof(string2), "%s ha cambiado tu skin. (ID: %d)", nombreadmin, skin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerSkin(jugador, skin);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 3 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/callar", true) == 0)
{
if (NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], string3[256], string4[256], string5[256], string6[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /callar [ID] [Razon]. Para que deje de estar callado, usa /callar [ID].");
jugador = strval(tmp1);
admin = playerid;
if (strval(tmp1) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes callarte a ti mismo.");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
if (Callado[jugador] == 0)
{
format(string4, 256, "%s ha sido callado. (Razon: %s.)", nombrejugador, cmdtext[9+strlen(tmp1)]);
format(string5, 256, "Has sido callado por %s. (Razon: %s.)", nombreadmin, cmdtext[9+strlen(tmp1)]);
format(string6, 256, "%s ha sido callado por %s. (Razon: %s.)", nombrejugador, nombreadmin, cmdtext[9+strlen(tmp1)]);
SendClientMessage(admin, COLOR_AZUL, string4);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string5);
SendClientMessageToAll(0xFFFFFFFF, string6);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
Callado[jugador] = 1;
}
else if (Callado[jugador] == 1)
{
format(string1, sizeof(string1), "%s ha dejado de ser callado.", nombrejugador, cmdtext[9+strlen(tmp1)]);
format(string2, sizeof(string2), "Has dejado de estar callado por %s.", nombreadmin, cmdtext[9+strlen(tmp1)]);
format(string3, sizeof(string3), "%s ha dejado de estar callado por %s.", nombrejugador, nombreadmin, cmdtext[9+strlen(tmp1)]);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
Callado[jugador] = 0;
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 4 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/hora", true) == 0)
{
if (NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], admin, string[256], nombreadmin[MAX_PLAYER_NAME], hora, minuto;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /hora [Hora] [Minuto].");
admin = playerid;
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
hora = strval(tmp1);
minuto = strval(tmp2);
format(string, sizeof(string), "%s ha puesto la hora en %d:%d.", nombreadmin, hora, minuto);
SendClientMessageToAll(0xFFFFFFFF, string);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
for(new i=0; i < MAX_PLAYERS; i++)
{
SetPlayerTime(i, hora, minuto);
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 4 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/clima", true) == 0)
{
if (NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256], admin, string[256], nombreadmin[MAX_PLAYER_NAME], clima;
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /clima [ID de Clima].");
admin = playerid;
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
clima = strval(tmp);
format(string, sizeof(string), "%s ha cambiado el clima. (ID: %d.)", nombreadmin, clima);
SendClientMessageToAll(0xFFFFFFFF, string);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
for(new i=0; i < MAX_PLAYERS; i++)
{
SetPlayerWeather(i, clima);
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 4 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/ban", true) == 0)
{
if (NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], string3[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], archivo[256];
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
jugador = strval(tmp1);
admin = playerid;
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /ban [ID] [Razon].");
if (strval(tmp1) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes banearte a ti mismo.");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "%s ha sido baneado. (Razon: %s.)", nombrejugador, cmdtext[6+strlen(tmp1)]);
format(string2, sizeof(string2), "Has sido baneado por %s. (Razon: %s.)", nombreadmin, cmdtext[6+strlen(tmp1)]);
format(string3, sizeof(string3), "%s ha sido baneado por %s. (Razon: %s.)", nombrejugador, nombreadmin, cmdtext[6+strlen(tmp1)]);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
SendClientMessageToAll(0xFFFFFFFF, string3);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
Ban(jugador);
format(archivo, sizeof(archivo), "%s.ini", nombrejugador);
dini_IntSet(archivo, "Baneado", 1);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 4 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/mundo", true) == 0)
{
if (NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], mundo;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /mundo [ID] [Mundo].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
mundo = strval(tmp2);
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has puesto a %s en el mundo %d.", nombrejugador, mundo);
format(string2, sizeof(string2), "%s te ha puesto en el mundo %d.", nombreadmin, mundo);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerVirtualWorld(jugador, mundo);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 4 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/cambiarinterior", true) == 0)
{
if (NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], interior;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /cambiarinterior [ID] [Interior].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
interior = strval(tmp2);
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has puesto a %s en el interior %d.", nombrejugador, interior);
format(string2, sizeof(string2), "%s te ha puesto en el interior %d.", nombreadmin, interior);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerInterior(jugador, interior);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 4 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/vnitro", true) == 0)
{
if (NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME];
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /vnitro [ID].");
jugador = strval(tmp);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
if (IsPlayerInAnyVehicle(jugador))
{
format(string1, sizeof(string1), "Le has aсadido nitro al vehiculo de %s.", nombrejugador);
format(string2, sizeof(string2), "%s le ha aсadido nitro a tu vehiculo.", nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
AddVehicleComponent(GetPlayerVehicleID(jugador), 1010);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra en un vehiculo.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 4 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/AdminV", true) == 0)
{
if (NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], tmp3[256], tmp4[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], Float:x, Float:y, Float:z, Float:angulo, vehiculo, color1, color2, idvehiculo;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
tmp3 = strtok(cmdtext, idx);
tmp4 = strtok(cmdtext, idx);
if (!strlen(tmp1)) return SendClientMessage(playerid, 0xFFFFFFFF, "Debes especificar un jugador.");
if (!strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Debes especificar un vehiculo.");
jugador = strval(tmp1);
admin = playerid;
if (IsPlayerInAnyVehicle(jugador)) return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador se encuentra en un vehiculo.");
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
GetPlayerPos(jugador, Float:x, Float:y, Float:z);
GetPlayerFacingAngle(jugador, Float:angulo);
vehiculo = strval(tmp2);
color1 = strval(tmp3);
color2 = strval(tmp4);
if (!IsNumeric(tmp2)) vehiculo = GetVehicleModelIDFromName(tmp2);
//if (strval(tmp2) < 400 || strval(tmp2) > 611) return SendClientMessage(playerid, 0xFFFFFFFF, "Vehiculo invalido. Elige entre 400 y 611.");
if (!strlen(tmp3)) color1 = random(126); else color1 = strval(tmp3);
if (!strlen(tmp4)) color2 = random(126); else color2 = strval(tmp4);
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Le has dado a %s un vehiculo. (ID: %d - Color 1: %d - Color 2: %d)", nombrejugador, vehiculo, color1, color2);
format(string2, sizeof(string2), "%s te ha dado un vehiculo. (ID: %d - Color 1: %d - Color 2: %d)", nombreadmin, vehiculo, color1, color2);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
idvehiculo = CreateVehicle(vehiculo, Float:x, Float:y, Float:z, Float:angulo, color1, color2, 0);
PutPlayerInVehicle(jugador, idvehiculo, 0);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 4 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/puntaje", true) == 0)
{
if (NivelAdmin[playerid] == 4 || NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], puntos;
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /puntaje [ID] [Cantidad].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
puntos = strval(tmp2);
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has puesto los puntos de %s en %d.", nombrejugador, puntos);
format(string2, sizeof(string2), "%s ha puesto tus puntos en %d.", nombreadmin, puntos);
SendClientMessage(admin, 0xFFFFFFFF, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerScore(jugador, puntos);
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 4 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/niveladmin", true) == 0)
{
if (NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], nivel, archivo[256];
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /niveladmin [ID] [Nivel].");
if (strval(tmp2) < 0 || strval(tmp2) > 5) return SendClientMessage(playerid, 0xFFFFFFFF, "Debes elegir un nivel de 0 a 5.");
if (strval(tmp1) == admin) return SendClientMessage(playerid, 0xFFFFFFFF, "No puedes cambiar tu propio nivel.");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
nivel = strval(tmp2);
if (IsPlayerConnected(jugador))
{
NivelAdmin[jugador] = nivel;
EsAdmin[jugador] = 1;
format(string1, sizeof(string1), "Has puesto el nivel de administrador de %s en %d.", nombrejugador, nivel);
format(string2, sizeof(string2), "%s ha puesto tu nivel de administrador en %d.", nombreadmin, nivel);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", nombrejugador);
if (dini_Exists(archivo))
{
dini_IntSet(archivo, "NivelAdmin", nivel);
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 5 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/dios", true) == 0)
{
if (NivelAdmin[playerid] == 5)
{
new tmp[256], jugador, admin, string1[256], string2[256], string3[256], string4[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], Float:vida;
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /dios [ID]. Para desactivar el modo dios, usa /dios [ID] nuevamente.");
jugador = strval(tmp);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
GetPlayerHealth(jugador, vida);
if (IsPlayerConnected(jugador))
{
if (Dios[jugador] == 0)
{
Dios[jugador] = 1;
format(string1, sizeof(string1), "Has hecho inmortal a %s.", nombrejugador);
format(string2, sizeof(string2), "%s te ha hecho inmortal.", nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerHealth(jugador, 100000);
}
else if (Dios[jugador] == 1)
{
Dios[jugador] = 0;
format(string3, sizeof(string3), "Le has quitado la inmortalidad a %s.", nombrejugador);
format(string4, 256, "%s te ha quitado la inmortalidad.", nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string3);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string4);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerHealth(jugador, vida);
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 5 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/vdios", true) == 0)
{
if (NivelAdmin[playerid] == 5)
{
new tmp[256], jugador, admin, string1[256], string2[256], string3[256], string4[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], Float:vida;
tmp = strtok(cmdtext, idx);
if (!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /vdios [ID]. Para desactivar el modo dios, usa /vdios [ID] nuevamente.");
jugador = strval(tmp);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
GetVehicleHealth(GetPlayerVehicleID(jugador), vida);
if (IsPlayerConnected(jugador))
{
if (VDios[jugador] == 0)
{
VDios[jugador] = 1;
format(string1, sizeof(string1), "Has hecho indestructibles los vehiculos de %s.", nombrejugador);
format(string2, sizeof(string2), "%s ha hecho que tus vehiculos sean indestructibles.", nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string1);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
ktvdios = SetTimerEx("tvdios", 0, true, "d", jugador);
}
else if (VDios[jugador] == 1)
{
VDios[jugador] = 0;
format(string3, sizeof(string3), "Le has quitado la idestructibilidad de vehiculos a %s.", nombrejugador);
format(string4, 256, "%s te ha quitado la indestructibilidad de vehiculos.", nombreadmin);
SendClientMessage(admin, COLOR_AZUL, string3);
SendClientMessage(jugador, COLOR_VERDE_CLARO, string4);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
KillTimer(ktvdios);
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 5 para usar este comando.");
return 1;
}
if (strcmp(cmd, "/nombre", true) == 0)
{
if (NivelAdmin[playerid] == 5)
{
new tmp1[256], tmp2[256], jugador, admin, string1[256], string2[256], nombrejugador[MAX_PLAYER_NAME], nombreadmin[MAX_PLAYER_NAME], archivo[256];
tmp1 = strtok(cmdtext, idx);
tmp2 = strtok(cmdtext, idx);
if (!strlen(tmp1) || !strlen(tmp2)) return SendClientMessage(playerid, 0xFFFFFFFF, "Usa: /nombre [ID] [Nombre].");
jugador = strval(tmp1);
admin = playerid;
GetPlayerName(jugador, nombrejugador, sizeof(nombrejugador));
GetPlayerName(admin, nombreadmin, sizeof(nombreadmin));
if (IsPlayerConnected(jugador))
{
format(string1, sizeof(string1), "Has cambiado el nombre de de %s a %s.", nombrejugador, cmdtext[9+strlen(tmp1)]);
format(string2, sizeof(string2), "%s ha cambiado tu nombre a %s.", nombreadmin, cmdtext[9+strlen(tmp1)]);
SendClientMessage(admin, 0xFFFFFFFF, string1);
SendClientMessage(jugador, 0xFFFFFFFF, string2);
PlayerPlaySound(admin, 1057, 0.0, 0.0, 0.0);
PlayerPlaySound(jugador, 1057, 0.0, 0.0, 0.0);
SetPlayerName(jugador, cmdtext[9+strlen(tmp1)]);
ForceClassSelection(jugador);
SetPlayerHealth(jugador, 0.0);
Ingreso[jugador] = 0;
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", cmdtext[9+strlen(tmp1)]);
if (dini_Exists(archivo)) return SendClientMessage(playerid, 0xFFFFFFFF, "Tu nombre se encuentra registrado. Usa /ingreso [contraseсa] para ingresar.");
if (!dini_Exists(archivo)) return SendClientMessage(playerid, 0xFFFFFFFF, "Tu nombre no se encuentra registrado. Usa /registro [contraseсa] para registrarte.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "El jugador no se encuentra conectado.");
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Necesitas ser administrador nivel 5 para usar este comando.");
return 1;
}
return 0;
}
public OnPlayerRequestSpawn(playerid)
{
new archivo[256], usuario[MAX_PLAYER_NAME];
GetPlayerName(playerid, usuario, sizeof(usuario));
format(archivo, sizeof(archivo), "JADMIN/Users/%s.ini", usuario);
if(dini_Exists(archivo))
{
if(Ingreso[playerid] == 0)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Debes ingresar antes de spawnear. Usa /ingreso [Contraseсa].");
return 0;
}
}
else if(!dini_Exists(archivo))
{
SendClientMessage(playerid, 0xFFFFFFFF, "Debes ingresar antes de spawnear. Como no estas registrado, primero usa /registro [Contraseсa].");
return 0;
}
return 1;
}
////////////////////////////////////////////////////
public tvdios(playerid)
{
if (IsPlayerInAnyVehicle(playerid))
{
RepairVehicle(GetPlayerVehicleID(playerid));
}
return 1;
}
////////////////////////////////////////////////////
public tdescongelar(playerid)
{
Congelado[playerid] = 0;
PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
TogglePlayerControllable(playerid, true);
SetCameraBehindPlayer(playerid);
return 1;
}
////////////////////////////////////////////////////
public tdesencarcelar(playerid)
{
Encarcelado[playerid] = 0;
PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
SetPlayerPos(playerid, 264.1163, 82.0803, 1001.0391);
SetPlayerFacingAngle(playerid, 269.0000);
SetPlayerInterior(playerid, 6);
SetCameraBehindPlayer(playerid);
return 1;
}
////////////////////////////////////////////////////
public pingcheck(playerid)
{
new archivo[256];
format(archivo, sizeof(archivo), "JADMIN/config.ini");
if (dini_Int(archivo, "PingCheck") == 1)
{
if (GetPlayerPing(playerid) > dini_Int(archivo, "PingMaximo"))
{
new nombre[MAX_PLAYER_NAME], string[256];
GetPlayerName(playerid, nombre, sizeof(nombre));
format(string, sizeof(string), "%s ha sido auto-kickeado. (Razon: PING ALTO (%s).)", nombre, GetPlayerPing(playerid));
SendClientMessageToAll(0xFFFFFFFF, string);
Kick(playerid);
}
}
return 1;
}
////////////////////////////////////////////////////
stock EnviarReporte(const string[])
{
for(new adminid=0; adminid <MAX_PLAYERS; adminid++)
{
if (EsAdmin[adminid] == 1)
{
SendClientMessage(adminid, 0xFFFFFFFF, string);
}
}
return 1;
}
////////////////////////////////////////////////////
stock GetVehicleModelIDFromName(vname[])
{
for(new i = 0; i < 211; i++)
{
if ( strfind(Vehiculos[i], vname, true) != -1 )
return i + 400;
}
return -1;
}
////////////////////////////////////////////////////
stock IsNumeric(const string[])
{
new length=strlen(string);
if(length==0)
{
return 0;
}
for (new i=0; i<length; i++)
{
if (!((string[i] <= '9' && string[i] >= '0') || (i==0 && (string[i]=='-' || string[i]=='+'))))
{
return false;
}
}
return 0;
}
////////////////////////////////////////////////////
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}