/setdonator system need help
#1

hey guys any ideas why im not abel to set my Donator level? because if i use /setdonator it shows the /setdonator [playerid] [level 1-3] but if i start using it Ex: /setdonator Shark 3 then it tells its unknown command? any ideas?

Command:
Код:
if(strcmp(cmdtext,"/setdonator", true) == 0)
    {
    	new str[128];
        if(IsPlayerAdmin(playerid)) return 0;
        if(sscanf(cmdtext,"ui",ID,vlevel)) return SendClientMessage(playerid,0xFF9900AA, "USAGE: /setdonator [playerid / partofname] [Level 1-3]");
        if(ID == INVALID_PLAYER_ID) return SendClientMessage(playerid,0xFF0000FF, "That user is not connected.");
        if(vlevel > 3) return SendClientMessage(playerid,0xFF0000FF,"Avaible Donator Levels 1-3!");
        if(vlevel == 0)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 0) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 0 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 0!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str,sizeof(str),"You had set %s Donator Level to 0!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 0;
        }
        if(vlevel == 1)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 1) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 1 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 1 (Bronze IG)!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str, sizeof(str),"You had set %s Donator Level to 1 (Bronze IG)!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 1;
        }
        if(vlevel == 2)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 2) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 2 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 2 (Silver IG)!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str, sizeof(str),"You had set %s Donator Level to 2 (Silver IG)!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 2;
        }
        if(vlevel == 3)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 3) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 3 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 3 (Gold IG)!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str, sizeof(str),"You had set %s Donator Level to 3 (Gold IG)!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 3;
        }
        return 1;
    }
heres the Command if it helps
Reply
#2

Try this:

Код:
if(strcmp(cmdtext,"/setdonator", true) == 0)
    {
    	new str[128];
        if(IsPlayerAdmin(playerid)) return 0;
        if(sscanf(cmdtext,"uu",ID,vlevel)) return SendClientMessage(playerid,0xFF9900AA, "USAGE: /setdonator [playerid / partofname] [Level 1-3]");
        if(ID == INVALID_PLAYER_ID) return SendClientMessage(playerid,0xFF0000FF, "That user is not connected.");
        if(vlevel > 3) return SendClientMessage(playerid,0xFF0000FF,"Avaible Donator Levels 1-3!");
        if(vlevel == 0)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 0) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 0 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 0!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str,sizeof(str),"You had set %s Donator Level to 0!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 0;
        }
        if(vlevel == 1)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 1) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 1 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 1 (Bronze IG)!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str, sizeof(str),"You had set %s Donator Level to 1 (Bronze IG)!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 1;
        }
        if(vlevel == 2)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 2) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 2 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 2 (Silver IG)!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str, sizeof(str),"You had set %s Donator Level to 2 (Silver IG)!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 2;
        }
        if(vlevel == 3)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 3) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 3 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 3 (Gold IG)!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str, sizeof(str),"You had set %s Donator Level to 3 (Gold IG)!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 3;
        }
        return 1;
    }
Reply
#3

still the same thing it tells me unknown command....
Reply
#4

Where you did if(IsPlayerAdmin)) return 0, you're returning it to BE an unknown command. The correct version would be if(!IsPlayerAdmin(playerid)) return 0; you need to include the "!". The fixed code for that is shown below:

Код:
if(strcmp(cmdtext,"/setdonator", true) == 0)
    {
    	new str[128];
        if(!IsPlayerAdmin(playerid)) return 0;
        if(sscanf(cmdtext,"uu",ID,vlevel)) return SendClientMessage(playerid,0xFF9900AA, "USAGE: /setdonator [playerid / partofname] [Level 1-3]");
        if(ID == INVALID_PLAYER_ID) return SendClientMessage(playerid,0xFF0000FF, "That user is not connected.");
        if(vlevel > 3) return SendClientMessage(playerid,0xFF0000FF,"Avaible Donator Levels 1-3!");
        if(vlevel == 0)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 0) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 0 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 0!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str,sizeof(str),"You had set %s Donator Level to 0!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 0;
        }
        if(vlevel == 1)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 1) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 1 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 1 (Bronze IG)!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str, sizeof(str),"You had set %s Donator Level to 1 (Bronze IG)!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 1;
        }
        if(vlevel == 2)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 2) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 2 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 2 (Silver IG)!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str, sizeof(str),"You had set %s Donator Level to 2 (Silver IG)!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 2;
        }
        if(vlevel == 3)
        {
            if(PlayerInfo[ID][pDonatorLevel] == 3) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 3 Donator!");
            GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
            GetPlayerName(ID,pname,MAX_PLAYER_NAME);
            format(str, sizeof(str),"%s has set your Donator Level to 3 (Gold IG)!",Nam);
            SendClientMessage(ID,0xFF9900AA,str);
            format(str, sizeof(str),"You had set %s Donator Level to 3 (Gold IG)!",pname);
            SendClientMessage(playerid,0xFF9900AA,str);
            PlayerInfo[ID][pDonatorLevel] = 3;
        }
        return 1;
    }
Reply
#5

Код:
if(strcmp(cmdtext,"/setdonator", true) == 0)
{
new str[128];
if(!IsPlayerAdmin(playerid)) return 0;
if(sscanf(cmdtext,"uu",ID,vlevel)) return SendClientMessage(playerid,0xFF9900AA, "USAGE: /setdonator [playerid / partofname] [Level 1-3]");
if(ID == INVALID_PLAYER_ID) return SendClientMessage(playerid,0xFF0000FF, "That user is not connected.");
if(vlevel > 3) return SendClientMessage(playerid,0xFF0000FF,"Avaible Donator Levels 1-3!");
if(vlevel == 0)
{
if(PlayerInfo[ID][pDonatorLevel] == 0) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 0 Donator!");
GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
GetPlayerName(ID,pname,MAX_PLAYER_NAME);
format(str, sizeof(str),"%s has set your Donator Level to 0!",Nam);
SendClientMessage(ID,0xFF9900AA,str);
format(str,sizeof(str),"You had set %s Donator Level to 0!",pname);
SendClientMessage(playerid,0xFF9900AA,str);
PlayerInfo[ID][pDonatorLevel] = 0;
}
if(vlevel == 1)
{
if(PlayerInfo[ID][pDonatorLevel] == 1) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 1 Donator!");
GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
GetPlayerName(ID,pname,MAX_PLAYER_NAME);
format(str, sizeof(str),"%s has set your Donator Level to 1 (Bronze IG)!",Nam);
SendClientMessage(ID,0xFF9900AA,str);
format(str, sizeof(str),"You had set %s Donator Level to 1 (Bronze IG)!",pname);
SendClientMessage(playerid,0xFF9900AA,str);
PlayerInfo[ID][pDonatorLevel] = 1;
}
if(vlevel == 2)
{
if(PlayerInfo[ID][pDonatorLevel] == 2) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 2 Donator!");
GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
GetPlayerName(ID,pname,MAX_PLAYER_NAME);
format(str, sizeof(str),"%s has set your Donator Level to 2 (Silver IG)!",Nam);
SendClientMessage(ID,0xFF9900AA,str);
format(str, sizeof(str),"You had set %s Donator Level to 2 (Silver IG)!",pname);
SendClientMessage(playerid,0xFF9900AA,str);
PlayerInfo[ID][pDonatorLevel] = 2;
}
if(vlevel == 3)
{
if(PlayerInfo[ID][pDonatorLevel] == 3) return SendClientMessage(playerid,0xFF0000FF,"ERROR: That person is already level 3 Donator!");
GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);
GetPlayerName(ID,pname,MAX_PLAYER_NAME);
format(str, sizeof(str),"%s has set your Donator Level to 3 (Gold IG)!",Nam);
SendClientMessage(ID,0xFF9900AA,str);
format(str, sizeof(str),"You had set %s Donator Level to 3 (Gold IG)!",pname);
SendClientMessage(playerid,0xFF9900AA,str);
PlayerInfo[ID][pDonatorLevel] = 3;
}
return 1;
}
______
Try this if still happens so try typing your id in place of 'Shark'
Reply
#6

still it does the smae thing not sure what is that caused by..(tried to fix it your way but still)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)