BaseAdress = 0x11180A0
Code:
Unknown1 = 0x0,
TurnScale = 0x4,
Unknown2 = 0x8,
InteractDistance = 0xC,
ActionType = 0x1C,
InteractGuid = 0x20,
MoveX = 0x8C,
MoveY = 0x90,
MoveZ = 0x94
ActionType value :
Code:
FaceTarget = 0x1,
Stop = 0x3,
WalkTo = 0x4,
InteractNpc = 0x5,
Loot = 0x6,
InteractObject = 0x7,
Unknown1 = 0x8,
Unknown2 = 0x9,
AttackPos = 0xA,
AttackGuid = 0xB,
WalkAndRotate = 0xC
MoveTo :
Code:
public static void MoveTo(Vector3D Pos)
{
Process.WowProcess.WriteFloat(AdressCTM + (uint)OffCTM.MoveX, Pos.X);
Process.WowProcess.WriteFloat(AdressCTM + (uint)OffCTM.MoveY, Pos.Y);
Process.WowProcess.WriteFloat(AdressCTM + (uint)OffCTM.MoveZ, Pos.Z);
Process.WowProcess.WriteInt(AdressCTM + (uint)OffCTM.ActionType, (int)ActionType.WalkTo);
}
Interact Guid :
Code:
public static void MoveToAndInteract(WowObject Object)
{
Vector3D Pos = Object.GetVector();
Process.WowProcess.WriteUInt64(AdressCTM + (uint)OffCTM.InteractGuid, Object.Guid);
Process.WowProcess.WriteFloat(AdressCTM + (uint)OffCTM.MoveX, Pos.X);
Process.WowProcess.WriteFloat(AdressCTM + (uint)OffCTM.MoveY, Pos.Y);
Process.WowProcess.WriteFloat(AdressCTM + (uint)OffCTM.MoveZ, Pos.Z);
Process.WowProcess.WriteInt(AdressCTM + (uint)OffCTM.ActionType,
Object.Type == 3 ? ( Object.IsDead ? (int)ActionType.Loot : (int)ActionType.InteractNpc )
: (int)ActionType.InteractObject);
}