And another question:
why, as a result of executing this code, I have the zeros?
(Result in attach file)
Code:
uint objMgr = wow.ReadUInt((int)Offsets.ObjectManager.clientConnection + (uint)BaseAddress);
uint objMgrNext = wow.ReadUInt(objMgr + (int)Offsets.ObjectManager.objectManager);
uint curObject = wow.ReadUInt(objMgrNext + (int)Offsets.ObjectManager.FirstObject);
uint PlayerGUID = wow.ReadUInt(objMgrNext + (uint)Offsets.ObjectManager.LocalGUID);
Console.WriteLine(PlayerGUID);
while (curObject != 0 && (curObject % 2) == 0)
{
uint ObjectType = wow.ReadUInt(curObject + (uint)Offsets.WoWUnitFields.ChannelObject);
uint objGUID = wow.ReadUInt(curObject + (uint)Offsets.WoWObjectFields.Guid);
Console.WriteLine(ObjectType);
switch (ObjectType)
{
case (int)Offsets.WoWObjectType.Unit:
Console.WriteLine("Unit");
break;
case (int)Offsets.WoWObjectType.Item:
Console.WriteLine("Item");
break;
case (int)Offsets.WoWObjectType.Container:
Console.WriteLine("Container");
break;
case (int)Offsets.WoWObjectType.Corpse:
Console.WriteLine("Corpse");
break;
case (int)Offsets.WoWObjectType.GameObject:
Console.WriteLine("GameObject");
break;
case (int)Offsets.WoWObjectType.DynamicObject:
Console.WriteLine("DynamicObject");
break;
case (int)Offsets.WoWObjectType.Player:
Console.WriteLine("Player " + objGUID);
break;
}
if (objGUID == PlayerGUID)
Console.WriteLine("Me detected!");
curObject = wow.ReadUInt(curObject + (int)Offsets.ObjectManager.NextObject);
}
Code:
public enum ObjectManager
{
clientConnection = 0xEC3140,
objectManager = 0x462C,
FirstObject = 0xCC,
NextObject = 0x34,
LocalGUID = 0xE8
};
public enum WoWObjectFields
{
Guid = 0x0
};
public enum WoWUnitFields
{
ChannelObject = 0x68
};