aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/MovementHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Handlers/MovementHandler.cpp')
-rw-r--r--src/server/game/Handlers/MovementHandler.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/server/game/Handlers/MovementHandler.cpp b/src/server/game/Handlers/MovementHandler.cpp
index fd845efff3a..cd5a26272eb 100644
--- a/src/server/game/Handlers/MovementHandler.cpp
+++ b/src/server/game/Handlers/MovementHandler.cpp
@@ -84,8 +84,11 @@ void WorldSession::HandleMoveWorldportAckOpcode()
GetPlayer()->TeleportTo(GetPlayer()->m_homebindMapId, GetPlayer()->m_homebindX, GetPlayer()->m_homebindY, GetPlayer()->m_homebindZ, GetPlayer()->GetOrientation());
return;
}
- else
- GetPlayer()->Relocate(&loc);
+
+ float z = loc.GetPositionZ();
+ if (GetPlayer()->HasUnitMovementFlag(MOVEMENTFLAG_HOVER))
+ z += GetPlayer()->GetFloatValue(UNIT_FIELD_HOVERHEIGHT);
+ GetPlayer()->Relocate(loc.GetPositionX(), loc.GetPositionY(), z, loc.GetOrientation());
GetPlayer()->ResetMap();
GetPlayer()->SetMap(newMap);