Bueno en esta Ocacion Les traere como crear un comando /Adminduty para el gamemode de Zenon City Ya que vi que algunos Gamemodes de ZC no los tienen implementados ! asi que empezemos !
nos vamos a nuestros "new" y definimos AdminDuty y el "AntiAbusos" De la siguiente manera >>
Bueno ya tenido definido esto Procedemos de crear el comando , Creamos la parte al usar /Adminduty se pondra Duty y le saldra un Dialogo diciendo lo siguiente >>
Explico :
zcmd(adminduty, playerid, params[]){ : Sabemos que esto es la base del comando que sin esto no funcionaria el comando y ademas te tirara ERRORES
if(Info[playerid][pAdminZC] < 2) return SendClientMessageEx(playerid, COLOR_GRAD2, "[ERROR]: No tienes autorización a usar este comando."); : Revisara Si eres Administrador o no , y si no eres te mandara este mensaje de que no tienes permiso de usar este comando
if(AdminDuty[playerid] == 0){
AntiAbusos[playerid] = 1;//Cuando la variable esta en 1 dejara usar los comandos
AdminDuty[playerid] = 1; HidePM[playerid] = 0; : Esto es lo que definimos al principio de todo , el AntiAbusos es para que no abuses del comando , el AdminDuty para Ponerte adminduty XD
SetPlayerSkin(playerid, 217); : Te pondra El Skin de Administrador el Numero "217" es el numero de skin si quieren lo pueden cambiar
SetPlayerArmour(playerid, 999); SetHP(playerid, 999); : esto al poner /Adminduty te llenara el chaleco a 999
SetPlayerColor(playerid, ROJO_ADMIN); : esto al ponerte /Adminduty en la lista de Usuarios Apretando TAB saldra del color rojo , lo pueden cambiar en "ROJO_ADMIN" por el color que quieran que salga
format(string, sizeof(string), "{0D56E7}[STAFF] >> {FFFFFF}El administrador(a) {3FFFFF}%s {ffffff}está en servicio para responder dudas & reportes {3FFFFF}(/mp %d).", GetPlayerNameEx(playerid), playerid); : Esto dara un anuncio a todos los usuarios que el administrador esta en linea/Duty
ShowPlayerDialog(playerid, INVALID_DIALOG, DIALOG_STYLE_MSGBOX, "{0B44FE}En servicio", "{FFFFFF}Ahora estas en servicio, por lo que deberás {FF0411}administrar {FFFFFF}un tiempo determinado.\nRecuerda tener paciencia con los {FF0411}usuarios\n\n {FFFFFF}Usa {FF0411}/adminhelp {FFFFFF}para ver los comandos.", "OK", ""); : Saldria un Cuadro con un mensaje X (Lo cambian por el que ustedes quieran) , este mensaje solo saldra AL ADMINISTRADOR que use /Adminduty para ponerse duty
Bueno ahora crearemos la parte de que al usar nuevamente el /Adminduty se pondra Off Duty y se saldra el color >>
No hace falta explicar ya que se explica arriba :P
Bueno espeor que les haya gustado y disfruntelo y Critiquen ya que de los errores se aprende !! :fuerte: :fuerte:
nos vamos a nuestros "new" y definimos AdminDuty y el "AntiAbusos" De la siguiente manera >>
- Código:
new AdminDuty[MAX_PLAYERS];
new AntiAbusos[MAX_PLAYERS];
Bueno ya tenido definido esto Procedemos de crear el comando , Creamos la parte al usar /Adminduty se pondra Duty y le saldra un Dialogo diciendo lo siguiente >>
- Código:
zcmd(adminduty, playerid, params[]){
if(Info[playerid][pAdminZC] < 2) return SendClientMessageEx(playerid, COLOR_GRAD2, "[ERROR]: No tienes autorización a usar este comando.");
new string[200];
if(AdminDuty[playerid] == 0){
AntiAbusos[playerid] = 1;//Cuando la variable esta en 1 dejara usar los comandos
AdminDuty[playerid] = 1; HidePM[playerid] = 0;
SetPlayerSkin(playerid, 217);
Info[playerid][pModel] = 217;
SetPlayerArmour(playerid, 999); SetHP(playerid, 999);
SetPlayerColor(playerid, ROJO_ADMIN);
format(string, sizeof(string), "{0D56E7}[STAFF] >> {FFFFFF}El administrador(a) {3FFFFF}%s {ffffff}está en servicio para responder dudas & reportes {3FFFFF}(/mp %d).", GetPlayerNameEx(playerid), playerid);
ABroadCast(0xFFFFFFFF,string,4);
ShowPlayerDialog(playerid, INVALID_DIALOG, DIALOG_STYLE_MSGBOX, "{0B44FE}En servicio", "{FFFFFF}Ahora estas en servicio, por lo que deberás {FF0411}administrar {FFFFFF}un tiempo determinado.\nRecuerda tener paciencia con los {FF0411}usuarios\n\n {FFFFFF}Usa {FF0411}/adminhelp {FFFFFF}para ver los comandos.", "OK", "");
Explico :
zcmd(adminduty, playerid, params[]){ : Sabemos que esto es la base del comando que sin esto no funcionaria el comando y ademas te tirara ERRORES
if(Info[playerid][pAdminZC] < 2) return SendClientMessageEx(playerid, COLOR_GRAD2, "[ERROR]: No tienes autorización a usar este comando."); : Revisara Si eres Administrador o no , y si no eres te mandara este mensaje de que no tienes permiso de usar este comando
if(AdminDuty[playerid] == 0){
AntiAbusos[playerid] = 1;//Cuando la variable esta en 1 dejara usar los comandos
AdminDuty[playerid] = 1; HidePM[playerid] = 0; : Esto es lo que definimos al principio de todo , el AntiAbusos es para que no abuses del comando , el AdminDuty para Ponerte adminduty XD
SetPlayerSkin(playerid, 217); : Te pondra El Skin de Administrador el Numero "217" es el numero de skin si quieren lo pueden cambiar
SetPlayerArmour(playerid, 999); SetHP(playerid, 999); : esto al poner /Adminduty te llenara el chaleco a 999
SetPlayerColor(playerid, ROJO_ADMIN); : esto al ponerte /Adminduty en la lista de Usuarios Apretando TAB saldra del color rojo , lo pueden cambiar en "ROJO_ADMIN" por el color que quieran que salga
format(string, sizeof(string), "{0D56E7}[STAFF] >> {FFFFFF}El administrador(a) {3FFFFF}%s {ffffff}está en servicio para responder dudas & reportes {3FFFFF}(/mp %d).", GetPlayerNameEx(playerid), playerid); : Esto dara un anuncio a todos los usuarios que el administrador esta en linea/Duty
ShowPlayerDialog(playerid, INVALID_DIALOG, DIALOG_STYLE_MSGBOX, "{0B44FE}En servicio", "{FFFFFF}Ahora estas en servicio, por lo que deberás {FF0411}administrar {FFFFFF}un tiempo determinado.\nRecuerda tener paciencia con los {FF0411}usuarios\n\n {FFFFFF}Usa {FF0411}/adminhelp {FFFFFF}para ver los comandos.", "OK", ""); : Saldria un Cuadro con un mensaje X (Lo cambian por el que ustedes quieran) , este mensaje solo saldra AL ADMINISTRADOR que use /Adminduty para ponerse duty
Bueno ahora crearemos la parte de que al usar nuevamente el /Adminduty se pondra Off Duty y se saldra el color >>
- Código:
}
else
{
AdminDuty[playerid] = 0; HidePM[playerid] = 1;
AntiAbusos[playerid] = 0;//Cuando la variable esta en 0 no dejara usar los comandos
SetPlayerArmour(playerid, 0); SetHP(playerid, 100);
SetPlayerColor(playerid,TEAM_HIT_COLOR);
SetPlayerSkin(playerid, Info[playerid][pChar]);
format(string, sizeof(string), "{0D56E7}[STAFF] >> {FFFFFF}El administrador {0000FF}%s{ffffff} está fuera de servicio, estara roleando o ocupado.", GetPlayerNameEx(playerid));
ABroadCast(0xFFFFFFFF,string,4);
}
return 1;
}
No hace falta explicar ya que se explica arriba :P
Bueno espeor que les haya gustado y disfruntelo y Critiquen ya que de los errores se aprende !! :fuerte: :fuerte: