Vector3 CalcAngles(Vector3 src, Vector3 dst)
{
Vector3 delta, angles;
delta.x = src.x - dst.x;
delta.y = src.y - dst.y;
delta.z = src.z - dst.z;
double hyp = Math.Sqrt(delta.x * delta.x + delta.y + delta.y);
angles.x = (float)(Math.Asin(delta.z / hyp) * (180 / Math.PI) - myPlayer.myPunch.x * 2.0f);
angles.y = (float)(Math.Atan(delta.y / delta.x) * (180 / Math.PI) - myPlayer.myPunch.y * 2.0f);
angles.z = 0;
angles = NormalizeAngle(angles);
if (delta.x >= 0) angles.y += 180.0f;
return NormalizeAngle(angles);
}
localPlayer = fProcess.ReadUInt("client.dll", (int)Offsets.Default.Player);
myLocation.x = fProcess.ReadFloat((int)(localPlayer + (int)Offsets.Default.Origin)) + fProcess.ReadFloat((int)(localPlayer + (int)Offsets.Default.ViewOffset));
myLocation.y = fProcess.ReadFloat((int)(localPlayer + (int)Offsets.Default.Origin + 0x4)) + fProcess.ReadFloat((int)(localPlayer + (int)Offsets.Default.ViewOffset + 0x4));
myLocation.z = fProcess.ReadFloat((int)(localPlayer + (int)Offsets.Default.Origin + 0x8)) + fProcess.ReadFloat((int)(localPlayer + (int)Offsets.Default.ViewOffset + 0x8));
baseEntity = fProcess.ReadUInt("client.dll", (int)(Offsets.Default.EntityList + ((index) * Offsets.Default.EntDist)));
boneAddress = fProcess.ReadUInt((int)(baseEntity + (int)Offsets.Default.BoneMatrix));
enemyLocation.x = fProcess.ReadFloat((int)(boneAddress + 0x30 * 6 + 0xC));
enemyLocation.y = fProcess.ReadFloat((int)(boneAddress + 0x30 * 6 + 0x1C));
enemyLocation.z = fProcess.ReadFloat((int)(boneAddress + 0x30 * 6 + 0x2C));
sqrt(x*x + y+y)
