From 0d13d5d0c46c27c68e0cd26564a0a7d8fd181ae5 Mon Sep 17 00:00:00 2001 From: SilverIce Date: Sun, 31 Oct 2010 12:15:32 +0200 Subject: [PATCH] [10659] Fixed mistake in [10653] that causes player to fall from the transport at teleporting to another map --- src/game/MovementHandler.cpp | 17 ++++++++++------- src/shared/revision_nr.h | 2 +- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/game/MovementHandler.cpp b/src/game/MovementHandler.cpp index 6cdcf0d8415..1ed1e2c7ce5 100644 --- a/src/game/MovementHandler.cpp +++ b/src/game/MovementHandler.cpp @@ -518,16 +518,19 @@ void WorldSession::HandleMoverRelocation(MovementInfo& movementInfo, Unit* mover if (plMover) { - if (movementInfo.HasMovementFlag(MOVEFLAG_ONTRANSPORT) && !plMover->m_transport) + if (movementInfo.HasMovementFlag(MOVEFLAG_ONTRANSPORT)) { - // elevators also cause the client to send MOVEFLAG_ONTRANSPORT - just unmount if the guid can be found in the transport list - for (MapManager::TransportSet::const_iterator iter = sMapMgr.m_Transports.begin(); iter != sMapMgr.m_Transports.end(); ++iter) + if (!plMover->m_transport) { - if ((*iter)->GetObjectGuid() == movementInfo.GetTransportGuid()) + // elevators also cause the client to send MOVEFLAG_ONTRANSPORT - just unmount if the guid can be found in the transport list + for (MapManager::TransportSet::const_iterator iter = sMapMgr.m_Transports.begin(); iter != sMapMgr.m_Transports.end(); ++iter) { - plMover->m_transport = (*iter); - (*iter)->AddPassenger(plMover); - break; + if ((*iter)->GetObjectGuid() == movementInfo.GetTransportGuid()) + { + plMover->m_transport = (*iter); + (*iter)->AddPassenger(plMover); + break; + } } } } diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 79e3101a0c0..bfc25382710 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "10658" + #define REVISION_NR "10659" #endif // __REVISION_NR_H__