[Ajuda] Comando /administradores
#1

PHP код:
enum pInfo
{
    
Administrador,
    
bool:conectado
}
new 
Player[MAX_PLAYERS][pInfo];
new 
AdminNivel[50];
new 
AdminOnline[50];
#define DIALOG_ADMIN 1
#define DIALOG_NOADMIN 2 
PHP код:
CMD:administradores(playeridparams[])
{
    new 
string[180], NenhumnAdmin[MAX_PLAYER_NAME];
    for(new 
0MAX_PLAYERSi++)
    {
        if(
Player[i][Administrador] > 0)
        {
            
GetPlayerName(inAdmin32);
            if(
Player[i][AdministradorAdminNivel "Ajudante");
            if(
Player[i][Administrador] == 2AdminNivel "Moderador(a)");
            if(
Player[i][Administrador] == 3AdminNivel "Administrador(a)");
            if(
Player[i][Administrador] == 4AdminNivel "Programador(a)");
            if(
Player[i][AdminOnline] == trueAdminOnline "Conectado");
            
format(stringsizeof(string), "{FFFFFF}Nome\tNнvel\tStatus\n%s\t%s\s%s"nAdminAdminNivelAdminOnline);
            
ShowPlayerDialog(playeridDIALOG_ADMINDIALOG_STYLE_TABLIST_HEADERS"{FF0000}Administradores"string"{FFFFFF}Fechar""");
            
Nenhum++;
        }
    if(
Nenhum == 0)
    {
        
ShowPlayerDialog(playeridDIALOG_NOADMINDIALOG_STYLE_MSGBOX"{FF0000}Administradores""{FF0000}Nгo hб administradores(a) online""{FFFFFF}Fechar"""
    
}
    return 
1;

Acontece os seguintes erros:

PHP код:
error 001expected token")"but found "-identifier-"
error 001expected token";"but found ")"
 
error 029invalid expressionassumed zero
fatal error 107
too many error messages on one line 
Reply
#2

PHP код:
CMD:administradores(playeridparams[])
{
    new 
string[180], NenhumnAdmin[MAX_PLAYER_NAME];
    for(new 
0MAX_PLAYERSi++)
    {
        if(
Player[i][Administrador] > 0)
        {
            
GetPlayerName(inAdmin32);
            if(
Player[i][Administrador] == 1AdminNivel "Ajudante";
            if(
Player[i][Administrador] == 2AdminNivel "Moderador(a)";
            if(
Player[i][Administrador] == 3AdminNivel "Administrador(a)";
            if(
Player[i][Administrador] == 4AdminNivel "Programador(a)";
            if(
Player[i][AdminOnline] == trueAdminOnline "Conectado";
            
format(stringsizeof(string), "{FFFFFF}Nome\tNнvel\tStatus\n%s\t%s\s%s"nAdminAdminNivelAdminOnline);
            
ShowPlayerDialog(playeridDIALOG_ADMINDIALOG_STYLE_TABLIST_HEADERS"{FF0000}Administradores"string"{FFFFFF}Fechar""");
            
Nenhum++;
        }
    if(
Nenhum == 0)
    {
        
ShowPlayerDialog(playeridDIALOG_NOADMINDIALOG_STYLE_MSGBOX"{FF0000}Administradores""{FF0000}Nгo hб administradores(a) online""{FFFFFF}Fechar"""
    
}
    return 
1;

Reply
#3

Ainda continua os erros:

PHP код:
error 033: array must be indexed (variable "AdminOnline")
error 027invalid character constant
error 027
invalid character constant
warning 217
loose indentation
error 001
expected token","but found "}"
error 030compound statement not closed at the end of file (started at line 268
Reply
#4

PHP код:
CMD:administradores(playerid)
{
    new 
string[180], ANivel[20], NenhumnAdmin[MAX_PLAYER_NAME];
    for(new 
0MAX_PLAYERSi++)
    {
        if(
Player[i][Administrador] > 0)
        {
            
GetPlayerName(inAdmin24);
            if(
Player[i][Administrador] == 1ANivel "Ajudante";
            if(
Player[i][Administrador] == 2ANivel "Moderador";
            if(
Player[i][Administrador] == 3ANivel "Administrador";
            if(
Player[i][Administrador] == 4ANivel "Programador";
            if(
Player[i][AdminOnline] == trueAdminOnline "Conectado";

            
format(stringsizeof(string), "{FFFFFF}Nome\tNнvel\tStatus\n%s\t%s\s%s"nAdminANivelAdminOnline);
            
ShowPlayerDialog(playeridDIALOG_ADMINDIALOG_STYLE_TABLIST_HEADERS"{FF0000}Administradores"string"{FFFFFF}Fechar""");
            
Nenhum++;
        }
    }
    if(
Nenhum == 0)
    {
        
ShowPlayerDialog(playeridDIALOG_NOADMINDIALOG_STYLE_MSGBOX"{FF0000}Administradores""{FF0000}Nгo hб administradores(a) online""{FFFFFF}Fechar"""
    
}
    return 
1;

Reply
#5

Olhe suas mensagens privadas!
Reply
#6

refiz de uma forma mais simples pra vocк.. se vocк esta tentando fazer o que eu acho que esta.. sua logica esta errada.

PHP код:
new
    
AdminRank_Name[5][32] = 
    {
        {
"Jogador"},
        {
"Ajudante"},
        {
"Administrador"},
        {
"Programador"}
    };
CMD:administradores(playeridparams[])  
{  
    new 
str[180], admin_countadmin_name[MAX_PLAYER_NAME];  
    
    for(new 
0MAX_PLAYERSi++)  
    {  
        if(
Player[i][Administrador])  
        {  
            
GetPlayerName(iadmin_nameMAX_PLAYER_NAME);
            if(
Player[i][conectado])
            {
                
format(strsizeof(str), "{FFFFFF}Nome\tNнvel\tStatus\n%s\t%s\tConectado"admin_nameAdminRank_Name[Player[i][Administrador]]);  
            }
            else
            {
                
format(strsizeof(str), "{FFFFFF}Nome\tNнvel\tStatus\n%s\t%s\tOffline"admin_nameAdminRank_Name[Player[i][Administrador]]);  
            }
              
            
admin_count++;  
        }
    }  
    
    if(!
admin_count)  
    {  
        
ShowPlayerDialog(playeridDIALOG_NOADMINDIALOG_STYLE_MSGBOX"{FF0000}Administradores""{FF0000}Nгo hб administradores(a) online""{FFFFFF}Fechar"""  
        
return true;
    }
    
ShowPlayerDialog(playeridDIALOG_ADMINDIALOG_STYLE_TABLIST_HEADERS"{FF0000}Administradores"str"{FFFFFF}Fechar""");
    return 
true;  

Reply
#7

Quote:
Originally Posted by Naine
Посмотреть сообщение
refiz de uma forma mais simples pra vocк.. se vocк esta tentando fazer o que eu acho que esta.. sua logica esta errada.

PHP код:
new
    
AdminRank_Name[5][32] = 
    {
        {
"Jogador"},
        {
"Ajudante"},
        {
"Administrador"},
        {
"Programador"}
    };
CMD:administradores(playeridparams[])  
{  
    new 
str[180], admin_countadmin_name[MAX_PLAYER_NAME];  
    
    for(new 
0MAX_PLAYERSi++)  
    {  
        if(
Player[i][Administrador])  
        {  
            
GetPlayerName(iadmin_nameMAX_PLAYER_NAME);
            if(
Player[i][conectado])
            {
                
format(strsizeof(str), "{FFFFFF}Nome\tNнvel\tStatus\n%s\t%s\tConectado"admin_nameAdminRank_Name[Player[i][Administrador]]);  
            }
            else
            {
                
format(strsizeof(str), "{FFFFFF}Nome\tNнvel\tStatus\n%s\t%s\tOffline"admin_nameAdminRank_Name[Player[i][Administrador]]);  
            }
              
            
admin_count++;  
        }
    }  
    
    if(!
admin_count)  
    {  
        
ShowPlayerDialog(playeridDIALOG_NOADMINDIALOG_STYLE_MSGBOX"{FF0000}Administradores""{FF0000}Nгo hб administradores(a) online""{FFFFFF}Fechar"""  
        
return true;
    }
    
ShowPlayerDialog(playeridDIALOG_ADMINDIALOG_STYLE_TABLIST_HEADERS"{FF0000}Administradores"str"{FFFFFF}Fechar""");
    return 
true;  

Como eu pego a variбvel do AdminRank_name?
Reply
#8

Quote:
Originally Posted by JoaoBorges
Посмотреть сообщение
Como eu pego a variбvel do AdminRank_name?
ta ali no codigo, camarada.

AdminRank_Name[level]

level precisa ser entre 0 e 3.


ah.. e outra coisa, eu coloquei o tamanho da array errado.

sгo 4 e nгo 5 valores. se tu for adicionar mais leveis tu precisa alterar o tamanho.
PHP код:
new 
    
//AdminRank_Name[quantidade][maximo de caracteres]
    
AdminRank_Name[4][32] =  
    { 
        {
"Jogador"}, 
        {
"Ajudante"}, 
        {
"Administrador"}, 
        {
"Programador"
    }; 
Reply
#9

PHP код:
CMD:administradores(playerid)
{
    new 
string[180], ANivel[20], NenhumnAdmin[MAX_PLAYER_NAME];
    for(new 
0MAX_PLAYERSi++)
    {
        if(
Player[i][Administrador] > 0)
        {
            
GetPlayerName(inAdmin24);
            if(
Player[i][Administrador] == 1ANivel "Ajudante";
            if(
Player[i][Administrador] == 2ANivel "Moderador";
            if(
Player[i][Administrador] == 3ANivel "Administrador";
            if(
Player[i][Administrador] == 4ANivel "Programador";
            if(
Player[i][AdminOnline] == trueformat(AdminOnline50"Conectado");
            
format(stringsizeof(string), "{FFFFFF}Nome\tNнvel\tStatus\n%s\t%s\s%s"nAdminANivelAdminOnline);
            
ShowPlayerDialog(playeridDIALOG_ADMINDIALOG_STYLE_TABLIST_HEADERS"{FF0000}Administradores"string"{FFFFFF}Fechar""");
            
Nenhum++;
        }
    }
    if(
Nenhum == 0)
    {
        
ShowPlayerDialog(playeridDIALOG_NOADMINDIALOG_STYLE_MSGBOX"{FF0000}Administradores""{FF0000}Nгo hб administradores(a) online""{FFFFFF}Fechar"""
    
}
    return 
1;

Para atribuir um valor a uma variбvel do tipo string, vocк deve usar format e nгo o operador de atribuiзгo comъm (=).
Reply
#10

Код:
CMD:administradores(playerid, params[])
{
    new string[180], IsAdmin, a_name[MAX_PLAYER_NAME];
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(Player[i][Administrador] > 0)
        {
            IsAdmin++;
            GetPlayerName(i, a_name, 23);
            if(Player[i][AdminOnline] != false){AdminOnline = "Conectado";}
            else{AdminOnline = "Desconectado";}
            switch(Player[i][Administrador])
            {
                case 1:AdminNivel = "Ajudante";
                case 2:AdminNivel = "Moderador(a)";
                case 3:AdminNivel = "Administrador(a)";
                case 4:AdminNivel = "Programador(a)";
            }
            format(string, sizeof(string), "{FFFFFF}Nome\tNнvel\tStatus\n%s\t%s\t%s", a_name, AdminNivel, AdminOnline);
	}
    }
    if(IsAdmin)
    {
        ShowPlayerDialog(playerid, DIALOG_ADMIN, DIALOG_STYLE_TABLIST_HEADERS, "{FF0000}Administradores", string, "{FFFFFF}Fechar", "");
    }
    else
    {
        ShowPlayerDialog(playerid, DIALOG_NOADMIN, DIALOG_STYLE_MSGBOX, "{FF0000}Administradores", "{FF0000}Nгo hб administradores(a) online", "{FFFFFF}Fechar", "");
    }
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)