Core/Vmaps: Fix inconsistency of hitInstance and hitModel to cause wrong area ids (#28632)

Closes #28326

Co-authored-by: Gosha <284210+Lordron@users.noreply.github.com>
This commit is contained in:
ModoX
2022-12-30 00:02:40 +01:00
committed by GitHub
parent 659e45ad15
commit 6ce6665992
5 changed files with 17 additions and 4 deletions

View File

@@ -227,7 +227,9 @@ bool GameObjectModel::GetLocationInfo(G3D::Vector3 const& point, VMAP::LocationI
Vector3 pModel = iInvRot * (point - iPos) * iInvScale;
Vector3 zDirModel = iInvRot * Vector3(0.f, 0.f, -1.f);
float zDist;
if (iModel->GetLocationInfo(pModel, zDirModel, zDist, info))
VMAP::GroupLocationInfo groupInfo;
if (iModel->GetLocationInfo(pModel, zDirModel, zDist, groupInfo))
{
Vector3 modelGround = pModel + zDist * zDirModel;
float world_Z = ((modelGround * iInvRot) * iScale + iPos).z;