[HELP] /admins command
#1

There are 2 players in my server, when I type /admins following happens:


As well as /nzmembers


Code:
Код:
#define NICE_PINK				0xEC13C0FF
Код:
#define green					0x33FF33AA
Код:
CMD:admins(playerid,params[])
{
    #pragma unused params
        new string[128];
  		SendClientMessage(playerid, green, " ");
        SendClientMessage(playerid, green, "___________ |- Online Admin's -| ___________");
		SendClientMessage(playerid, green, " ");
		for(new i = 0; i < MAX_PLAYERS; i++)
		{
	 		if (IsPlayerConnected(i))
	 		{
    			if(PlayerInfo[i][Level] == 0)
            	{
            	    format(string,sizeof(string), "No admin online in the list", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                GetPlayerName(i,PlayerName2(i),MAX_PLAYER_NAME);
                if(PlayerInfo[i][Level] == 1)
                {
                    format(string,sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Basic Moderator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 2)
                {
                    format(string,sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Moderator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 3)
                {
                    format(string,sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Master Moderator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 4)
                {
                    format(string,sizeof(string), "{7CFC00}%s (ID:%i) - Level: %d | Administrator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 5)
                {
                    format(string,sizeof(string), "{1E90FF}%s (ID:%i) - Level: %d | Master Administrator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 6)
                {
                    format(string,sizeof(string), "{00FFFF}%s (ID:%i) - Level: %d | Professional Admin | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 7)
                {
                    format(string,sizeof(string), "%s (ID:%i) - Level: %d | Super Admin | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 8)
                {
                    format(string,sizeof(string), "{FF0000}%s (ID:%i) - Level: %d | Delta Administrator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                SendClientMessage(playerid,NICE_PINK,string);
    			}
			}
  		SendClientMessage(playerid, green, " _______________________________________");
  		return 1;
}
Please justify the codes above, thanks
Reply
#2

Quote:
Originally Posted by XYZero
Посмотреть сообщение
There are 2 players in my server, when I type /admins following happens:


As well as /nzmembers


Code:
Код:
#define NICE_PINK				0xEC13C0FF
Код:
#define green					0x33FF33AA
Код:
CMD:admins(playerid,params[])
{
    #pragma unused params
        new string[128];
  		SendClientMessage(playerid, green, " ");
        SendClientMessage(playerid, green, "___________ |- Online Admin's -| ___________");
		SendClientMessage(playerid, green, " ");
		for(new i = 0; i < MAX_PLAYERS; i++)
		{
	 		if (IsPlayerConnected(i))
	 		{
    			if(PlayerInfo[i][Level] == 0)
            	{
            	    format(string,sizeof(string), "No admin online in the list", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                GetPlayerName(i,PlayerName2(i),MAX_PLAYER_NAME);
                if(PlayerInfo[i][Level] == 1)
                {
                    format(string,sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Basic Moderator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 2)
                {
                    format(string,sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Moderator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 3)
                {
                    format(string,sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Master Moderator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 4)
                {
                    format(string,sizeof(string), "{7CFC00}%s (ID:%i) - Level: %d | Administrator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 5)
                {
                    format(string,sizeof(string), "{1E90FF}%s (ID:%i) - Level: %d | Master Administrator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 6)
                {
                    format(string,sizeof(string), "{00FFFF}%s (ID:%i) - Level: %d | Professional Admin | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 7)
                {
                    format(string,sizeof(string), "%s (ID:%i) - Level: %d | Super Admin | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 8)
                {
                    format(string,sizeof(string), "{FF0000}%s (ID:%i) - Level: %d | Delta Administrator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                SendClientMessage(playerid,NICE_PINK,string);
    			}
			}
  		SendClientMessage(playerid, green, " _______________________________________");
  		return 1;
}
Please justify the codes above, thanks
pawn Код:
Just add these:
new isOnline = false;

//Change this
if(PlayerInfo[i][Level] == 0)
//to this
If(!isOnline)
//and add this below getplayername
isOnline = true;
Reply
#3

Код:
CMD:admins(playerid,params[])
{
    #pragma unused params
        new string[128], xadmins;
  		SendClientMessage(playerid, green, " ");
        SendClientMessage(playerid, green, "___________ |- Online Admin's -| ___________");
		SendClientMessage(playerid, green, " ");
		for(new i = 0; i < MAX_PLAYERS; i++)
		{
	 		if (IsPlayerConnected(i) && PlayerInfo[i][Level])
	 		{
            	
                GetPlayerName(i,PlayerName2(i),MAX_PLAYER_NAME);
                if(PlayerInfo[i][Level] == 1)
                {
                    format(string,sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Basic Moderator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 2)
                {
                    format(string,sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Moderator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 3)
                {
                    format(string,sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Master Moderator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 4)
                {
                    format(string,sizeof(string), "{7CFC00}%s (ID:%i) - Level: %d | Administrator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 5)
                {
                    format(string,sizeof(string), "{1E90FF}%s (ID:%i) - Level: %d | Master Administrator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 6)
                {
                    format(string,sizeof(string), "{00FFFF}%s (ID:%i) - Level: %d | Professional Admin | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 7)
                {
                    format(string,sizeof(string), "%s (ID:%i) - Level: %d | Super Admin | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                else if(PlayerInfo[i][Level] == 8)
                {
                    format(string,sizeof(string), "{FF0000}%s (ID:%i) - Level: %d | Delta Administrator | Playing!", PlayerName2(i),i,PlayerInfo[i][Level]);
                }
                xadmins ++;
                SendClientMessage(playerid,NICE_PINK,string);
    			}
			}
                if(xadmins == 0)
                {
            	    format(string,sizeof(string), "No admin online in the list", PlayerName2(i),i,PlayerInfo[i][Level]);
                    SendClientMessage(playerid, NICE_PINK, string);
                }

  		SendClientMessage(playerid, green, " _______________________________________");
  		return 1;
}
Reply
#4

Thanks both
Reply
#5

1fret: nothings changed

Tamy: I found this
C:\Users\WIN7\Downloads\NZTDM\Gamemodes\SATDM_v9.p wn(15695) : warning 217: loose indentation
C:\Users\WIN7\Downloads\NZTDM\Gamemodes\SATDM_v9.p wn(15697) : error 017: undefined symbol "i"
C:\Users\WIN7\Downloads\NZTDM\Gamemodes\SATDM_v9.p wn(15701) : warning 217: loose indentation
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


1 Error.
Reply
#6

You haven't added anything to detect if there's no admins online, you just detect if there's a player with a level of 0 it seems.
Add a variable that increases for each admin that's online, then check if that counter equals 0, and display the message.
pawn Код:
new online;
for(new i = 0; i < MAX_PLAYERS; i++)
{
    if(IsPlayerConnected(i) && PlayerInfo[i][Level] > 0)
    {
        online++;
        if(online == 0) format(string,sizeof(string), "No admin online in the list");
If you do not know what indentation is, look here: https://sampforum.blast.hk/showthread.php?tid=256961
Reply
#7

Sorry, I am still at a loss to understand all of it, because I am newbie. And can you give the right codes for me?
Reply
#8

Well, yeah... I suppose....

pawn Код:
CMD:admins(playerid, params[])
{
    SendClientMessage(playerid, green, " ");
    SendClientMessage(playerid, green, "___________ |- Online Admin's -| ___________");
    SendClientMessage(playerid, green, " ");
    new count = 0;
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(!IsPlayerConnected(i)) continue;
        if(!PlayerInfo[i][Level]) continue;
        new string[90], playersname[MAX_PLAYER_NAME];
        GetPlayerName(i, playersname, sizeof(playersname));
        switch(PlayerInfo[i][Level])
        {
            case 1: format(string, sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Basic Moderator | Playing!", playersname, i, PlayerInfo[i][Level]);
            case 2: format(string, sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Moderator | Playing!", playersname, i, PlayerInfo[i][Level]);
            case 3: format(string, sizeof(string), "{FF9900}%s (ID:%i) - Level: %d | Master Moderator | Playing!", playersname, i, PlayerInfo[i][Level]);
            case 4: format(string, sizeof(string), "{7CFC00}%s (ID:%i) - Level: %d | Administrator | Playing!", playersname, i, PlayerInfo[i][Level]);
            case 5: format(string, sizeof(string), "{1E90FF}%s (ID:%i) - Level: %d | Master Administrator | Playing!", playersname, i, PlayerInfo[i][Level]);
            case 6: format(string, sizeof(string), "{00FFFF}%s (ID:%i) - Level: %d | Professional Admin | Playing!", playersname, i, PlayerInfo[i][Level]);
            case 7: format(string, sizeof(string), "%s (ID:%i) - Level: %d | Super Admin | Playing!", playersname, i, PlayerInfo[i][Level]);
            case 8: format(string, sizeof(string), "{FF0000}%s (ID:%i) - Level: %d | Delta Administrator | Playing!", playersname, i, PlayerInfo[i][Level]);
            default: continue;
        }
        SendClientMessage(playerid, NICE_PINK, string);
        count++;
    }
    if(!count) SendClientMessage(playerid, NICE_PINK, "No admin online in the list");
    SendClientMessage(playerid, green, " _______________________________________");
    return 1;
}
Reply
#9

Omg, thankyou verymuch
Reply
#10

Nice, It's helped but how to give rcon admin rank like "RCON Administrator"
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)