SA-MP Forums Archive
/aduty problem. - 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: /aduty problem. (/showthread.php?tid=456172)



/aduty problem. - N0FeaR - 04.08.2013

Can u see whats wrong here when i got /aduty its says Administrator is now off-duty.

pawn Код:
if(!strcmp(cmdtext, "/adminduty", true) || !strcmp(cmdtext, "/aduty", true))
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] <= 3)
            {
                if(AdminDuty[playerid] == 0)
                {
                    AdminDuty[playerid] = 1;
                    SetPlayerColor(playerid, 0xAA3333AA);
                    format(string, sizeof(string),"Administrator %s is now on-duty.", sendername);
                    ABroadCast(COLOR_GRAD2, string, 1);
                    SetPlayerArmourEx(playerid, 100000);
                    SetPlayerHealthEx(playerid, 100000);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    GiveNameSpace(sendername);
                    HidePM[playerid] = 0;
                }

                else if(PlayerInfo[playerid][pAdmin] == 5)
                {
                    AdminDuty[playerid] = 1;
                    SetPlayerColor(playerid, 0xAA3333AA);
                    format(string, sizeof(string),"Administrator %s is now on-duty.", sendername);
                    ABroadCast(COLOR_GRAD2, string, 1);
                    SetPlayerArmourEx(playerid, 100000);
                    SetPlayerHealthEx(playerid, 100000);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    GiveNameSpace(sendername);
                    HidePM[playerid] = 0;
                }

                else if(PlayerInfo[playerid][pAdmin] == 4)
                {
                    AdminDuty[playerid] = 1;
                    SetPlayerColor(playerid, 0xAA3333AA);
                    format(string, sizeof(string),"Administrator %s is now on-duty.", sendername);
                    ABroadCast(COLOR_GRAD2, string, 1);
                    SetPlayerArmourEx(playerid, 100000);
                    SetPlayerHealthEx(playerid, 100000);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    GiveNameSpace(sendername);
                    HidePM[playerid] = 0;
                }
                return 1;
            }
                else if(AdminDuty[playerid] == 0)
                {
                    if(PlayerInfo[playerid][pAdmin] >= 1)
                    {
                        AdminDuty[playerid] = 0;
                        format(string, sizeof(string),"Administrator %s is now off-duty.", sendername);
                        ABroadCast(COLOR_GRAD2, string, 1);
                        return 1;
                    }
                }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "You are not authorised to use this command!");
                return 1;
            }
        }
        return 1;
    }



Re: /aduty problem. - Blast3r - 04.08.2013

pawn Код:
if(!strcmp(cmdtext, "/adminduty", true) || !strcmp(cmdtext, "/aduty", true))
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] <= 3)
            {
                if(AdminDuty[playerid] == 0)
                {
                    AdminDuty[playerid] = 1;
                    SetPlayerColor(playerid, 0xAA3333AA);
                    format(string, sizeof(string),"Administrator %s is now on-duty.", sendername);
                    ABroadCast(COLOR_GRAD2, string, 1);
                    SetPlayerArmourEx(playerid, 100000);
                    SetPlayerHealthEx(playerid, 100000);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    GiveNameSpace(sendername);
                    HidePM[playerid] = 0;
                }

                else if(PlayerInfo[playerid][pAdmin] == 5)
                {
                    AdminDuty[playerid] = 1;
                    SetPlayerColor(playerid, 0xAA3333AA);
                    format(string, sizeof(string),"Administrator %s is now on-duty.", sendername);
                    ABroadCast(COLOR_GRAD2, string, 1);
                    SetPlayerArmourEx(playerid, 100000);
                    SetPlayerHealthEx(playerid, 100000);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    GiveNameSpace(sendername);
                    HidePM[playerid] = 0;
                }

                else if(PlayerInfo[playerid][pAdmin] == 4)
                {
                    AdminDuty[playerid] = 1;
                    SetPlayerColor(playerid, 0xAA3333AA);
                    format(string, sizeof(string),"Administrator %s is now on-duty.", sendername);
                    ABroadCast(COLOR_GRAD2, string, 1);
                    SetPlayerArmourEx(playerid, 100000);
                    SetPlayerHealthEx(playerid, 100000);
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    GiveNameSpace(sendername);
                    HidePM[playerid] = 0;
                }
                return 1;
            }
                else if(AdminDuty[playerid] == 1)
                {
                    if(PlayerInfo[playerid][pAdmin] >= 1)
                    {
                        AdminDuty[playerid] = 0;
                        format(string, sizeof(string),"Administrator %s is now off-duty.", sendername);
                        ABroadCast(COLOR_GRAD2, string, 1);
                        return 1;
                    }
                }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "You are not authorised to use this command!");
                return 1;
            }
        }
        return 1;
    }
You set the "else if" admin duty = 0, meaning that if he's off duty it'd set him off duty again, I just changed it with 1. Hope it worked.


Re: /aduty problem. - C00K13M0N$73R - 04.08.2013

Check your if statements. They're a bit mixed up.