Sorry, I'm not notice Page 2,3,4
The New virsion Wow Is So Bad to Read. I Don't like it. Now Some of My Codes:
Addr_CurObjectDescriptors = ReadPhysical(Wow_Cr3, Addr_CurObject + 0x1
;
if (Addr_CurObjectDescriptors != NULL)
{
type_now = ReadPhysical_UCHAR(Wow_Cr3, Addr_CurObjectDescriptors + 0x10);
}
if(type_now == 7)
{
MyMdlPlayerInfo.Name1 = NULL;
MyMdlPlayerInfo.Name2 = NULL;
MyMdlPlayerInfo.Name3 = NULL;
MyMdlPlayerInfo.Guid_Low = ReadPhysical(Wow_Cr3, Addr_CurObject + 0x
;
MyMdlPlayerInfo.Guid_High = ReadPhysical(Wow_Cr3, Addr_CurObject + 0x10);
MyMdlPlayerInfo.Hp_Now = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD4E
; //0xD3C8
MyMdlPlayerInfo.Mp_Now = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD7B
;
MyMdlPlayerInfo.Hp_Max = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD4F0);
MyMdlPlayerInfo.Mp_Max = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD7E
;
MyMdlPlayerInfo.PlayerSpeed = ReadPhysical_flaot(Wow_Cr3, Addr_CurObjectDescriptors + 0x1CC);
MyMdlPlayerInfo.targetGuid_Low = ReadPhysical(Wow_Cr3, Addr_CurObjectDescriptors + 0xD5A
;
MyMdlPlayerInfo.targetGuid_High = ReadPhysical(Wow_Cr3, Addr_CurObjectDescriptors + 0xD5A8 + 0x
;
MyMdlPlayerInfo.CombatFlag = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD610);
MyMdlPlayerInfo.PlayerLevel = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD5E
;
MyMdlPlayerInfo.PlayerMoney = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xE390);
MyMdlPlayerInfo.pos_x = ReadPhysical_float(Wow_Cr3, Addr_CurObjectDescriptors + 0x14
;
MyMdlPlayerInfo.pos_y = ReadPhysical_float(Wow_Cr3, Addr_CurObjectDescriptors + 0x14C);
MyMdlPlayerInfo.pos_z = ReadPhysical_float(Wow_Cr3, Addr_CurObjectDescriptors + 0x150);
MyMdlPlayerInfo.xyRotation = ReadPhysical_float(Wow_Cr3, Addr_CurObjectDescriptors + 0x15
;
MyMdlPlayerInfo.zRotation = ReadPhysical_float(Wow_Cr3, Addr_CurObjectDescriptors + 0x15C);
MyMdlPlayerInfo.SpellID = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0x560);
Addr_UnitName1 = ReadPhysical(Wow_Cr3, Addr_CurObject + 0x14
;
if (Addr_UnitName1 != NULL)
{
Addr_UnitName2 = ReadPhysical(Wow_Cr3, Addr_UnitName1 + 0xE0);
if (Addr_UnitName2 != NULL)
{
MyMdlPlayerInfo.Name1 = ReadPhysical(Wow_Cr3, Addr_UnitName2);
MyMdlPlayerInfo.Name2 = ReadPhysical(Wow_Cr3, Addr_UnitName2 + 0x0
;
MyMdlPlayerInfo.Name3 = ReadPhysical(Wow_Cr3, Addr_UnitName2 + 0x10);
}
}
Addr_PlayerBUFFs = Addr_CurObjectDescriptors + 0xB6D0;
for (int a = 0; a < 20; a++)
{
MyMdlPlayerInfo.BUFF[a] = ReadPhysical_int(Wow_Cr3, Addr_PlayerBUFFs + 0x08 * a);
}
}
else if (type_now == 5)
{
MyMdlMonsterInfo[MonsterNumber].Name1 = NULL;
MyMdlMonsterInfo[MonsterNumber].Name2 = NULL;
MyMdlMonsterInfo[MonsterNumber].Name3 = NULL;
MyMdlMonsterInfo[MonsterNumber].Guid_Low = ReadPhysical(Wow_Cr3, Addr_CurObject + 0x
;
MyMdlMonsterInfo[MonsterNumber].Guid_High = ReadPhysical(Wow_Cr3, Addr_CurObject + 0x10);
MyMdlMonsterInfo[MonsterNumber].Hp_Now = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD4E
; //0xD3C8
MyMdlMonsterInfo[MonsterNumber].Mp_Now = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD7B
;
MyMdlMonsterInfo[MonsterNumber].Hp_Max = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD4F0);
MyMdlMonsterInfo[MonsterNumber].Mp_Max = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD7E
;
MyMdlMonsterInfo[MonsterNumber].CombatFlag1 = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD610);
MyMdlMonsterInfo[MonsterNumber].CombatFlag2 = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD614);
MyMdlMonsterInfo[MonsterNumber].CombatFlag3 = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0xD61
;
MyMdlMonsterInfo[MonsterNumber].pos_x = ReadPhysical_float(Wow_Cr3, Addr_CurObjectDescriptors + 0x14
;
MyMdlMonsterInfo[MonsterNumber].pos_y = ReadPhysical_float(Wow_Cr3, Addr_CurObjectDescriptors + 0x14C);
MyMdlMonsterInfo[MonsterNumber].pos_z = ReadPhysical_float(Wow_Cr3, Addr_CurObjectDescriptors + 0x150);
MyMdlMonsterInfo[MonsterNumber].SpellID = ReadPhysical_int(Wow_Cr3, Addr_CurObjectDescriptors + 0x560);
Addr_UnitName1 = ReadPhysical(Wow_Cr3, Addr_CurObject + 0x14
;
if (Addr_UnitName1 != NULL)
{
Addr_UnitName2 = ReadPhysical(Wow_Cr3, Addr_UnitName1 + 0xE0);
if (Addr_UnitName2 != NULL)
{
MyMdlMonsterInfo[MonsterNumber].Name1 = ReadPhysical(Wow_Cr3, Addr_UnitName2);
MyMdlMonsterInfo[MonsterNumber].Name2 = ReadPhysical(Wow_Cr3, Addr_UnitName2 + 0x0
;
MyMdlMonsterInfo[MonsterNumber].Name3 = ReadPhysical(Wow_Cr3, Addr_UnitName2 + 0x10);
}
}
Addr_PlayerBUFFs = Addr_CurObjectDescriptors + 0xB6D0;
for (int a = 0; a < 20; a++)
{
MyMdlPlayerInfo.BUFF[a] = ReadPhysical_int(Wow_Cr3, Addr_PlayerBUFFs + 0x08 * a);
}
MonsterNumber = MonsterNumber + 1;
}
}
no item no object no beg,my program can't work ,so many work to do