SA-MP Forums Archive
[HELP] regain player color - 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: [HELP] regain player color (/showthread.php?tid=355077)



[HELP] regain player color - trulis - 28.06.2012

pawn Код:
if(strcmp(cmd, "/aod", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(aduty[playerid] == 0)
                {
                    aduty[playerid] = 1;
                    SetPlayerHealth(playerid, 99999);
                    SetPlayerArmour(playerid, 99999);
                    SetPlayerColor(playerid, COLOR_LIGHTRED);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went on admin duty!", sendername);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
                else
                {
                    aduty[playerid] = 0;
                    SetPlayerHealth(playerid, 100);
                    SetPlayerArmour(playerid, 0);
                    SetPlayerColor(playerid, COLOR_LIGHTRED);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went off admin duty!", sendername);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
            }
            else
            {
            SendClientMessage(playerid, COLOR_WHITE, "  Nu esti admin !");
            }
        }
        return 1;
    }
I made this command and i want to know how can i make it that when the admin goes off duty he regains his original color.


Re: [HELP] regain player color - Strech - 28.06.2012

pawn Код:
if(strcmp(cmd, "/aod", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(aduty[playerid] == 0)
                {
                    aduty[playerid] = 1;
                    SetPlayerHealth(playerid, 99999);
                    SetPlayerArmour(playerid, 99999);
                    SetPlayerColor(playerid, COLOR_LIGHTRED);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went on admin duty!", sendername);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
                else
                {
                    aduty[playerid] = 0;
                    SetPlayerHealth(playerid, 100);
                    SetPlayerArmour(playerid, 0);
                    SetPlayerColor(playerid, COLOR_WHITE);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went off admin duty!", sendername);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
            }
            else
            {
            SendClientMessage(playerid, COLOR_WHITE, "  Nu esti admin !");
            }
        }
        return 1;
    }
Try it this way sir


Re: [HELP] regain player color - trulis - 28.06.2012

The problem is that my server is running an rpg gm so the players are in factions and every factions has a specific color


Re: [HELP] regain player color - Strech - 28.06.2012

You wanted when admin leaves duty,to get white color like normal players right?


Re: [HELP] regain player color - sleepysnowflake - 28.06.2012

Check what faction he is in and give him that color.


Re: [HELP] regain player color - Strech - 28.06.2012

Quote:
Originally Posted by trulis
Посмотреть сообщение
pawn Код:
if(strcmp(cmd, "/aod", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(aduty[playerid] == 0)
                {
                    aduty[playerid] = 1;
                    SetPlayerHealth(playerid, 99999);
                    SetPlayerArmour(playerid, 99999);
                    SetPlayerColor(playerid, COLOR_LIGHTRED);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went on admin duty!", sendername);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
                else
                {
                    aduty[playerid] = 0;
                    SetPlayerHealth(playerid, 100);
                    SetPlayerArmour(playerid, 0);
                    SetPlayerColor(playerid, COLOR_LIGHTRED);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went off admin duty!", sendername);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
            }
            else
            {
            SendClientMessage(playerid, COLOR_WHITE, "  Nu esti admin !");
            }
        }
        return 1;
    }
I made this command and i want to know how can i make it that when the admin goes off duty he regains his original color.
He needed the admin to get white color after leaving the duty.


Re: [HELP] regain player color - sleepysnowflake - 28.06.2012

You clearly lack the ability to understand people.

"The problem is that my server is running an rpg gm so the players are in factions and every factions has a specific color "

This means that if the admin is in a certain faction, you can't just set their name white. That would mean they're faction-less or whatever. I assume there is a pColor[playerid] somewhere in the script that has the admin's or any player's faction color stored.


Re: [HELP] regain player color - trulis - 29.06.2012

pawn Код:
if(strcmp(cmd, "/aod", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            new curcolor;
            curcolor = GetPlayerColor(playerid);
            if(PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(aduty[playerid] == 0)
                {
                    aduty[playerid] = 1;
                    SetPlayerHealth(playerid, 99999);
                    SetPlayerArmour(playerid, 99999);
                    SetPlayerColor(playerid, COLOR_LIGHTRED);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went on admin duty!", sendername);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
                else
                {
                    aduty[playerid] = 0;
                    SetPlayerHealth(playerid, 100);
                    SetPlayerArmour(playerid, 0);
                    SetPlayerColor(playerid, curcolor);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went off admin duty!", sendername);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
            }
            else
            {
            SendClientMessage(playerid, COLOR_WHITE, "  Nu esti admin !");
            }
        }
        return 1;
    }
i thought of using GetPlayerColor so i made this, is this going to work ?


Re: [HELP] regain player color - iggy1 - 29.06.2012

Test it.


Re: [HELP] regain player color - .Wicked - 29.06.2012

Not sure if it's going to work but I hope so

pawn Код:
new PlayerOldColor[MAX_PLAYERS];
pawn Код:
if(strcmp(cmd, "/aod", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            new curcolor;
            if(PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(aduty[playerid] == 0)
                {
                    aduty[playerid] = 1;
                    SetPlayerHealth(playerid, 99999);
                    SetPlayerArmour(playerid, 99999);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went on admin duty!", sendername);
                    PlayerOldColor[playerid] = GetPlayerColor(playerid);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
                else
                {
                    aduty[playerid] = 0;
                    SetPlayerHealth(playerid, 100);
                    SetPlayerArmour(playerid, 0);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "[FioriGinal]: %s went off admin duty!", sendername);
                    SetPlayerColor(playerid, PlayerOldColor[playerid]);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
            }
            else
            {
            SendClientMessage(playerid, COLOR_WHITE, "  Nu esti admin !");
            }
        }
        return 1;
    }