osetlevel cmd
#1

removed
Reply
#2

Why you don't make it with ID? It's easier.
Reply
#3

Quote:
Originally Posted by oMa37
Посмотреть сообщение
Why you don't make it with ID? It's easier.
I Need To Make /osetlevel to setlevel of offline members ingame
but i got this 2 errors
Reply
#4

Quote:
Originally Posted by Zorono
Посмотреть сообщение
Код:
CMD:osetlevel(playerid,params[])
{
    if(IsPlayerAdmin(playerid))
	{
		new username[MAX_PLAYER_NAME], level;
		if(sscanf(params, "dd", username,level)) return SendClientMessage(playerid, red, "USAGE: /osetlevel [name] [Level]");
		if(udb_Exists(username))
		{
		if(level == PlayerInfo[username][Level]) return SendClientMessage(playerid,red,"ERROR: Player is already this level");
			dUserSetINT(username).("level", level);
			PlayerInfo[username][Level] = level;
			CMDMessageToAdmins(playerid,"osetlevel");
			return 1;
    	}
	    else return SendClientMessage(playerid, red, "ERROR: No player with this name.");
	}
    else return SendClientMessage(playerid,red,"ERROR: You Need To Be A High Level Admin To Use This Command");
}
my errors:-
Код:
(50627) : error 033: array must be indexed (variable "username") Here: if(level == PlayerInfo[username][Level]) return SendClientMessage(playerid,red,"ERROR: Player is already this level");
(50629) : error 033: array must be indexed (variable "username")  Here: PlayerInfo[username][Level] = level;
user name is string not integer
Код:
		new username[24], level;
		if(sscanf(params, "s[24]d", username,level)) return SendClientMessage(playerid, red, "USAGE: /osetlevel [name] [Level]");
Reply
#5

removed
Reply
#6

Код:
CMD:osetlevel(playerid,params[])
{
    if(IsPlayerAdmin(playerid))
	{
		new username[24], level ,oldlevel;
		if(sscanf(params, "s[24]d", username,level)) return SendClientMessage(playerid, red, "USAGE: /osetlevel [name] [Level]");
		if(udb_Exists(username))
		{
			oldlevel = dUserGetINT(username).("level"); //here load his level in old level . 
			if(level == oldlevel) return SendClientMessage(playerid,red,"ERROR: Player is already this level");
			dUserSetINT(username).("level", level);
			CMDMessageToAdmins(playerid,"osetlevel");
			return 1;
    	}
	    else return SendClientMessage(playerid, red, "ERROR: No player with this name.");
	}
    else return SendClientMessage(playerid,red,"ERROR: You Need To Be A High Level Admin To Use This Command");
}
Try this you can't use PlayerInfo[username][Level] = level;
Reply
#7

(50627) : error 017: undefined symbol "dUserGetINT"
(50627) : error 029: invalid expression, assumed zero
Reply
#8

Try this
PHP код:
CMD:osetlevel(playerid,params[])
{
    if(
IsPlayerAdmin(playerid))
    {
        new 
username[MAX_PLAYER_NAME], level;
        if(
sscanf(params"s[24]d"username,level)) return SendClientMessage(playeridred"USAGE: /osetlevel [name] [Level]");
        if(
udb_Exists(username))
        {
        if(
level == dUserINT(username"level") return SendClientMessage(playerid,red,"ERROR: Player is already this level");
            
dUserSetINT(username).("level"level);
            
//PlayerInfo[username][Level] = level; unless
            
CMDMessageToAdmins(playerid,"osetlevel");
            return 
1;
        }
        else return 
SendClientMessage(playeridred"ERROR: No player with this name.");
    }
    else return 
SendClientMessage(playerid,red,"ERROR: You Need To Be A High Level Admin To Use This Command");

Reply
#9

This is not working?

PHP код:
CMD:osetlevel(playerid,params[])
{
    if(
IsPlayerAdmin(playerid))
    {
        new 
username[MAX_PLAYER_NAME], level;
        if(
sscanf(params"s[24]d"username,level)) return SendClientMessage(playeridred"USAGE: /osetlevel [name] [Level]");        if(udb_Exists(username))
        {
        if(
level == PlayerInfo[username][Level]) return SendClientMessage(playerid,red,"ERROR: Player is already this level"); // PlayerInfo[PLAYERID ?][Level] ?
            
dUserSetINT(username).("level"level);
            
PlayerInfo[username][Level] = level;
            
CMDMessageToAdmins(playerid,"osetlevel");
            return 
1;
        }
        else return 
SendClientMessage(playeridred"ERROR: No player with this name.");
    }
    else return 
SendClientMessage(playerid,red,"ERROR: You Need To Be A High Level Admin To Use This Command");

Reply
#10

Quote:
Originally Posted by Dayrion
Посмотреть сообщение
This is not working?

PHP код:
CMD:osetlevel(playerid,params[])
{
    if(
IsPlayerAdmin(playerid))
    {
        new 
username[MAX_PLAYER_NAME], level;
        if(
sscanf(params"s[24]d"username,level)) return SendClientMessage(playeridred"USAGE: /osetlevel [name] [Level]");        if(udb_Exists(username))
        {
        if(
level == PlayerInfo[username][Level]) return SendClientMessage(playerid,red,"ERROR: Player is already this level"); // PlayerInfo[PLAYERID ?][Level] ?
            
dUserSetINT(username).("level"level);
            
PlayerInfo[username][Level] = level;
            
CMDMessageToAdmins(playerid,"osetlevel");
            return 
1;
        }
        else return 
SendClientMessage(playeridred"ERROR: No player with this name.");
    }
    else return 
SendClientMessage(playerid,red,"ERROR: You Need To Be A High Level Admin To Use This Command");

Dont use variable !!!
to check the level maybe you can open the file and check thats ...
and the variable
PHP код:
PlayerInfo[username][Level] = level;//Is Unused and just make a Error 
!!

Just use dUserSetInt !!
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)