[Reqeust]Command to duplicate an object.
#1

hello, i've been trying, but it didnt worked.
I cant fix the cmd:duplicateobj.

I still got some errors.
I might be awesome is someone could help me out?!

The command:

Errors:
Код:
C:\Users\Fabio\Desktop\LSC-RP\gamemodes\ZRP.pwn(14873) : warning 219: local variable "idx" shadows a variable at a preceding level
C:\Users\Fabio\Desktop\LSC-RP\gamemodes\ZRP.pwn(14877) : error 001: expected token: ",", but found "]"
C:\Users\Fabio\Desktop\LSC-RP\gamemodes\ZRP.pwn(14877) : error 029: invalid expression, assumed zero
C:\Users\Fabio\Desktop\LSC-RP\gamemodes\ZRP.pwn(14877) : error 029: invalid expression, assumed zero
C:\Users\Fabio\Desktop\LSC-RP\gamemodes\ZRP.pwn(14877) : fatal error 107: too many error messages on one line
Код:
CMD:duplicateobj(playerid, params[])
{
	new string[128], idx, object;
	if(!IsPlayerLoggedIn(playerid)) return SendClientMessage(playerid, COLOR_GREY, "You need to login first before using any command.");
	if(PlayerInfo[playerid][pMapper] < 1) return SendClientMessage(playerid, COLOR_GREY, "You are not authorized to use this command.");
	if(sscanf(params, "i", idx)) return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /duplicate [objectid]");
    if(!ObjInfo[idx][oModel]) return SendClientMessage(playerid, COLOR_GREY, "Invalid object id.");
	for(new idx=1; idx<MAX_OBJ; idx++)
	{
	    if(!ObjInfo[idx][oModel])
	    {
	        GetDynamicObjectPos(ObjInfo[idx][oObj]], ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ]);
	        GetDynamicObjectRot(ObjInfo[idx][oObj], ObjInfo[idx][oCRX], ObjInfo[idx][oCRY], ObjInfo[idx][oCRZ]);
  			ObjInfo[idx][oModel] = object;
			ObjInfo[idx][oCX] = ObjInfo[idx][oCX];
			ObjInfo[idx][oCY] = ObjInfo[idx][oCY];
			ObjInfo[idx][oCRX] = ObjInfo[idx][oCRX];
			ObjInfo[idx][oCRY] = ObjInfo[idx][oCRY];
			ObjInfo[idx][oCRZ] = ObjInfo[idx][oCRZ];
	        GetDynamicObjectPos(ObjInfo[idx][oObj]], ObjInfo[idx][oOX], ObjInfo[idx][oOY], ObjInfo[idx][oOZ]);
	        GetDynamicObjectRot(ObjInfo[idx][oObj], ObjInfo[idx][oORX], ObjInfo[idx][oORY], ObjInfo[idx][oORZ]);
			ObjInfo[idx][oOX] = ObjInfo[idx][oOX];
			ObjInfo[idx][oOY] = ObjInfo[idx][oOY];
			ObjInfo[idx][oORX] = ObjInfo[idx][oORX];
			ObjInfo[idx][oORY] = ObjInfo[idx][oORY];
			ObjInfo[idx][oORZ] = ObjInfo[idx][oORZ];
			// Creating
			format(string, sizeof(string), "Object ID: %d", idx);
			ObjInfo[idx][oObj] = CreateDynamicObject(ObjInfo[idx][oModel], ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ], ObjInfo[idx][oCRX], ObjInfo[idx][oCRY], ObjInfo[idx][oCRZ]);
			ObjInfo[idx][oText] = CreateDynamic3DTextLabel(string, COLOR_WHITE, ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ], 10);
            format(string, sizeof(string), "MapperWarn: %s duplicated object ID %d", RPN(playerid), idx);
            SendMapperMessage(COLOR_GREEN, 1, string);
			idx = MAX_OBJ;
		}
    }
	return 1;
}
Reply
#2

-Up

- Added the command that i try'd to make.
Reply
#3

pawn Код:
CMD:duplicateobj(playerid, params[])
{
    new string[128], idx, object;
    if(!IsPlayerLoggedIn(playerid)) return SendClientMessage(playerid, COLOR_GREY, "You need to login first before using any command.");
    if(PlayerInfo[playerid][pMapper] < 1) return SendClientMessage(playerid, COLOR_GREY, "You are not authorized to use this command.");
    if(sscanf(params, "i", idx)) return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /duplicate [objectid]");
    if(!ObjInfo[idx][oModel]) return SendClientMessage(playerid, COLOR_GREY, "Invalid object id.");
    for(new idx=1; idx<MAX_OBJ; idx++)
    {
        if(!ObjInfo[idx][oModel])
        {
            GetDynamicObjectPos(ObjInfo[idx][oObj], ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ]);
            GetDynamicObjectRot(ObjInfo[idx][oObj], ObjInfo[idx][oCRX], ObjInfo[idx][oCRY], ObjInfo[idx][oCRZ]);
            ObjInfo[idx][oModel] = object;
            ObjInfo[idx][oCX] = ObjInfo[idx][oCX];
            ObjInfo[idx][oCY] = ObjInfo[idx][oCY];
            ObjInfo[idx][oCRX] = ObjInfo[idx][oCRX];
            ObjInfo[idx][oCRY] = ObjInfo[idx][oCRY];
            ObjInfo[idx][oCRZ] = ObjInfo[idx][oCRZ];
            GetDynamicObjectPos(ObjInfo[idx][oObj]], ObjInfo[idx][oOX], ObjInfo[idx][oOY], ObjInfo[idx][oOZ]);
            GetDynamicObjectRot(ObjInfo[idx][oObj], ObjInfo[idx][oORX], ObjInfo[idx][oORY], ObjInfo[idx][oORZ]);
            ObjInfo[idx][oOX] = ObjInfo[idx][oOX];
            ObjInfo[idx][oOY] = ObjInfo[idx][oOY];
            ObjInfo[idx][oORX] = ObjInfo[idx][oORX];
            ObjInfo[idx][oORY] = ObjInfo[idx][oORY];
            ObjInfo[idx][oORZ] = ObjInfo[idx][oORZ];
            // Creating
            format(string, sizeof(string), "Object ID: %d", idx);
            ObjInfo[idx][oObj] = CreateDynamicObject(ObjInfo[idx][oModel], ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ], ObjInfo[idx][oCRX], ObjInfo[idx][oCRY], ObjInfo[idx][oCRZ]);
            ObjInfo[idx][oText] = CreateDynamic3DTextLabel(string, COLOR_WHITE, ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ], 10);
            format(string, sizeof(string), "MapperWarn: %s duplicated object ID %d", RPN(playerid), idx);
            SendMapperMessage(COLOR_GREEN, 1, string);
            idx = MAX_OBJ;
        }
    }
    return 1;
}
Reply
#4

I'm still getting these errors.

Код:
(15352) : warning 219: local variable "idx" shadows a variable at a preceding level
(15364) : error 001: expected token: ",", but found "]"
(15364) : error 029: invalid expression, assumed zero
(15364) : error 029: invalid expression, assumed zero
(15364) : fatal error 107: too many error messages on one line
Reply
#5

bump?
Reply
#6

Stop the freaking double posting and bumping every few hours, its really annoying and you're breaking the rules.

Quote:

(15352) : warning 219: local variable "idx" shadows a variable at a preceding level

You already have a variable named idx, change it to idx2 for example and it'll work. And you'll make it easier for everyone if you also tell us which one of the lines is the line that's causing all those warnings and errors.
Reply
#7

Quote:
Originally Posted by Max_Coldheart
Посмотреть сообщение
Stop the freaking double posting and bumping every few hours, its really annoying and you're breaking the rules.


You already have a variable named idx, change it to idx2 for example and it'll work. And you'll make it easier for everyone if you also tell us which one of the lines is the line that's causing all those warnings and errors.
Sorry, I diddnt know'd double post's arent allowed.

Anyways.
the command is still showing errors.
Код:
(15352) : warning 219: local variable "idx" shadows a variable at a preceding level
but, when i test it ingame. It isnt duplicating the object.

this is what i have now.

Код:
CMD:duplicateobj(playerid, params[])
{
    new string[128], idx, object;
    if(!IsPlayerLoggedIn(playerid)) return SendClientMessage(playerid, COLOR_GREY, "You need to login first before using any command.");
    if(PlayerInfo[playerid][pMapper] < 1) return SendClientMessage(playerid, COLOR_GREY, "You are not authorized to use this command.");
    if(sscanf(params, "i", idx)) return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /duplicate [objectid]");
    if(!ObjInfo[idx][oModel]) return SendClientMessage(playerid, COLOR_GREY, "Invalid object id.");
    for(new idx=1; idx<MAX_OBJ; idx++)
    {
        if(!ObjInfo[idx][oModel])
        {
            GetDynamicObjectPos(ObjInfo[idx][oObj], ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ]);
            GetDynamicObjectRot(ObjInfo[idx][oObj], ObjInfo[idx][oCRX], ObjInfo[idx][oCRY], ObjInfo[idx][oCRZ]);
            ObjInfo[idx][oModel] = object;
            ObjInfo[idx][oCX] = ObjInfo[idx][oCX];
            ObjInfo[idx][oCY] = ObjInfo[idx][oCY];
            ObjInfo[idx][oCRX] = ObjInfo[idx][oCRX];
            ObjInfo[idx][oCRY] = ObjInfo[idx][oCRY];
            ObjInfo[idx][oCRZ] = ObjInfo[idx][oCRZ];
            GetDynamicObjectPos(ObjInfo[idx][oObj], ObjInfo[idx][oOX], ObjInfo[idx][oOY], ObjInfo[idx][oOZ]);
            GetDynamicObjectRot(ObjInfo[idx][oObj], ObjInfo[idx][oORX], ObjInfo[idx][oORY], ObjInfo[idx][oORZ]);
            ObjInfo[idx][oOX] = ObjInfo[idx][oOX];
            ObjInfo[idx][oOY] = ObjInfo[idx][oOY];
            ObjInfo[idx][oORX] = ObjInfo[idx][oORX];
            ObjInfo[idx][oORY] = ObjInfo[idx][oORY];
            ObjInfo[idx][oORZ] = ObjInfo[idx][oORZ];
            // Creating
            format(string, sizeof(string), "Object ID: %d", idx);
            ObjInfo[idx][oObj] = CreateDynamicObject(ObjInfo[idx][oModel], ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ], ObjInfo[idx][oCRX], ObjInfo[idx][oCRY], ObjInfo[idx][oCRZ]);
            ObjInfo[idx][oText] = CreateDynamic3DTextLabel(string, COLOR_WHITE, ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ], 10);
            format(string, sizeof(string), "MapperWarn: %s duplicated object ID %d", RPN(playerid), idx);
            SendMapperMessage(COLOR_GREEN, 1, string);
            idx = MAX_OBJ;
        }
    }
    return 1;
}
Reply
#8

That piece of code is 30 lines long, and we need to find the one specific line? Please show us the error line if you want some help.
Reply
#9

Quote:
Originally Posted by faff
Посмотреть сообщение
Sorry, I diddnt know'd double post's arent allowed.

Anyways.
the command is still showing errors.
Код:
(15352) : warning 219: local variable "idx" shadows a variable at a preceding level
but, when i test it ingame. It isnt duplicating the object.

this is what i have now.

Код:
CMD:duplicateobj(playerid, params[])
{
    new string[128], idx, object;
    if(!IsPlayerLoggedIn(playerid)) return SendClientMessage(playerid, COLOR_GREY, "You need to login first before using any command.");
    if(PlayerInfo[playerid][pMapper] < 1) return SendClientMessage(playerid, COLOR_GREY, "You are not authorized to use this command.");
    if(sscanf(params, "i", idx)) return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /duplicate [objectid]");
    if(!ObjInfo[idx][oModel]) return SendClientMessage(playerid, COLOR_GREY, "Invalid object id.");
    for(new idx=1; idx<MAX_OBJ; idx++)
    {
        if(!ObjInfo[idx][oModel])
        {
            GetDynamicObjectPos(ObjInfo[idx][oObj], ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ]);
            GetDynamicObjectRot(ObjInfo[idx][oObj], ObjInfo[idx][oCRX], ObjInfo[idx][oCRY], ObjInfo[idx][oCRZ]);
            ObjInfo[idx][oModel] = object;
            ObjInfo[idx][oCX] = ObjInfo[idx][oCX];
            ObjInfo[idx][oCY] = ObjInfo[idx][oCY];
            ObjInfo[idx][oCRX] = ObjInfo[idx][oCRX];
            ObjInfo[idx][oCRY] = ObjInfo[idx][oCRY];
            ObjInfo[idx][oCRZ] = ObjInfo[idx][oCRZ];
            GetDynamicObjectPos(ObjInfo[idx][oObj], ObjInfo[idx][oOX], ObjInfo[idx][oOY], ObjInfo[idx][oOZ]);
            GetDynamicObjectRot(ObjInfo[idx][oObj], ObjInfo[idx][oORX], ObjInfo[idx][oORY], ObjInfo[idx][oORZ]);
            ObjInfo[idx][oOX] = ObjInfo[idx][oOX];
            ObjInfo[idx][oOY] = ObjInfo[idx][oOY];
            ObjInfo[idx][oORX] = ObjInfo[idx][oORX];
            ObjInfo[idx][oORY] = ObjInfo[idx][oORY];
            ObjInfo[idx][oORZ] = ObjInfo[idx][oORZ];
            // Creating
            format(string, sizeof(string), "Object ID: %d", idx);
            ObjInfo[idx][oObj] = CreateDynamicObject(ObjInfo[idx][oModel], ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ], ObjInfo[idx][oCRX], ObjInfo[idx][oCRY], ObjInfo[idx][oCRZ]);
            ObjInfo[idx][oText] = CreateDynamic3DTextLabel(string, COLOR_WHITE, ObjInfo[idx][oCX], ObjInfo[idx][oCY], ObjInfo[idx][oCZ], 10);
            format(string, sizeof(string), "MapperWarn: %s duplicated object ID %d", RPN(playerid), idx);
            SendMapperMessage(COLOR_GREEN, 1, string);
            idx = MAX_OBJ;
        }
    }
    return 1;
}
Then what the hell does that mean? Your posts make no sense.
Reply
#10

Quote:
Originally Posted by Max_Coldheart
Посмотреть сообщение
Then what the hell does that mean? Your posts make no sense.
The command isnt showing errors after compiling.
But once i type /duplicateobj ingame.
Isnt it working.
It isnt duplicating the created object.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)