From fb7613d5cc5a19df01bbcf41ef5c982119ee9685 Mon Sep 17 00:00:00 2001 From: Grimdhex <176165533+Grimdhex@users.noreply.github.com> Date: Wed, 25 Sep 2024 19:19:02 +0200 Subject: [PATCH] few refactor --- src/server/game/Entities/Object/Object.cpp | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 3a56cc8ab5..8232e63615 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -2750,16 +2750,12 @@ Position WorldObject::GetRandomNearPositionWithCollisionCheck(Unit* caster, floa G3D::Vector3 hitResult; - if (GetMap()->GetObjectHitPos(caster->GetPhaseMask(), pos.m_positionX, pos.m_positionY, pos.m_positionZ, + if (caster->GetMap()->GetObjectHitPos(caster->GetPhaseMask(), pos.m_positionX, pos.m_positionY, pos.m_positionZ, endPos.m_positionX, endPos.m_positionY, endPos.m_positionZ, hitResult.x, hitResult.y, hitResult.z, 0.0f)) { - - G3D::Vector3 newPos; - newPos.x = 2 * pos.GetPositionX() - endPos.GetPositionX(); - newPos.y = 2 * pos.GetPositionY() - endPos.GetPositionY(); - newPos.z = 2 * pos.GetPositionZ() - endPos.GetPositionZ(); - pos.Relocate(newPos.x, newPos.y, newPos.z); + pos.Relocate(hitResult.x, hitResult.y, hitResult.z); + pos.RelocatePolarOffset(angle + 180.f, radius); break; } }