How Does SerializeObjectPtr() Work?

Forum Home Forum Home > Construct Classic > Construct Classic Discussion > Construct engineering
 Post Reply Post Reply
Author

Moderator
7,067 Rep
Post Options Post Options   Quote linkman2004 Quote  Post ReplyReply Direct Link To This Post Topic: How Does SerializeObjectPtr() Work?
    Posted: 18 Sep 2009 at 3:10am
I'm working on the serialization portion of a plugin I'm working on and I need to serialize some pointers to CRunObjects. I've stumbled across this plugin, but I'm not sure how to use it correctly. My thought at the moment is something along these lines:

[code:31ikoddk]
CRunObject* obj;
CRunObject* tempObj;
...
void ExtObject::Serialize(bin& ar)
{
if (ar.loading)
{
pRuntime->SerializeObjectPtr(tempObj, ar);
obj = tempObj;
}
else
{
pRuntime->SerializeObjectPtr(obj, ar);
}
}
[/code:31ikoddk]
Unfortunately, this doesn't seem to work quite right.

I have an expression that returns the X coordinate of "obj". If I do a quicksave and then a quickload, the returned X coordinate is equal to what it was before the load, but if I move around the object that's being pointed to, the returned X coordinate no longer changes.

Scratch the stuff in italics, the SerializeObjectPtr() function doesn't seem to be returning anything when I call it in the load portion of serialization. My pointers remain NULL.
Back to Top
 Post Reply Post Reply

Forum Jump Forum Permissions View Drop Down