[AJUDA] Sistema de Admin e Ocultar, meio que bugado
#1

Eu tenho um Sistema de Admin aqui, por exemplo, eu nгo estou logado na RCON dai aparece que nenhum administrador estб conectado, mas quando estou logado e estou no /Ocultar (Oculta o Admin), Ae fica no /Admins assim:

Administradores conectados:



e nгo aparece que nenhum administrador estб conectado, quando estou no ocultar... se alguйm puder me ajudar, eu agradeзo.

/Admins
pawn Код:
if(strcmp(cmd, "/admins", true) == 0)
    {
        SendClientMessage(playerid, 0x96D742AA, "Administradores conectados:");
        for(new i=0; i < MAX_PLAYERS; i++)
        {
            if(IsPlayerConnected(i))
            {
                if(IsPlayerAdmin(i))
                {
                    if(admin[i] == false)
                    {
                        new nome[MAX_PLAYER_NAME];
                        GetPlayerName(i, nome, sizeof(nome));
                        format(string, sizeof(string), "~ %s [ID %d]", nome, i);
                        SendClientMessage(playerid, 0xFFFFFFAA, string);
                        count[playerid]++;
                    }
                }
            }
        }
        if(count[playerid] == 0)
        {
            SendClientMessage(playerid, 0xFFFFFFAA, "{FF0000}~> {FFFFFF}Nenhum administrador conectado ao servidor no momento!");
        }
        return 1;
    }
Ocultar:

pawn Код:
if(strcmp(cmd, "/ocultar", true) == 0)
    {
        if(IsPlayerAdmin(playerid))
        {
            admin[playerid] = true;
            SetPlayerChatBubble(playerid, "", 0xFFFFFFAA, 100.0, 10000);
            GameTextForPlayer(playerid, "~w~ADMIN ESPIAO: ~g~ATIVADO", 2500, 3);
            PlayerPlaySound(playerid, 1057, 0.0, 0.0, 10.0);
        }
        return 1;
    }
Desocultar:

pawn Код:
if(strcmp(cmd, "/desocultar", true) == 0)
    {
        if(IsPlayerAdmin(playerid))
        {
            admin[playerid] = false;
            AtualizarChatBubble();
            GameTextForPlayer(playerid, "~w~ADMIN ESPIAO: ~r~DESATIVADO", 2500, 3);
            PlayerPlaySound(playerid, 1057, 0.0, 0.0, 10.0);
        }
        return 1;
    }
Reply
#2

Edit:
Tenta assim:
pawn Код:
if(strcmp(cmd, "/admins", true) == 0)
    {
        if(count[playerid] == 0) return SendClientMessage(playerid, 0xFFFFFFAA, "{FF0000}~> {FFFFFF}Nenhum administrador conectado ao servidor no momento!");
        SendClientMessage(playerid, 0x96D742AA, "Administradores conectados:");
        for(new i=0; i < MAX_PLAYERS; i++)
        {
            if(IsPlayerConnected(i))
            {
                if(IsPlayerAdmin(i))
                {
                    if(admin[i] == false)
                    {
                        new nome[MAX_PLAYER_NAME];
                        GetPlayerName(i, nome, sizeof(nome));
                        format(string, sizeof(string), "~ %s [ID %d]", nome, i);
                        SendClientMessage(playerid, 0xFFFFFFAA, string);
                        count[playerid]++;
                    }
                }
            }
        }
        return 1;
    }
Reply
#3

Consegui arrumar, й sу um pequeno erro, e bem simples, mas valeu a ajuda!

Cуdigo Correto:

pawn Код:
if(strcmp(cmd, "/admins", true) == 0)
    {
        SendClientMessage(playerid, 0x96D742AA, "Administradores conectados:");
        for(new i=0; i < MAX_PLAYERS; i++)
        {
            if(IsPlayerConnected(i))
            {
                if(IsPlayerAdmin(i))
                {
                    if(admin[i] == true) return SendClientMessage(playerid, 0xFFFFFFAA, "{FF0000}~> {FFFFFF}Nenhum administrador conectado ao servidor no momento!");
                    {
                        new nome[MAX_PLAYER_NAME];
                        GetPlayerName(i, nome, sizeof(nome));
                        format(string, sizeof(string), "~ %s [ID %d]", nome, i);
                        SendClientMessage(playerid, 0xFFFFFFAA, string);
                        count[playerid]++;
                    }
                }
            }
        }
        if(count[playerid] == 0)
        {
            SendClientMessage(playerid, 0xFFFFFFAA, "{FF0000}~> {FFFFFF}Nenhum administrador conectado ao servidor no momento!");
        }
        return 1;
    }
Reply
#4

Retire a variavel count[MAX_PLAYERS] do inicio do GM e troque o atual comando de /admins por este:

PHP код:
if(strcmp(cmd"/admins"true) == 0)
{
    
SendClientMessage(playerid0x96D742AA"Administradores conectados:");
    new 
count;
    for(new 
iGetMaxPlayers(); pi++)
    {
        if(!
IsPlayerConnected(i) || !IsPlayerAdmin(i) || admin[i]) continue;
        
GetPlayerName(istringMAX_PLAYER_NAME);
        
format(string64"~ %s [ID %d]"stringi);
        
SendClientMessage(playerid0xFFFFFFAAstring);
        
count++;
    }
    if(!
countSendClientMessage(playerid0xFFFFFFAA"{FF0000}~> {FFFFFF}Nenhum administrador conectado ao servidor no momento!");
    return 
1;

Se der algum erro, me avise.
Reply
#5

Quote:
Originally Posted by Shadoww5
Посмотреть сообщение
Retire a variavel count[MAX_PLAYERS] do inicio do GM e troque o atual comando de /admins por este:

PHP код:
if(strcmp(cmd"/admins"true) == 0)
{
    
SendClientMessage(playerid0x96D742AA"Administradores conectados:");
    new 
count;
    for(new 
iGetMaxPlayers(); pi++)
    {
        if(!
IsPlayerConnected(i) || !IsPlayerAdmin(i) || admin[i]) continue;
        
GetPlayerName(istringMAX_PLAYER_NAME);
        
format(string64"~ %s [ID %d]"stringi);
        
SendClientMessage(playerid0xFFFFFFAAstring);
        
count++;
    }
    if(!
countSendClientMessage(playerid0xFFFFFFAA"{FF0000}~> {FFFFFF}Nenhum administrador conectado ao servidor no momento!");
    return 
1;

Se der algum erro, me avise.
Certinho! Valeu cara!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)