07.08.2015, 19:10
Aн estб, tudo comentado para que vocк entenda.
PHP код:
// Verificamos se o comando digitado й igual a /daradmin
// note que devemos especificar o tamanho de caracteres do comando, nesse caso 9 (contando com o "/")
if(strcmp(cmdtext, "/daradmin", true, 9) == 0) {
// Aqui verifica se o jogador que fez o comando й admin menor que 10, se for manda uma mensagem
if(Player[playerid][pAdmin] < 10) return SendClientMessage(playerid, 0xFFFFFFAA, "Vocк nгo estб autorizado a usar este comando !");
// Aqui criamos variбveis para armazenar o ID do jogador que ele digitou e o nнvel que ele quer dar
new outrojogador, nivel;
// Aqui introduzimos o sscanf, e usamos especificadores para especificar nosso comando
// existem vбrios
// u й usado para ID/nome do jogador ex: /daradmin 1 ou /daradmin HardWar
// i ou d sгo usados para nъmeros inteiros
// s й usado para textos
// existem muitos outros, veja o tуpico do sscanf
// usamos "ui" pois queremos um ID e logo em seguido o nнvel
// assim armazenamos esses 2 valores nas variбveis criadas anteriormente
// NOTA: usamos cmdtext[10] pois queremos pegar apenas os parвmetros digitados
// se usassemos apenas cmdtext, ele pegaria o comando todo /daradmin id nome e nгo apenas o id e o nome
if(sscanf(cmdtext[10], "ui", outrojogador, nivel)) return SendClientMessage(playerid, 0xFFFFFFAA, "USAGE: /daradmin [playerid] [AdminLNivel]");
// Aqui checamos se o id que o jogador digitou й vбlido, caso contrбrio manda uma mensagem
if(outrojogador == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFFFFFFAA, "Jogador invбlido!");
// Setamos o nнvel do admin para o nivel especificado
Player[outrojogador][pAdmin] = nivel;
// Criamos uma variбvel para formatar mensagens e outra para pegar o nome dos jogadores
new string[128], nome[MAX_PLAYER_NAME+1];
// Pegamos o nome do jogador que fez o comando
GetPlayerName(playerid, nome, MAX_PLAYER_NAME);
// Formatamos para uma mensagem
format(string, sizeof(string), "Vocк foi promovido para level %d de Admin - Por %s", nivel, nome);
// Enviamos ela
SendClientMessage(outrojogador, 0x33AA33AA, string);
// Pegamos o nome do jogador que terб um novo nнvel de admin
GetPlayerName(outrojogador, nome, MAX_PLAYER_NAME);
// Formatamos para uma mensagem
format(string, sizeof(string), "Vocк promoveu %s para o level %d de Admin.", nome, nivel);
// Enviamos ela
SendClientMessage(playerid, 0x33CCFFAA, string);
return 1;
}