Hi,
i use a dictionary to store the tings i get from enumVisObj. This is my code:
Code:
private static int EnumObjectsCallbackHandler(ulong guid, int filter)
{
if (!RealObjects.ContainsKey(guid))
{
//objectsorting
Main.Log.WriteMessage("ptr: " + tmpobj.ptr + "; ptrfromdict: " + (uint)Objects[guid] + " .ptr method" + Objects[guid].ptr);
}
else if (RealObjects[guid].ptr != objPtr)
{
Main.Log.WriteMessage(Objects[guid].ptr + " objectpointer" + objPtr);
Objects[guid].UpdateObjectPointer(objPtr);
}
Main.Log.WriteMessage("ptrfromdict: " + (IntPtr)Objects[guid] + " .ptr method" + Objects[guid].ptr);
}
that gives me something like that in my log file:
Code:
03:22: Endscene frame:0
03:22: ptr: 612368416; ptrfromdict: 612368416 .ptr method612368416
03:22: ptrfromdict: 612368416 .ptr method612368416
03:22: Endscene frame:1
03:22: 0 objectpointer612368416
03:22: ptrfromdict: 612368416 .ptr method612368416
so inside my elseif statement the .ptr value suddenly gets 0 and i have no idea why that could happen. Can anyone help with this?