*Fix a bug about visibility update.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-03-08 12:50:06 -06:00
parent 7fbdc14b98
commit 052caf335a
+4 -3
View File
@@ -82,12 +82,12 @@ Trinity::PlayerRelocationNotifier::Visit(PlayerMapType &m)
{ {
for(PlayerMapType::iterator iter = m.begin(); iter != m.end(); ++iter) for(PlayerMapType::iterator iter = m.begin(); iter != m.end(); ++iter)
{ {
i_clientGUIDs.erase(iter->getSource()->GetGUID());
if(iter->getSource()->m_Notified) //self is also skipped in this check if(iter->getSource()->m_Notified) //self is also skipped in this check
continue; continue;
i_player.UpdateVisibilityOf(iter->getSource(),i_data,i_data_updates,i_visibleNow); i_player.UpdateVisibilityOf(iter->getSource(),i_data,i_data_updates,i_visibleNow);
i_clientGUIDs.erase(iter->getSource()->GetGUID());
iter->getSource()->UpdateVisibilityOf(&i_player); iter->getSource()->UpdateVisibilityOf(&i_player);
//if (!i_player.GetSharedVisionList().empty()) //if (!i_player.GetSharedVisionList().empty())
@@ -107,11 +107,12 @@ Trinity::PlayerRelocationNotifier::Visit(CreatureMapType &m)
{ {
for(CreatureMapType::iterator iter = m.begin(); iter != m.end(); ++iter) for(CreatureMapType::iterator iter = m.begin(); iter != m.end(); ++iter)
{ {
i_clientGUIDs.erase(iter->getSource()->GetGUID());
if(iter->getSource()->m_Notified) if(iter->getSource()->m_Notified)
continue; continue;
i_player.UpdateVisibilityOf(iter->getSource(),i_data,i_data_updates,i_visibleNow); i_player.UpdateVisibilityOf(iter->getSource(),i_data,i_data_updates,i_visibleNow);
i_clientGUIDs.erase(iter->getSource()->GetGUID());
PlayerCreatureRelocationWorker(&i_player, iter->getSource()); PlayerCreatureRelocationWorker(&i_player, iter->getSource());
} }