*Do not do visibility notification twice for bind sight players. This fixes the bug that bind sight is interrupted when target enters a populated area.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-05-26 15:34:55 -05:00
parent 326940181a
commit ce8b7a6839

View File

@@ -592,7 +592,7 @@ void Map::RelocationNotify()
if(unit->GetTypeId() == TYPEID_PLAYER)
{
Trinity::PlayerRelocationNotifier notifier(*((Player*)unit));
VisitAll(unit->GetPositionX(), unit->GetPositionY(), World::GetMaxVisibleDistance() + dist, notifier);
VisitAll(((Player*)unit)->m_seer->GetPositionX(), ((Player*)unit)->m_seer->GetPositionY(), World::GetMaxVisibleDistance() + dist, notifier);
notifier.Notify();
}
else
@@ -677,12 +677,8 @@ void Map::Update(const uint32 &t_diff)
}
}
if(plr->m_seer != plr && !plr->hasUnitState(UNIT_STAT_ONVEHICLE))
{
Trinity::PlayerVisibilityNotifier notifier(*plr);
VisitAll(plr->m_seer->GetPositionX(), plr->m_seer->GetPositionY(), World::GetMaxVisibleDistance(), notifier);
notifier.Notify();
}
if(plr->m_seer != plr && !plr->m_Vehicle)
AddUnitToNotify(plr);
}
// non-player active objects