20.08.2012, 19:56
(
Последний раз редактировалось humildadeforever; 20.08.2012 в 22:19.
)
Quote:
pawn Код:
|
Deixa eu ver se consigo te explicar algo, sou horrнvel com explicaзхes, rs.
Entгo, na maioria (ou em todos) dos servidores os administradores sгo divididos por cargos/nнveis/leveis e o cargo de cada jogador fica armazenado numa variбvel. Vamos supor que vocк ganhe o cargo de adm num servidor, o cуdigo vai ser algo como:
pawn Код:
PlayerInfo[giveplayerid][NvlAdm] = nivel;
giveplayerid = ID do jogador digitado no comando, no caso serб vocк
NvlAdm = Vai ser o nome dado na enum
nivel = parвmetro digitado no comando (/daradmin [ID] [Nivel])
Se a pessoa que te der o cargo de admin digitar /daradmin Gabriel 5 o
pawn Код:
PlayerInfo[giveplayerid][NvlAdm] = nivel;
pawn Код:
PlayerInfo[giveplayerid][NvlAdm] = 5;
pawn Код:
if(nivel == 1)
{
PlayerInfo[giveplayerid][NvlAdm] = 1;
}
else if(nivel == 2)
{
PlayerInfo[giveplayerid][NvlAdm] = 2;
}
Todo esse cуdigo que coloquei vocк teria que usar algo como:
pawn Код:
enum Jogador // a enum pode armazenar vбrios dados dos jogadores numa variбvel sу
{
NvlAdm, // armazena o cargo de admin
Matou, // vai armazenar o tanto de vezes que matou
Morreu //armazena o tanto de vezes que morreu, etc
};
new PlayerInfo[MAX_PLAYERS][Jogador];
pawn Код:
PlayerInfo[playerid][Matou] ++; //Vai aumentar +1 , se ele tiver matado 5 vai mudar pra 6.
pawn Код:
PlayerInfo[playerid][Morreu] ++; //Vai aumentar +1, se ele tiver morrido 2 vezes vai mudar pra 3
pawn Код:
if(PlayerInfo[playerid][NvlAdm] >= 1) // verifica se o jogador й nivel de admin 1 ou maior
pawn Код:
if(PlayerInfo[playerid][NvlAdm] == 5) // verifica se o jogador й admin nivel 5
pawn Код:
if(PlayerInfo[playerid][NvlAdm] > 1) // verifica se o jogador й admin nivel maior que 1
pawn Код:
if(PlayerInfo[playerid][NvlAdm] <= 9) // verifica se o jogador й admin nivel 9 ou menor (9,8,7,6,5,4,3, etc)
pawn Код:
if(PlayerInfo[playerid][NvlAdm] < 11) // verifica se o jogador й admin nivel menor que 11 (10,9,8,7,6,5, etc)
Jб os nнveis de administrador quem decide й vocк. Podendo escolher como exemplo os nнveis 1, 3, 5 e 10, ou 1,2,3,4,5, 10, 20, 70, 1000, etc.
No comando /daradmin para verificar se й o nнvel digitado й um que vocк quer que tenha, vocк faz assim:
pawn Код:
if(nivel == 1 || nivel == 2 || nivel == 10)
{
//Funcoes
}
else return SendClientMessage(playerid, -1, "Os niveis sгo 1, 2 e 10");
pawn Код:
switch(nivel)
{
case 1, 2, 10:
{
//funcoes
}
default: return SendClientMessage(playerid, -1, "Os niveis sao 1, 2 e 10");
}
Nгo dб pra entender direito, mas deve servir pra algo. Qualquer dъvida fala ae.