diff options
author | Nikolay Korolev <nickvnuk@gmail.com> | 2019-08-03 18:51:19 +0300 |
---|---|---|
committer | Nikolay Korolev <nickvnuk@gmail.com> | 2019-08-03 18:51:19 +0300 |
commit | 537f0dfc16b3b3d00440003cd28d3e87ce6d762a (patch) | |
tree | 85bdd0e893739d3f5db4591e60d86b1ec9cdc030 | |
parent | a3bdaccafbf4e916597fae9df71e3b7052be1647 (diff) |
fixed heading calculation
-rw-r--r-- | src/control/Script.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/control/Script.cpp b/src/control/Script.cpp index 423f36dd..b5f2e7b4 100644 --- a/src/control/Script.cpp +++ b/src/control/Script.cpp @@ -3239,9 +3239,7 @@ int8 CRunningScript::ProcessCommandsFrom300To399(int32 command) { CollectParameters(&m_nIp, 1); CPed* pPed = CWorld::Players[ScriptParams[0]].m_pPed; - float angle = pPed->bInVehicle ? - Atan2(-pPed->m_pMyVehicle->GetForward().x, pPed->m_pMyVehicle->GetForward().y) : - Atan2(-pPed->GetForward().x, pPed->GetForward().y); + float angle = pPed->bInVehicle ? pPed->m_pMyVehicle->GetForward().Heading() : pPed->GetForward().Heading(); *(float*)&ScriptParams[0] = CGeneral::LimitAngle(RADTODEG(angle)); StoreParameters(&m_nIp, 1); return 0; @@ -3263,9 +3261,7 @@ int8 CRunningScript::ProcessCommandsFrom300To399(int32 command) CollectParameters(&m_nIp, 1); CPed* pPed = CPools::GetPedPool()->GetAt(ScriptParams[0]); assert(pPed); - float angle = pPed->bInVehicle ? - Atan2(-pPed->m_pMyVehicle->GetForward().x, pPed->m_pMyVehicle->GetForward().y) : - Atan2(-pPed->GetForward().x, pPed->GetForward().y); + float angle = pPed->bInVehicle ? pPed->m_pMyVehicle->GetForward().Heading() : pPed->GetForward().Heading(); *(float*)&ScriptParams[0] = CGeneral::LimitAngle(RADTODEG(angle)); StoreParameters(&m_nIp, 1); return 0; @@ -3288,7 +3284,7 @@ int8 CRunningScript::ProcessCommandsFrom300To399(int32 command) CollectParameters(&m_nIp, 1); CVehicle* pVehicle = CPools::GetVehiclePool()->GetAt(ScriptParams[0]); assert(pVehicle); - float angle = Atan2(-pVehicle->GetForward().x, pVehicle->GetForward().y); + float angle = pVehicle->GetForward().Heading(); *(float*)&ScriptParams[0] = CGeneral::LimitAngle(RADTODEG(angle)); StoreParameters(&m_nIp, 1); return 0; @@ -3306,7 +3302,7 @@ int8 CRunningScript::ProcessCommandsFrom300To399(int32 command) CollectParameters(&m_nIp, 1); CObject* pObject = CPools::GetObjectPool()->GetAt(ScriptParams[0]); assert(pObject); - float angle = Atan2(-pObject->GetForward().x, pObject->GetForward().y); + float angle = pObject->GetForward().Heading(); *(float*)&ScriptParams[0] = CGeneral::LimitAngle(RADTODEG(angle)); StoreParameters(&m_nIp, 1); return 0; |