def GetBestBoneTarget(mypos_x, mypos_y, mypos_z, viewanglex, viewangley, entity):
diffs = []
try:
for x in range(4):
entity_bones = pm.read_int(entity + m_dwBoneMatrix)
entitypos_x = pm.read_float(entity_bones + 0x30 * (x + 5) + 0xC)
entitypos_y = pm.read_float(entity_bones + 0x30 * (x + 5) + 0x1C)
entitypos_z = pm.read_float(entity_bones + 0x30 * (x + 5) + 0x2C)
X, Y = calcangle(mypos_x, mypos_y, mypos_z, entitypos_x, entitypos_y, entitypos_z)
distancex, distancey = calc_distance(viewanglex, viewangley, X, Y)
diffs.append(distancex + distancey)
if diffs:
return int(numpy.argmin(diffs)) + 5
except:
pass