diff --git a/src/game/Map.cpp b/src/game/Map.cpp index b2d000aa4..83a367cfd 100644 --- a/src/game/Map.cpp +++ b/src/game/Map.cpp @@ -722,6 +722,11 @@ void Map::Update(const uint32 &t_diff) void Map::Remove(Player *player, bool remove) { + if(remove) + player->CleanupsBeforeDelete(); + else + player->RemoveFromWorld(); + // this may be called during Map::Update // after decrement+unlink, ++m_mapRefIter will continue correctly // when the first element of the list is being removed @@ -733,11 +738,6 @@ void Map::Remove(Player *player, bool remove) CellPair p = MaNGOS::ComputeCellPair(player->GetPositionX(), player->GetPositionY()); if(p.x_coord >= TOTAL_NUMBER_OF_CELLS_PER_MAP || p.y_coord >= TOTAL_NUMBER_OF_CELLS_PER_MAP) { - if(remove) - player->CleanupsBeforeDelete(); - else - player->RemoveFromWorld(); - // invalid coordinates player->ResetMap(); @@ -759,11 +759,6 @@ void Map::Remove(Player *player, bool remove) NGridType *grid = getNGrid(cell.GridX(), cell.GridY()); assert(grid != NULL); - if(remove) - player->CleanupsBeforeDelete(); - else - player->RemoveFromWorld(); - RemoveFromGrid(player,grid,cell); SendRemoveTransports(player); diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 823ec5100..6ddfca8ce 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 "8738" + #define REVISION_NR "8739" #endif // __REVISION_NR_H__