[AJUDA] Dar ADM por comando
#1

Olб pessoal,meu servidor й feito pelos derivados do ELITE e BSL,Pois bem vem a tempos que tento dar adm por comando,mais nгo consigo jб tentei varios comandos como /daradm /daradmin /daradministrador, e nehum sucesso caso alguem saiba o comando ou como por o comando ficarei grato! lembrando> sou extremamente novato por favor se puder ser especifico ficarei grato!
Reply
#2

pawn Код:
if(strcmp(cmd, "/setadmin", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_LIGHTYELLOW2, "/asetadmin [playerid] [adminlevel]");
                return 1;
            }
            new para1;
            new level;
            para1 = ReturnUser(tmp);
            tmp = strtok(cmdtext, idx);
            level = strval(tmp);
            if (PlayerInfo[playerid][pAdmin] >= 1337)
            {
                if(IsPlayerConnected(para1))
                {
                    if(para1 != INVALID_PLAYER_ID)
                    {
                        new name[MAX_PLAYER_NAME];
                         GetPlayerName(giveplayerid, name, sizeof(name));
                         if(strcmp(name, "Pedro_Nobre", true) == 0 || strcmp(name, "Rui_Amoroso", true) == 0)
                         {
                        PlayerInfo[para1][pAdmin] = level;
                        format(string, sizeof(string), "%s has just made you administrator level: %d.", GetPlayerNameEx(playerid),level);
                        SendClientMessage(para1, COLOR_WHITE, string);
                        format(string, sizeof(string), "%s foste escolhido para administrador - Level: %d.", GetPlayerNameEx(para1),level);
                        SendClientMessage(playerid, COLOR_WHITE, string);
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        format(string, 256, "O admin %s definiu ao jogador %s o nivel de admin [%d].", sendername, GetPlayerNameEx(para1), level);
                        AdministratorMessage(COLOR_ORANGE, string,1);
                        CommandLog(string);
                        }
                        else
                        {
                        }
                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Nгo es administrador ou nгo tens nivel suficiente.");
            }
        }
        return 1;
    }
Agora aн, faзa com variбveis do seu Gamemode, e use a sua funзao se o Player й admin ou nao.
espero ter ajudado.
Reply
#3

Quote:
Originally Posted by Kincy
Посмотреть сообщение
Olб pessoal,meu servidor й feito pelos derivados do ELITE e BSL,Pois bem vem a tempos que tento dar adm por comando,mais nгo consigo jб tentei varios comandos como /daradm /daradmin /daradministrador, e nehum sucesso caso alguem saiba o comando ou como por o comando ficarei grato! lembrando> sou extremamente novato por favor se puder ser especifico ficarei grato!
Olб Kincy, o comando correto й:
Код:
/daradmin [Jogador] [Nнvel]
Sу que para poder usar tem de estar logado na RCON
Reply
#4

Nгo poe o comando do Pedronobre no seu GM, Kincy, ou irб bugar, visto que ele criou um Log dos Comandos e colocou uma public para mandar mensagens aos adms, mas esqueceu de postб-la ¬¬'.

------------

Alguem sabe como que faz pra ver todos os comandos que os jogadores digitarem ?
Reply
#5

pawn Код:
if(strcmp(cmd, "/daradmin", true) == 0)
    {
        if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
        {
            new tmp[20], giveplayerid, nivel, string[91], Entregador[MAX_PLAYER_NAME], Recebedor[MAX_PLAYER_NAME];
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp)) { SendClientMessage(playerid, Branco, "{1E90FF}Uso correto:{FFFFFF} /DarAdmin [id] [nнvel]"); return 1; }
            giveplayerid = strval(tmp);
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp)) { SendClientMessage(playerid, Branco, "{1E90FF}Uso correto:{FFFFFF} /DarAdmin [id] [nнvel]"); return 1; }
            nivel = strval(tmp);
            if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid, Branco, "Este jogador nгo estб conectado");
            GetPlayerName(playerid, Entregador, sizeof(Entregador));
            GetPlayerName(giveplayerid, Recebedor, sizeof(Recebedor));
            format(string, sizeof(string), "Seu nнvel de admin foi setado para {1E90FF}%d{FFFFFF} por {1E90FF}%s", nivel, Entregador);
            SendClientMessage(giveplayerid, Branco, string);
            format(string, sizeof(string), "Vocк setou o nнvel de admin de {1E90FF}%s{FFFFFF} para {1E90FF}%d", Recebedor, nivel);
            SendClientMessage(playerid, Branco, string);
            PlayerInfo[giveplayerid][pAdmin] = nivel;
        } else { SendClientMessage(playerid, Branco, "Vocк nгo tem nнvel suficiente de admin para usar este comando"); }
        return 1;
    }
Usa esse ai, qualquer coisa sу falar...

Shadoww
Nunca tentei criar comando pra ver os comandos que os players usam, mas posso tentar...
Reply
#6

Quote:

Shadoww
Nunca tentei criar comando pra ver os comandos que os players usam, mas posso tentar...

Eu ja tinha visto aqui no forum, mas nгo lembro mais o nome ...
Reply
#7

coloca no seu enum: VendoCMD

pawn Код:
//*************** OnPlayerCommandText < no inicio ****************
new cmd[128], stringcmd[128], usou[MAX_PLAYER_NAME];
cmd = strtok(cmdtext, idx);
GetPlayerName(playerid, usou, sizeof(usou));
format(stringcmd, sizeof(stringcmd), "Jogador: %s usou o comando %s", usou, cmd);
for(new i = 0; i <= MAX_PLAYERS; i++)
{
if(PlayerInfo[i][VendoCMD] == 1)
{
SendClientMessage(i, 0xFFFFFFFF, stringcmd);
}
}
pawn Код:
//********** Qualquer lugar do OnPlayerCommandText **************
if(strcmp(cmd, "/vercmd", cmdtext, true, 7) == 0)
{
if(PlayerInfo[playerid][VendoCMD] == 0)
{
PlayerInfo[playerid][VendoCMD] = 1;
SendClientMessage(playerid, 0xFFFFFFFF, "Vocк agora estб vendo os comandos digitados");
}
else
{
PlayerInfo[playerid][VendoCMD] = 0;
SendClientMessage(playerid, 0xFFFFFFFF, "Agora vocк nгo irб mais monitorar os comandos");
}
return 1;
}
Fiz no improviso e nгo teste, se pegar ou nгo avisa =D
Reply
#8

Valeu ae, Josma_cmd.

Vocк so esqueceu de criar isto:

pawn Код:
new VendoCMD[MAX_PLAYERS]
Nгo posso testar agora, pois nгo estou em casa, quando eu chegar eu testo.

---------------

Para que serve o "strcmp" ? Uso, mas nгo sei como funciona ... Posso substitui-lo por "strfind"?
Reply
#9

Na verdade nгo esqueci, pois como disse no inicio do post, o VendoCMD ficaria no seu enum(que jб tem MAX_PLAYERS).
Exemplo: new PlayerInfo[MAX_PLAYERS][enum Info];
=D.
Reply
#10

Ahh blz .. Releia meu ultimo post neste topico e responda minha pergunta caso saiba, por favor. Blz ?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)