[Pedido] Visualizar comandos efetuados pelos admins
#1

Olб pessoal, eu estou fazendo um servidor de Scavenge & Survive, porйm, estou tendo dificuldade para fazer um visualizador de comandos, devido a alguns problemas com staff й melhor ter um nй, vai que alguйm estб abusando ou algo do tipo.

Se alguйm puder ajudar agradeзo
Reply
#2

Qual o processador de comandos que vocк utiliza?

De qualquer forma й sу adicionar na callback que й chamada toda vez que um comando й efetuado, como por exemplo a OnPlayerCommandPerformed (zcmd).

Dentro dessa callback vocк adiciona:
Код:
for(new idx = 0, idx2 = GetPlayerPoolSize(); idx < idx2; idx ++)
{
    if(AdminLevel[playerid] >= 5)
    {
        SendClientMessage(playerid, -1, "Um admin usou um comando...");
    }
}
Reply
#3

Quote:
Originally Posted by MituhBR
Посмотреть сообщение
Olб pessoal, eu estou fazendo um servidor de Scavenge & Survive, porйm, estou tendo dificuldade para fazer um visualizador de comandos, devido a alguns problemas com staff й melhor ter um nй, vai que alguйm estб abusando ou algo do tipo.

Se alguйm puder ajudar agradeзo
PHP код:
forward CMDParaAdmins(playeridcommand[]);
public 
CMDParaAdmins(playeridcommand[])
{
    for(new 
0GetPlayerPoolSizei++)
     {
         if(
IsPlayerIsAdmin(i))
           {
             new 
string[128];
              
GetPlayerName(playeridstringsizeof(string));
             
format(string,sizeof(string),"[ADMIN-CMD] %s usou o comando %s"stringcommand);
           }
    }
    return 
CMDParaAdmins(-1string);
}
CMD:comandoqualquer(playerid)
{
    
SendClientMessage(playerid, -1"Vocк й ez");
    
CMDParaAdmins(playerid"COMANDO QUALQUER");
    return 
1;

Reply
#4

sу colocar isso nos comandos

PHP код:

new String[100], aname[24];
GetPlayerName(playeridanamesizeof(aname));
for(new 
0MAX_PLAYERSi++)
{
    if(
IsPlayerIsAdmin(i))
    {
    
format(Stringsizeof(String), "O [ADM] %s usou o comando: %s"anamecmdtext);
    
SendClientMessage(i, -1String);
    }

Reply
#5

Quote:
Originally Posted by zF3lKy3
Посмотреть сообщение
PHP код:
forward CMDParaAdmins(playeridcommand[]);
public 
CMDParaAdmins(playeridcommand[])
{
    new 
string[128];
    
GetPlayerName(playeridstringsizeof(string));
    
format(string,sizeof(string),"[ADMIN-CMD] %s usou o comando %s"stringcommand);
    return 
CMDParaAdmins(-1string);
}
CMD:comandoqualquer(playerid)
{
    
SendClientMessage(playerid, -1"Vocк й ez");
    
CMDParaAdmins(playerid"COMANDO QUALQUER");
    return 
1;

Isso ae nгo lуgica namoral, para que usar public?


Ae mano testa ae, nгo cheguei a testar mas provavelmente darб certo....

PHP код:

SendMessageToAdmin
(corstring[]) //Coloca no final da GM
{
    for(new 
0MAX_PLAYERSi++)
    {
        if(
Player[i][Admin] == 5//Se o nнvel de administrador dele for igual a 5 ele irб receber a mensagem.
        
{
            
SendClientMessage(i, -1string);
        }
    }
    return 
0;
}
CMD:testando(playerid)
{
    new 
str[123]
    
format(strsizeof(str), "O Admin %s, usou um comando, blбblбblб"PegarNome(playerid));
    
SendMessageToAdmin(-1str); //Adicione isso em todo comando que vc quer saber.
    
return 1;

Reply
#6

Quote:
Originally Posted by Malandrin
Посмотреть сообщение
Isso ae nгo lуgica namoral, para que usar public?


Ae mano testa ae, nгo cheguei a testar mas provavelmente darб certo....

PHP код:

SendMessageToAdmin
(corstring[]) //Coloca no final da GM
{
    for(new 
0MAX_PLAYERSi++)
    {
        if(
Player[i][Admin] == 5//Se o nнvel de administrador dele for igual a 5 ele irб receber a mensagem.
        
{
            
SendClientMessage(i, -1string);
        }
    }
    return 
0;
}
CMD:testando(playerid)
{
    new 
str[123]
    
format(strsizeof(str), "O Admin %s, usou um comando, blбblбblб"PegarNome(playerid));
    
SendMessageToAdmin(-1str); //Adicione isso em todo comando que vc quer saber.
    
return 1;

Eu ajeitei, tinha esquecido.
Reply
#7

Nгo testei mas creio que esteja funcional.
Ao admin digitar /tapa id, irб aparecer а todos os admins online: O administrador ... deu um tapa no ...
A partir do for(...) fica a funзгo onde irб mandar para todos os admins online. Entгo com isso, vocк adapta em seu servidor. Boa sorte com o projeto
PHP код:
CMD:tapa(playeridparams[])
{
    new 
idFloatXFloatYFloatZ;
    if(
pInfo[playerid][Admin] == 0)
        return 
SendClientMessage(playerid0xFF0000AA"ERRO: Comando apenas para Admins.");
    if(
sscanf(params"u"id))
        return 
SendClientMessage(playerid0xFF0000AA"ERRO: Use: /tapa (id).");
    if(!
IsPlayerConnected(id))
        return 
SendClientMessage(playerid0xFF0000AA"ERRO: O ID nгo estб conectado.");
    new 
string[128], pname[MAX_PLAYER_NAME], iname[MAX_PLAYER_NAME];
    
GetPlayerName(playeridpnameMAX_PLAYER_NAME);
    
GetPlayerName(idinameMAX_PLAYER_NAME);
    
format(stringsizeof(string), "CmdAdm: O administrador %s lhe deu um tapa."pname);
    
SendClientMessage(id, -1string);
    
format(stringsizeof(string), "CmdAdm: Vocк deu um tapa no %s"iname);
    
SendClientMessage(playerid, -1string);
    
GetPlayerPos(idFloat:XFloat:YFloat:Z);
    
SetPlayerPos(idFloat:XFloat:YFloat:Z+20);
    for(new 
iMAX_PLAYERSi++)
    {
        if(
pInfo[i][Admin] > && IsPlayerConnected(i))
        {
            
format(stringsizeof(string), "AdmCmd: O administrador %s deu um tapa no %s"pnameiname);
            
SendClientMessage(i, -1string);
        }
    }
    return 
1;

Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)