[Ajuda] /admins nгo aparece o cargo
#1

Sendo direto ao assunto.. Ao usar o cуdigo abaixo, aparece o dialog e o nome do administrador, porйm nгo aparece o cargo.
Cуdigo:
PHP код:
COMMAND:admins(playeridparams[])
{
    for(new 
0MAX_PLAYERSi++)
    {
        if(
PlayerInfo[i][pAdmin] > && AparecendoNoAdmins[playerid] == true)
                    {
                switch(
PlayerInfo[i][pAdmin])
                {
                    case 
1Motivo "{FFFF00}Ajudante";
                    case 
2Motivo "{FF8C00}Moderador";
                    case 
3Motivo "{00BFFF}Administrador";
                    case 
4Motivo "{FF0000}Desenvolvedor";
                }
                  
format(Str256"{FFFFFF}%s | %s"pNomeOriginal[i], Motivo);
                
ShowPlayerDialog(playeridDIALOG_ADMINSDIALOG_STYLE_MSGBOX"Administradores Online"Str"Fechar""");
                }
        }
    return 
1;

Esqueci de quк? :/

Obs.:
PHP код:
AparecendoNoAdmins[playerid] == true 
Isso porquк tenho um comando de /esconder, ai nгo aparecia no /admins (Antes era por SendClientMessage, mas eu nгo gosto desse tipo)... Se puderem adaptar pra dialog e aparecer a mensagem que "Nгo hб nenhum administrador online", agradeзo. Se nгo, deixa que me viro nessa parte. kkk Obg a geral
Reply
#2

Tenta Esse !!!

Код:
COMMAND:admins(playerid, params[]) 
{ 
    new info[512], Cargo[30 ], p;
    for(new i = 0; i < MAX_PLAYERS; i++) 
    { 
        if(PlayerInfo[i][pAdmin] > 0 && AparecendoNoAdmins[playerid] == true) 
        {
                p++;
                switch(PlayerInfo[i][pAdmin]) 
                { 
                    case 1: Cargo = "{FFFF00}Ajudante"; 
                    case 2: Cargo = "{FF8C00}Moderador"; 
                    case 3: Cargo = "{00BFFF}Administrador"; 
                    case 4: Cargo = "{FF0000}Desenvolvedor"; 
                } 
                format(Str, 256, "{FFFFFF}%s | %s", pNomeOriginal[i], Cargo);
                strcat(info, Str);
        }
        if(p < 1)format(info, sizeof(info), "{FFFFFF}Nгo hб nenhum administrador online");
        ShowPlayerDialog(playerid, DIALOG_ADMINS, DIALOG_STYLE_MSGBOX, "Administradores Online", info, "Fechar", "");
     } 
    return 1; 

}
Reply
#3

dude, coloca o ShowPlayerDialog fora do "for" ... vc so quer executar essa linha 1 vez '-'

usa o codigo ai do glederson

mas coloca o dialogo e a condiзгo de nao ter nenhum fora do for.
Reply
#4

PHP код:

CMD
:admins(playerid)
{
    new 
found=0;
    for(new 
x=0MAX_PLAYERSx++)
    {
        if(
IsPlayerConnected(x))
        {
            if(
Player[x][Admin] => && Player[playerid][Admin] <= 5)
            {
                new 
text[65], NameAdmin[65];
                
GetPlayerName(xNameAdmin65);
                if(
Player[x][Admin] == 1)
                    return 
text "Level 1";
                if(
Player[x][Admin] == 2)
                    return 
text "Level 2";
                if(
Player[x][Admin] == 3)
                    return 
text "Level 3";
                if(
Player[x][Admin] == 4)
                    return 
text "Sub Game Master";
                if(
Player[x][Admin] == 5)
                    return 
text "Game Master";    
                
found++;                
                new 
str[128];
                
format(strsizeof(str), "%d. %s [%s]"foundNameAdmintext);
                
ShowPlayerDialog(playerid1DIALOG_STYLE_MSGBOX"Administradores:"str"Fechar"#);     
            
}
        }
    }
    if(
found == 0)
        return 
SendClientMessage(playerid, -1"Nenhum administrador online!");
    return 
1;

Reply
#5

Glederson, continua do mesmo jeito (sem aparecer o cargo).
Reply
#6

Код:
COMMAND:admins(playerid, params[]) 
{ 
    new info[512], Cargo[30 ], gstring[75], p;
    for(new i = 0; i < MAX_PLAYERS; i++) 
    { 
        if(PlayerInfo[i][pAdmin] > 0 && AparecendoNoAdmins[playerid] == true) 
        {
                p++;
                switch(PlayerInfo[i][pAdmin]) 
                { 
                    case 1: Cargo = "{FFFF00}Ajudante"; 
                    case 2: Cargo = "{FF8C00}Moderador"; 
                    case 3: Cargo = "{00BFFF}Administrador"; 
                    case 4: Cargo = "{FF0000}Desenvolvedor"; 
                } 
                format(gstring, sizeof(gstring), "{FFFFFF}%s | %s", pNomeOriginal[i], Cargo);
                strcat(info, Str);
        }
     }
        if(p < 1)format(info, sizeof(info), "{FFFFFF}Nгo hб nenhum administrador online");
        ShowPlayerDialog(playerid, DIALOG_ADMINS, DIALOG_STYLE_MSGBOX, "Administradores Online", info, "Fechar", "");
    return 1; 

}

Tenta denovo coloquei o ShowPlayerDialog fora do looping
Reply
#7

Glederson, obrigado novamente pela atenзгo mas ainda nгo resultou. Estб mostrando meu ъltimo login dentro da dialog de /admins
(primeira mensagem que aparece quando entro no servidor)
Reply
#8

Код:
COMMAND:admins(playerid, params[]) 
{ 
    new info[512], Cargo[30 ], gstring[128], p = 0;
    for(new i = 0; i < MAX_PLAYERS; i++) 
    { 
        if(PlayerInfo[i][pAdmin] > 0 && AparecendoNoAdmins[i] == true) 
        {
                p++;
                switch(PlayerInfo[i][pAdmin]) 
                { 
                    case 1: Cargo = "{FFFF00}Ajudante"; 
                    case 2: Cargo = "{FF8C00}Moderador"; 
                    case 3: Cargo = "{00BFFF}Administrador"; 
                    case 4: Cargo = "{FF0000}Desenvolvedor"; 
                } 
                format(gstring, sizeof(gstring), "{FFFFFF}%s | %s\n", pNomeOriginal[i], Cargo);
                strcat(info, gstring);
        }
    }
    if(p == 0)format(info, sizeof(info), "{FFFFFF}Nгo hб nenhum administrador online");
    ShowPlayerDialog(playerid, DIALOG_ADMINS, DIALOG_STYLE_MSGBOX, "Administradores Online", info, "Fechar", "");
    return 1; 
}
Desculpe pela minha falta de atenзгo e que estou pelo celular, e nгo tenho como testa agora! podes tentar mais uma vez
Reply
#9

Eu que agradeзo a atenзгo kk, mas ainda nгo resultou. Aparece meu nick, mas nгo o cargo.. Jб tentei de tudo (exceto pegar outro /admins pra adaptar) !
Reply
#10

Код:
tenta fazer uma stock

stock GetAdminStatus(playerid)
{
      new Cargo[75];
      switch(PlayerInfo[i][pAdmin]) 
      {
           case 0: Cargo = "{FFFFFF}Jogador";
           case 1: Cargo = "{FFFF00}Ajudante"; 
           case 2: Cargo = "{FF8C00}Moderador"; 
           case 3: Cargo = "{00BFFF}Administrador"; 
           case 4: Cargo = "{FF0000}Desenvolvedor"; 
     }
     return Cargo;
}
CMD:admins(playerid, params[]) 
{ 
    new info[512], Cargo[30 ], gstring[128], p = 0;
    for(new i = 0; i < MAX_PLAYERS; i++) 
    { 
        if(PlayerInfo[i][pAdmin] > 0 && AparecendoNoAdmins[i] == true) 
        {
                p++;
                format(gstring, sizeof(gstring), "{FFFFFF}%s | %s\n", pNomeOriginal[i], GetAdminStatus(i));
                strcat(info, gstring);
        }
    }
    if(p == 0)format(info, sizeof(info), "{FFFFFF}Nгo hб nenhum administrador online");
    ShowPlayerDialog(playerid, DIALOG_ADMINS, DIALOG_STYLE_MSGBOX, "Administradores Online", info, "Fechar", "");
    return 1; 
}
Ultima tentativa kkkkk
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)