diff options
author | megamage <none@none> | 2009-06-05 22:42:46 -0500 |
---|---|---|
committer | megamage <none@none> | 2009-06-05 22:42:46 -0500 |
commit | d2c30bd9f08aca991699f727db947cc8de95b63e (patch) | |
tree | a9d2edef646389d94afd3c1a42948da38a4b58e1 | |
parent | 16d3c8378f779face4f1194f194e41907a9cca63 (diff) |
*Add some debug info to find crash bug caused by player Notify()
--HG--
branch : trunk
-rw-r--r-- | src/game/GridNotifiers.cpp | 10 | ||||
-rw-r--r-- | src/game/Map.cpp | 3 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/game/GridNotifiers.cpp b/src/game/GridNotifiers.cpp index 5158f51d695..2b59a1a9098 100644 --- a/src/game/GridNotifiers.cpp +++ b/src/game/GridNotifiers.cpp @@ -73,6 +73,16 @@ PlayerVisibilityNotifier::Notify() if( i_data.HasData() ) { + uint32 entry = 0, map; + float x,y; + if(!i_visibleNow.empty()) + { + entry = (*i_visibleNow.begin())->GetEntry(); + map = (*i_visibleNow.begin())->GetMapId(); + x = (*i_visibleNow.begin())->GetPositionX(); + y = (*i_visibleNow.begin())->GetPositionY(); + } + // send create/outofrange packet to player (except player create updates that already sent using SendUpdateToPlayer) WorldPacket packet; i_data.BuildPacket(&packet); diff --git a/src/game/Map.cpp b/src/game/Map.cpp index 144dce1edf6..3f5b0ba8e5e 100644 --- a/src/game/Map.cpp +++ b/src/game/Map.cpp @@ -592,7 +592,10 @@ void Map::RelocationNotify() if(unit->GetTypeId() == TYPEID_PLAYER) { Trinity::PlayerRelocationNotifier notifier(*((Player*)unit)); + if(((Player*)unit)->m_seer != unit) VisitAll(((Player*)unit)->m_seer->GetPositionX(), ((Player*)unit)->m_seer->GetPositionY(), World::GetMaxVisibleDistance() + dist, notifier); + else + VisitAll(((Player*)unit)->GetPositionX(), ((Player*)unit)->GetPositionY(), World::GetMaxVisibleDistance() + dist, notifier); notifier.Notify(); } else |