diff options
author | megamage <none@none> | 2009-03-08 12:50:06 -0600 |
---|---|---|
committer | megamage <none@none> | 2009-03-08 12:50:06 -0600 |
commit | 052caf335a76d9740c981566e46840e9f7b3f445 (patch) | |
tree | dd5fa6820d1e93b23dfee4184adc2d5ec83f0962 /src | |
parent | 7fbdc14b98745e933263a33b5fad581fefb79e51 (diff) |
*Fix a bug about visibility update.
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/game/GridNotifiersImpl.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/game/GridNotifiersImpl.h b/src/game/GridNotifiersImpl.h index 1f641ce9226..7131b6281f4 100644 --- a/src/game/GridNotifiersImpl.h +++ b/src/game/GridNotifiersImpl.h @@ -82,12 +82,12 @@ Trinity::PlayerRelocationNotifier::Visit(PlayerMapType &m) { 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 continue; i_player.UpdateVisibilityOf(iter->getSource(),i_data,i_data_updates,i_visibleNow); - i_clientGUIDs.erase(iter->getSource()->GetGUID()); - iter->getSource()->UpdateVisibilityOf(&i_player); //if (!i_player.GetSharedVisionList().empty()) @@ -107,11 +107,12 @@ Trinity::PlayerRelocationNotifier::Visit(CreatureMapType &m) { for(CreatureMapType::iterator iter = m.begin(); iter != m.end(); ++iter) { + i_clientGUIDs.erase(iter->getSource()->GetGUID()); + if(iter->getSource()->m_Notified) continue; i_player.UpdateVisibilityOf(iter->getSource(),i_data,i_data_updates,i_visibleNow); - i_clientGUIDs.erase(iter->getSource()->GetGUID()); PlayerCreatureRelocationWorker(&i_player, iter->getSource()); } |