# ObjectNumber

Objects
5.1 OC
int
Returns the object number of an object. This number always uniquely identifies an object, even in subsequent savegame runs. Using Object it can be converted back to an object pointer.
func Activate(caller) { caller->CreateMenu(GetID(), caller, 0, "No chopable objects in the vicinity!"); for(var obj in FindObjects(Find_InRect(-50, -50, 100, 100), Find_OCF(OCF_Chop), Find_NoContainer())) caller->AddMenuItem("Chop down %s", Format("SetCommand(this, \"Chop\", Object(%d))", obj->ObjectNumber()), obj->GetID()); }
This function opens a menu in the calling object which contains all chopable objects (OCF_Chop) in the object's vicinity. Selecting a menu entry then uses SetCommand to set the command "Chop" in the object. Since this requires storage of the object pointer, the pointer is first converted into the object number.
Object
PeterW
2003-02