Colocar Comando /AdminDuty
#1

hola, Es que tengoun GM que no tiene Adminduty y la gente se confunde al reportar por que no saben si estan duty o no y necesito un codigo que les cambie de color el nick para que se pueda diferenciar.
Reply
#2

Код:
new AdminDuty
Код:
zcmd(adminduty, playerid, params[])
	{
	new stringasxd[100];

	if(PlayerInfo[playerid][pTuVariabledeAdmin] > 0 )
	{

	if(AdminDuty[playerid] == 0)
	{
	AdminDuty[playerid] = 1;
	SetPlayerColor(playerid,0xFFFF20FF);

	format(stringasxd, sizeof(stringasxd), "El administrador %s estб en servicio.",  PlayerName(playerid), playerid);
	SendClientMessageToAll(-1, stringasxd);
	return 1;
	}
	else
	{
	AdminDuty[playerid] = 0;
	
	
	SetHP(playerid, 100);
	SetPlayerColor(playerid,-1);

	format(stringasxd, sizeof(stringasxd), "El Administrador %s estб fuera de servicio", PlayerName(playerid), playerid);
	SendClientMessageToAll(-1, stringasxd);
	return 1;
	}
	} else SendClientMessage(playerid, -1,"No tenes poderes.");
	return 1;
	}
Код:
stock PlayerName(playerid)
	{
	new Nombre[24];
	GetPlayerName(playerid,Nombre,24);
	new N[24];
	strmid(N,Nombre,0,strlen(Nombre),24);
	for(new i = 0; i < MAX_PLAYER_NAME; i++)
	{
	if (N[i] == '_') N[i] = ' ';
	}
	return N;
	}
Asн ?
Reply
#3

Es facil amigo solo haz lo siguiente:

Defines:
pawn Код:
new AdminDuty;
Luego vas a la Callback OnPlayerConnect y pones esto:
pawn Код:
AdminDuty[playerid] = 0; // Valor 0 significa que cuando un admin se conecta estara off duty...
Luego ha la Callback OnPlayerDisconnect y pones lo siguiente:
pawn Код:
AdminDuty[playerid] = 0; // Valor 0 significa que cuando un admin se desconecta estara off duty...
Bueno ahora creamos el comando que iria asi:

pawn Код:
CMD:adminduty(playerid, params[])
{
    if( PlayerInfo[playerid][pAdmin] > 1 )
    {
      if(AdminDuty[playerid] == 0) // Verifica si el usuario esta off duty.
      {
            AdminDuty[playerid] = 1; // Pone al usuario On duty si este esta Off Duty
            SetPlayerHealth(playerid, 99999); // Vida infinita
            SetPlayerArmour(playerid, 99999); // Chaleco infinito
            SetPlayerSkin(playerid, 100);  // Skin administrativo
            return 1;
      }
      else if(AdminDuty[playerid] == 1)  // Verifica si el usuario esta on duty.
      {
             AdminDuty[playerid] = 0; // Pone al usuario Off Duty si este esta On Duty.
             SetPlayerHealth(playerid, 100); // Setea la vida a 100
             SetPlayerArmour(playerid, 0);  // Quita el chaleco
             return 1;
      }
    }
return 1;
}
Ahora si queres que un comando admin funcione solo cuando estes On Duty agrega esto al comando debajo de la variable if(PlayerInfo[playerid][pAdmin]):
pawn Код:
if(AdminDuty[playerid] == 0) return SendClientMessage(playerid, COLOR_RED, "[Error]: No estas en servicio.");
Un saludo cualquier duda MP..
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)