diff options
author | Shauren <shauren.trinity@gmail.com> | 2014-07-20 16:12:23 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2014-07-20 16:12:23 +0200 |
commit | b43a46e449ac019670f1d97d4d62433e90371f5a (patch) | |
tree | 3c27786b3d1d8fe93579429974e8058920c9d93a /src | |
parent | c0eba6a127a950e05af7ad116c95288a4fa66a17 (diff) |
Core/Maps: Fixed crash caused by using invalid coordinates
Closes #12532
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Object/Object.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 61b268b1624..23af4a70d3e 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -2635,7 +2635,6 @@ void WorldObject::MovePositionToFirstCollision(Position &pos, float dist, float float destx, desty, destz; destx = pos.m_positionX + dist * std::cos(angle); desty = pos.m_positionY + dist * std::sin(angle); - destz = NormalizeZforCollision(this, destx, desty, pos.GetPositionZ()); // Prevent invalid coordinates here, position is unchanged if (!Trinity::IsValidMapCoord(destx, desty)) @@ -2644,6 +2643,7 @@ void WorldObject::MovePositionToFirstCollision(Position &pos, float dist, float return; } + destz = NormalizeZforCollision(this, destx, desty, pos.GetPositionZ()); bool col = VMAP::VMapFactory::createOrGetVMapManager()->getObjectHitPos(GetMapId(), pos.m_positionX, pos.m_positionY, pos.m_positionZ + 0.5f, destx, desty, destz + 0.5f, destx, desty, destz, -0.5f); // collision occured |