Weapon license help
#1

Well basically i made a weapon license system where you need a certain level for a certain gun, but its not working correctly, can anyone lend a hand?

Код:
CMD:setweaponlicense(playerid, params[])
{
    if(sscanf(params,"ui",ID,Classlevel)) return SendClientMessage(playerid,0xFF9900AA, "USAGE: /setweaponlicense [ID] [Class 1-3]");//it will show this if you dont use the format properly
    if(levels > 3) return SendClientMessage(playerid,0xFF0000FF,"LEVELS AVAILABLE 1-3!");//Available levels
    if(!IsPlayerConnected(ID))return SendClientMessage(playerid, COLOR_RED,"That user is not connected.");//Detect if the id/partofname is connected
    GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);//define the playerid name
    GetPlayerName(ID,pname,MAX_PLAYER_NAME);//define the other person name
    if(levels == 0)
    {
        format(str, sizeof(str),"%s has set your weapon license level to %d on the server.",Nam,levels);
        SendClientMessage(ID,0xFF9900AA,str);
        format(str, sizeof(str),"You have set %s weapon license level to %d!",pname,levels);
        SendClientMessage(playerid,0xFF9900AA,str);
        PlayerData[ID][Classlevel] = levels;//this sets the player level
        return 1;
    }
    format(str, sizeof(str),"%s has set your weapon license level to %d on the server.",Nam,levels);
    SendClientMessage(ID,0xFF9900AA,str);
    format(str, sizeof(str),"You have set %s weapon license level to %d!",pname,levels);
    SendClientMessage(playerid,0xFF9900AA,str);
    PlayerData[ID][Classlevel] = levels;
	return 1;
}




enum pData
{
	Classlevel
};
new PlayerData[MAX_PLAYERS][pData];
new Classes,Nam[MAX_PLAYER_NAME],pname[MAX_PLAYER_NAME],str[128],ID;
Reply
#2

Bump, I really need help with this
Reply
#3

Try this out:

pawn Код:
CMD:setweaponlicense(playerid, params[])
{
    new ID, levels, str[150], Nam[MAX_PLAYER_NAME+1], pname[MAX_PLAYER_NAME+1];

    if(sscanf(params,"ui", ID, levels)) return SendClientMessage(playerid,0xFF9900AA, "USAGE: /setweaponlicense [ID] [Class 1-3]");//it will show this if you dont use the format properly
    if(levels < 1 || levels > 3) return SendClientMessage(playerid,0xFF0000FF,"LEVELS AVAILABLE 1-3!");//Available levels
    if(!IsPlayerConnected(ID)) return SendClientMessage(playerid, COLOR_RED,"That user is not connected.");//Detect if the id/partofname is connected

    GetPlayerName(playerid,Nam, MAX_PLAYER_NAME);//define the playerid name
    GetPlayerName(ID,pname,MAX_PLAYER_NAME);//define the other person name

    if(levels == 0)
    {
        format(str, sizeof(str),"%s has set your weapon license level to %d on the server.",Nam,levels);
        SendClientMessage(ID,0xFF9900AA,str);

        format(str, sizeof(str),"You have set %s weapon license level to %d!",pname,levels);
        SendClientMessage(playerid,0xFF9900AA,str);

        PlayerData[ID][Classlevel] = levels;//this sets the player level
    }
    else
    {
        format(str, sizeof(str),"%s has set your weapon license level to %d on the server.",Nam,levels);
        SendClientMessage(ID,0xFF9900AA,str);

        format(str, sizeof(str),"You have set %s weapon license level to %d!",pname,levels);
        SendClientMessage(playerid,0xFF9900AA,str);

        PlayerData[ID][Classlevel] = levels;
    }
    return 1;
}
Reply
#4

Thank you so much! It works, L+A
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)