aboutsummaryrefslogtreecommitdiff
path: root/src/game/Transports.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/Transports.cpp')
-rw-r--r--src/game/Transports.cpp14
1 files changed, 2 insertions, 12 deletions
diff --git a/src/game/Transports.cpp b/src/game/Transports.cpp
index c8f89b337bc..1d412863c67 100644
--- a/src/game/Transports.cpp
+++ b/src/game/Transports.cpp
@@ -445,16 +445,9 @@ void Transport::TeleportTransport(uint32 newMapid, float x, float y, float z)
for(PlayerSet::iterator itr = m_passengers.begin(); itr != m_passengers.end();)
{
- PlayerSet::iterator it2 = itr;
+ Player *plr = *itr;
++itr;
- Player *plr = *it2;
- if(!plr)
- {
- m_passengers.erase(it2);
- continue;
- }
-
if (plr->isDead() && !plr->HasFlag(PLAYER_FLAGS, PLAYER_FLAGS_GHOST))
{
plr->ResurrectPlayer(1.0);
@@ -477,11 +470,8 @@ void Transport::TeleportTransport(uint32 newMapid, float x, float y, float z)
bool Transport::AddPassenger(Player* passenger)
{
- if (m_passengers.find(passenger) == m_passengers.end())
- {
+ if(m_passengers.insert(passenger).second)
sLog.outDetail("Player %s boarded transport %s.", passenger->GetName(), GetName());
- m_passengers.insert(passenger);
- }
return true;
}