Ta ai uma base para dar admin, guarde o valor da variбvel admin em algum sistema de salvamento e faзa a verificaзгo quando o player entrar no servidor ser setado a ele este valor para ele poder utilizar os comandos.
PHP код:
new Admin[MAX_PLAYERS]; // Topo do gm
CMD:daradmin(playerid, params[])
{
new id, level, string[100];
if(sscanf(params, "dd", id, level)) return SendClientMessage(playerid, 0xFF0000AA, "| ERRO | /Daradmin [id do player] [level]");
format(string,sizeof(string),"O player %s deu o level %d de admin para %s",Nome(playerid), Nome(id), cargo);
SendClientMessageToAll(-1,string);
Admin[id] = cargo;
return 1;
}
//Exemplo de um comando usando esse sistema
CMD:aviso(playerid, params[])
{
new id, aviso, string[128];
if(Admin[playerid] >= 1) return SendClientMessage(playerid, -1, "| ERRO | Vocк nгo й admin"); // Verifica o level dele se for 1 ou maior ele executa o comando caso nгo for ele da esse erro
if(sscanf(params, "us", id, aviso)) return SendClientMessage(playerid, 0xFF0000AA, "| ERRO | /Aviso [id do player] [ aviso ]");
format(string,sizeof(string),"O Admin %s avisou %s motivo: %s", Nome(playerid), Nome(id), aviso);
SendClientMessageToAll(-1,string);
return 1;
}
//Stock para pegar o nome do player
stock Nome(playerid)
{
new name[24];
GetPlayerName(playerid, name, sizeof(name));
return name;
}