aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/MovementHandler.cpp
diff options
context:
space:
mode:
authorVincent_Michael <Vincent_Michael@gmx.de>2013-10-19 04:23:45 +0200
committerVincent_Michael <Vincent_Michael@gmx.de>2013-10-19 04:23:45 +0200
commitd0948f572b7bdf38830e15b14640b15df70e6288 (patch)
tree66557058816e8da2d334c45d8d403cfd0b6771c9 /src/server/game/Handlers/MovementHandler.cpp
parent4ce12dc481323c11b4830d06f8080412d855cc64 (diff)
parent5915a220a51ccc118273fb5eccbe73e022530ab7 (diff)
Merge branch 'master' of github.com:TrinityCore/TrinityCore into mmaps_rw
Diffstat (limited to 'src/server/game/Handlers/MovementHandler.cpp')
-rw-r--r--src/server/game/Handlers/MovementHandler.cpp23
1 files changed, 7 insertions, 16 deletions
diff --git a/src/server/game/Handlers/MovementHandler.cpp b/src/server/game/Handlers/MovementHandler.cpp
index 1faa68b6ea4..36d1e1cb1ea 100644
--- a/src/server/game/Handlers/MovementHandler.cpp
+++ b/src/server/game/Handlers/MovementHandler.cpp
@@ -303,30 +303,21 @@ void WorldSession::HandleMovementOpcodes(WorldPacket& recvData)
{
if (!plrMover->GetTransport())
{
- // elevators also cause the client to send MOVEMENTFLAG_ONTRANSPORT - just dismount 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 (Transport* transport = plrMover->GetMap()->GetTransport(movementInfo.transport.guid))
{
- if ((*iter)->GetGUID() == movementInfo.transport.guid)
- {
- plrMover->m_transport = *iter;
- (*iter)->AddPassenger(plrMover);
- break;
- }
+ plrMover->m_transport = transport;
+ transport->AddPassenger(plrMover);
}
}
else if (plrMover->GetTransport()->GetGUID() != movementInfo.transport.guid)
{
bool foundNewTransport = false;
plrMover->m_transport->RemovePassenger(plrMover);
- for (MapManager::TransportSet::const_iterator iter = sMapMgr->m_Transports.begin(); iter != sMapMgr->m_Transports.end(); ++iter)
+ if (Transport* transport = plrMover->GetMap()->GetTransport(movementInfo.transport.guid))
{
- if ((*iter)->GetGUID() == movementInfo.transport.guid)
- {
- foundNewTransport = true;
- plrMover->m_transport = *iter;
- (*iter)->AddPassenger(plrMover);
- break;
- }
+ foundNewTransport = true;
+ plrMover->m_transport = transport;
+ transport->AddPassenger(plrMover);
}
if (!foundNewTransport)