SA-MP Forums Archive
/Admins - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: /Admins (/showthread.php?tid=307381)



/Admins - V_LOPE - 30.12.2011

Hi There,
i Have /admins command...but There Problem I cannot Fix it.
The Problem is : when there No Admins Online it show me this

_________|-Online Admins-|_____________

Name [id] - Rank - Level :0
_____________________________________

but i want show "No admin online"
This Is The Code :

pawn Код:
dcmd_admins(playerid,params[])
{
    #pragma unused params
        new count = 0;
        new string[128];
        new ChangeColor;
        new AdmRank[128];
        SendClientMessage(playerid, green, " ");
        SendClientMessage(playerid, green, "___________ |- Online Admins -| ___________");
        SendClientMessage(playerid, green, " ");
        for(new i = 0; i < MAX_PLAYERS; i++)
        {
            if (IsPlayerConnected(i))
            {
                    if(IsPlayerAdmin(i))
                    {
                        AdmRank = "Rcon Admin";
                        ChangeColor = Color_RCON_Administrator;
                    }
                    else
                    {
                        switch(PlayerInfo[i][Level])
                        {
                            case 1: {
                            AdmRank = "Trial Admin";
                            ChangeColor = Color_Trial_Admin;
                            }
                            case 2: {
                            AdmRank = "Server Admin";
                            ChangeColor = Color_Server_Admin;
                            }
                            case 3: {
                            AdmRank = "Senior Admin";
                            ChangeColor = Color_Senior_Admin;
                            }
                            case 4: {
                            AdmRank = "Lead_Admin";
                            ChangeColor = Color_Lead_Admin;
                            }
                            case 5: {
                            AdmRank = "Global Admin";
                            ChangeColor = Color_Global_Admin;
                            }
                            case 6: {
                            AdmRank = "Server Owner";
                            ChangeColor = Color_Server_Owner;
                            }
                    }
                    format(string, 128, "%s - [id : %d ] | %s | Level: %d%",PlayerName2(i),i,AdmRank,PlayerInfo[i][Level]);
                    SendClientMessage(playerid, ChangeColor, string); //
                    count++;
                    }
                }
            }
        if (count == 0)
        SendClientMessage(playerid,red,"No admin online in the list");
        SendClientMessage(playerid, green, " _______________________________________");
        return 1;
}



Re: /Admins - HuSs3n - 30.12.2011

try this....
Код:
dcmd_admins(playerid,params[])
{
    #pragma unused params
        new count = 0;
        new string[128];
        new ChangeColor;
        new AdmRank[128];
        SendClientMessage(playerid, green, " ");
        SendClientMessage(playerid, green, "___________ |- Online Admins -| ___________");
        SendClientMessage(playerid, green, " ");
        for(new i = 0; i < MAX_PLAYERS; i++)
        {
            if (IsPlayerConnected(i))
            {
                    if((IsPlayerAdmin(i)) || (PlayerInfo[i][Level] > 0)) count++;
                    if(IsPlayerAdmin(i))
                    {
                        AdmRank = "Rcon Admin";
                        ChangeColor = Color_RCON_Administrator;
                    }
                    else
                    {
                        switch(PlayerInfo[i][Level])
                        {
                            case 1: {
                            AdmRank = "Trial Admin";
                            ChangeColor = Color_Trial_Admin;
                            }
                            case 2: {
                            AdmRank = "Server Admin";
                            ChangeColor = Color_Server_Admin;
                            }
                            case 3: {
                            AdmRank = "Senior Admin";
                            ChangeColor = Color_Senior_Admin;
                            }
                            case 4: {
                            AdmRank = "Lead_Admin";
                            ChangeColor = Color_Lead_Admin;
                            }
                            case 5: {
                            AdmRank = "Global Admin";
                            ChangeColor = Color_Global_Admin;
                            }
                            case 6: {
                            AdmRank = "Server Owner";
                            ChangeColor = Color_Server_Owner;
                            }
                    }
                    format(string, 128, "%s - [id : %d ] | %s | Level: %d%",PlayerName2(i),i,AdmRank,PlayerInfo[i][Level]);
                    SendClientMessage(playerid, ChangeColor, string); //
                    }
                }
            }
        if (count == 0)
        SendClientMessage(playerid,red,"No admin online in the list");
        SendClientMessage(playerid, green, " _______________________________________");
        return 1;
}



Re: /Admins - V_LOPE - 30.12.2011

Going to Test it

EDIT: It Show "No Admins Online " and with This Message:
"_________|-Online Admins-|_____________

Name [id] - Rank - Level :0
_____________________________________


Re: /Admins - [ABK]Antonio - 30.12.2011

pawn Код:
CMD:admins(playerid, params[])
{
    if(playercount >= 1)
    {
        new str[128], count = 0;
        SendClientMessage(playerid, Cyan, "| Administrators Online |");
        for(new i; i<=playercount; i++)
        {
            if(IsPlayerConnected(i))
            {
                if(AccInfo[i][Level] >= 1)
                {
                    format(str, sizeof(str), "Level %d: %s[%d] - %s", AccInfo[i][Level], Name(i), i, LevelName(i));
                    SendClientMessage(playerid, Dcyan, str);
                    count++;
                }
            }
        }
        if(count == 0) return SendClientMessage(playerid, Bcyan, "No administrators online.");
    }
    return 1;
}
pawn Код:
stock LevelName(playerid)
{
    new LevelNamee[22];
    switch(AccInfo[playerid][Level])
    {
        case 0: LevelNamee = "Regular Player";
        case 1: LevelNamee = "Moderator";
        case 2: LevelNamee = "Super Moderator";
        case 3: LevelNamee = "Administrator";
        case 4: LevelNamee = "Super Administrator";
        case 5: LevelNamee = "Supreme Administrator";
    }
    return LevelNamee;
}

stock Name(playerid)
{
    new nname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, nname, sizeof(nname));
    return nname;
}
This is from the admin filterscript I'm working on that isn't near finished & hasn't been tested at all...Could try this out though

Note;
pawn Код:
if(playercount >= 1)
This is a variable I created...instead of using MAX_PLAYERS

pawn Код:
OnPlayerConnect(playerid)
{
    playercount++;
}
pawn Код:
OnPlayerDisconnect(playerid, reason)
{
    playercount--;
}



Re: /Admins - V_LOPE - 30.12.2011

You Just Copied From Your Fs and Paste it here?


Re: /Admins - [ABK]Antonio - 30.12.2011

Well...Not entirely, I left out an #if statement for enabling/disabling it lol

#if cmdADMINS == 1
#endif

That's what I left out


Re: /Admins - V_LOPE - 30.12.2011

I Fixed.


Re: /Admins - V_LOPE - 31.12.2011

Quote:
Originally Posted by V_LOPE
Посмотреть сообщение
I Fixed.
Not Fixed. i edit but
it show This :
"No admin online in the list"
with Black color "Admin [id] | rank] "

Code :
pawn Код:
dcmd_admins(playerid,params[])
{
    #pragma unused params
        new count = 0;
        new string[128];
        new ChangeColor;
        new AdmRank[128];
        SendClientMessage(playerid, green, " ");
        SendClientMessage(playerid, green, "___________ |- Online Admins -| ___________");
        SendClientMessage(playerid, green, " ");
        for(new i = 0; i < MAX_PLAYERS; i++)
        {
            if (IsPlayerConnected(i))
            {
                    if((IsPlayerAdmin(i)) || (PlayerInfo[i][Level] > 0)) count++;
                    if((!IsPlayerAdmin(i)) || (PlayerInfo[i][Level] <= 0)) count = 0;
                    if(IsPlayerAdmin(i))
                    {
                        AdmRank = "Rcon Admin";
                        ChangeColor = Color_RCON_Administrator;
                    }
                    else
                    {
                        switch(PlayerInfo[i][Level])
                        {
                            case 1: {
                            AdmRank = "Trial Admin";
                            ChangeColor = Color_Trial_Admin;
                            }
                            case 2: {
                            AdmRank = "Server Admin";
                            ChangeColor = Color_Server_Admin;
                            }
                            case 3: {
                            AdmRank = "Senior Admin";
                            ChangeColor = Color_Senior_Admin;
                            }
                            case 4: {
                            AdmRank = "Lead_Admin";
                            ChangeColor = Color_Lead_Admin;
                            }
                            case 5: {
                            AdmRank = "Global Admin";
                            ChangeColor = Color_Global_Admin;
                            }
                            case 6: {
                            AdmRank = "Server Owner";
                            ChangeColor = Color_Server_Owner;
                            }
                        }
                    }
                    format(string, 128, "%s - [id : %d ] | %s | Level: %d%",PlayerName2(i),i,AdmRank,PlayerInfo[i][Level]);
                    SendClientMessage(playerid, ChangeColor, string); //
                    }
        }
        if (count == 0)
        SendClientMessage(playerid,red,"No admin online in the list");
        SendClientMessage(playerid, green, " _______________________________________");
        return 1;
}