In This Post i explained a bit about Objects
But the Basics is to loop thru all objects
Code:
localGUID = Memory.ReadUInt64(Main_Window.hproc, (ObjectManager.s_curMgr + 0xC0));
curObj = Memory.ReadUInt(Main_Window.hproc, (ObjectManager.s_curMgr + 0xAC));
nextObj = curObj;
And then after reading w/ the Current Objects Data you do this
Code:
nextObj = Memory.ReadUInt(Main_Window.hproc, (curObj + 0x3C));
if (nextObj == curObj)
{ break; }
else
{ curObj = nextObj; }
So when you combine them together you get this
Code:
localGUID = Memory.ReadUInt64(Main_Window.hproc, (ObjectManager.s_curMgr + 0xC0));
curObj = Memory.ReadUInt(Main_Window.hproc, (ObjectManager.s_curMgr + 0xAC));
nextObj = curObj;
List<Object> _Objects = new List<Object>();
while (curObj != 0 && (curObj & 1) == 0)
{
//READING DATA
UInt64 cGUID = Memory.ReadUInt64(Main_Window.hproc, (curObj + GUIDOFFSET!));
_Objects.Add(tempObject);
nextObj = Memory.ReadUInt(Main_Window.hproc, (curObj + 0x3C));
if (nextObj == curObj)
{ break; }
else
{ curObj = nextObj; }
}
Object[] retValue = new Object[_Objects.Count];
_Objects.CopyTo(retValue);