Quote:
Originally Posted by GuiKommander
#include <a_samp>
#include <gl_common.inc>
new Admin[MAX_PLAYERS];
PHP Code:
public OnPlayerCommandText(playerid, cmdtext[])
{
new tmp[256], cmd[256], idx;
if(strcmp(cmd, "/setar", true) == 0)
{
if(Admin[playerid] == 1)
{
new gstring[256];
new Recebeu[256];
new id = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, -1, "| ERRO | Digite: /Setar [Id da Pessoa]");
return 1;
}
Admin[id] = 1;
format(gstring, sizeof(gstring), "| SETAR | Vocк setou ao jogador %s Admin!", id);
SendClientMessage(playerid, -1, gstring);
format(Recebeu, sizeof(Recebeu), "| MEGASENA | Vocк ganhou admin do Ademir %s", playerid);
SendClientMessage(id, -1, Recebeu);
}
else
{
SendClientMessage(playerid, -1, "| ERRO | Tu nгo й admin Nгo Safado KKK");
return 1;
}
}
return 0;
}
|
Estб totalmente errado, vocк atribuiu com que o jogador que vai receber o adm tem que estб no level = 1 para pode setar o adm, fora que o seu cуdigo estб em strcmp e mal indentado, sem contar os outros erros que notei.
PHP Code:
#include <a_samp>
#include <zcmd>
#include <sscanf2>
//#include <Pawn.CMD>
enum pew{
Admin
}
new PlayerInfo[MAX_PLAYERS][pew];
cmd:daradmin(playerid, params[])
{
new OutroJogador, Level, adm[MAX_PLAYER_NAME], nome[MAX_PLAYER_NAME], msg[86];
if(IsPlayerAdmin(playerid))
{
if (sscanf(params, "ui", OutroJogador, Level)) SendClientMessage(playerid, -1, "Use: /daradmin [ID] [Level]");
{
if (IsPlayerConnected(OutroJogador))
{
if(Level == 0) return SendClientMessage(playerid, 0xFF0000AA, "O jogador nгo pode ter seu level igual a zero!");
PlayerInfo[OutroJogador][Admin] = 1;
GetPlayerName(playerid, adm, sizeof(adm));
GetPlayerName(OutroJogador, nome, sizeof(nome));
format(msg, 86, "O administrador %s promoveu o jogador %s para o level 1!", adm, nome);
SendClientMessageToAll(-1, msg);
}
else SendClientMessage(playerid, 0xFF0000FF, "O jogador nгo estб online!");
}
}
else SendClientMessage(playerid, 0xFF0000FF, "Vocк precisa estб logado na RCON para usar esse comando!");
return 1;
}
cmd:tiraradm(playerid, params[])
{
new OutroJogador, Level, adm[MAX_PLAYER_NAME], nome[MAX_PLAYER_NAME], msg[86];
if(IsPlayerAdmin(playerid))
{
if (sscanf(params, "ui", OutroJogador, Level)) SendClientMessage(playerid, -1, "Use: /tiraradm [ID] [Level]");
{
if (IsPlayerConnected(OutroJogador))
{
PlayerInfo[OutroJogador][Admin] = 0;
GetPlayerName(playerid, adm, sizeof(adm));
GetPlayerName(OutroJogador, nome, sizeof(nome));
format(msg, 86, "O administrador %s rebaixou o jogador %s para o level 0!", adm, nome);
SendClientMessageToAll(-1, msg);
}
else SendClientMessage(playerid, 0xFF0000FF, "O jogador nгo estб online!");
}
}
else SendClientMessage(playerid, 0xFF0000FF, "Vocк precisa estб logado na RCON para usar esse comando!");
return 1;
}
Fiz uma base para vocк em zcmd/Pawn.CMD, ъnica coisa que vocк irб fazer й apagar a variбvel "new Admin[MAX_PLAYERS];" e colocar "Admin" dentro do enumerador, armazene o valor da variбvel no seu banco de dados e pronto.
Lembre-se, isso й uma base para vocк fazer o seu prуprio sistema, porйm essa foi espelhada na sua variбvel.