22.07.2015, 11:34
Hey, I'm having problem with OnPlayerEditObject. Problem is What to put in new gobject[Here][obinfo]; Under ObPlayerEditObject so as to format the enums/variable of the objects that was being made..
In the Code Below I have denoted the Spaces Where to Put Id with ?? (two Question marks)
In the Code Below I have denoted the Spaces Where to Put Id with ?? (two Question marks)
PHP код:
enum obinfo
{
oid,
model,
Float:posx,
Float:posy,
Float:posz,
Float:rotx,
Float:roty,
Float:rotz,
};
new gobject[MAX_OBJ][obinfo];
PHP код:
public OnPlayerEditObject(playerid, playerobject, objectid, response, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ)
{
new Float:oldX, Float:oldY, Float:oldZ, Float:oldRotX, Float:oldRotY, Float:oldRotZ,Float:newX, Float:newY, Float:newZ, Float:newRotX, Float:newRotY, Float:newRotZ;
GetDynamicObjectPos(objectid, oldX, oldY, oldZ);
GetDynamicObjectRot(objectid, oldRotX, oldRotY, oldRotZ);
if(!playerobject) // If this is a global object, sync the position for other players
{
if(response == EDIT_RESPONSE_FINAL)
{
GetDynamicObjectPos(objectid, newX, newY, newZ);
GetDynamicObjectRot(objectid, newRotX, newRotY, newRotZ);
gobject[ ?? ][posx]=newX;
gobject[ ?? ][posy]=newY;
gobject[ ?? ][posz]=newZ;
gobject[ ?? ][rotx]=newRotX;
gobject[ ?? ][roty]=newRotY;
gobject[ ?? ][rotz]=newRotZ;
}
if(response == EDIT_RESPONSE_CANCEL)
{
//The player cancelled, so put the object back to it's old position
if(!playerobject) //Object is not a playerobject
{
SetDynamicObjectPos(objectid, oldX, oldY, oldZ);
SetDynamicObjectRot(objectid, oldRotX, oldRotY, oldRotZ);
}
}
}
}