summaryrefslogtreecommitdiffstats
path: root/src/peds/PedIK.cpp
diff options
context:
space:
mode:
authorSergeanur <s.anureev@yandex.ua>2021-08-25 08:07:41 +0200
committerSergeanur <s.anureev@yandex.ua>2021-08-25 08:07:41 +0200
commit800ab9296056ceeb384985cb223566c981813919 (patch)
tree53e8190b7bb84a7b960abcec3044ce7cc2d73fbf /src/peds/PedIK.cpp
parentmodelinfo bits (diff)
parentAudio: refactoring, type fixes, renaming cAudioManager fields (diff)
downloadre3-800ab9296056ceeb384985cb223566c981813919.tar
re3-800ab9296056ceeb384985cb223566c981813919.tar.gz
re3-800ab9296056ceeb384985cb223566c981813919.tar.bz2
re3-800ab9296056ceeb384985cb223566c981813919.tar.lz
re3-800ab9296056ceeb384985cb223566c981813919.tar.xz
re3-800ab9296056ceeb384985cb223566c981813919.tar.zst
re3-800ab9296056ceeb384985cb223566c981813919.zip
Diffstat (limited to 'src/peds/PedIK.cpp')
-rw-r--r--src/peds/PedIK.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/peds/PedIK.cpp b/src/peds/PedIK.cpp
index 3bc5796b..ea3cf1aa 100644
--- a/src/peds/PedIK.cpp
+++ b/src/peds/PedIK.cpp
@@ -205,6 +205,8 @@ CPedIK::PointGunInDirection(float targetYaw, float targetPitch)
else if (status == ANGLES_SET_EXACTLY)
m_flags |= GUN_POINTED_SUCCESSFULLY;
}
+
+ // Game uses index 2 directly, which happens to be identical to BONE_spine
#ifdef FIX_BUGS
RwMatrix *m = GetBoneMatrix(m_ped, BONE_spine);
#else
@@ -213,7 +215,7 @@ CPedIK::PointGunInDirection(float targetYaw, float targetPitch)
RwMatrix *m = &mats[2];
#endif
RwV3d axis = { 0.0f, 0.0f, 0.0f };
- float axisangle = -CGeneral::LimitRadianAngle(Atan2(-m->up.y, -m->up.x) - m_ped->m_fRotationCur);
+ float axisangle = -CGeneral::LimitRadianAngle(Atan2(-m->at.y, -m->at.x) - m_ped->m_fRotationCur);
axis.y = -Sin(axisangle);
axis.z = Cos(axisangle);