From d2c30bd9f08aca991699f727db947cc8de95b63e Mon Sep 17 00:00:00 2001 From: megamage Date: Fri, 5 Jun 2009 22:42:46 -0500 Subject: *Add some debug info to find crash bug caused by player Notify() --HG-- branch : trunk --- src/game/GridNotifiers.cpp | 10 ++++++++++ src/game/Map.cpp | 3 +++ 2 files changed, 13 insertions(+) (limited to 'src') 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 -- cgit v1.2.3