From 2e7d1d1ffcd61974533faeac409b87aa9877c9e7 Mon Sep 17 00:00:00 2001 From: megamage Date: Sun, 7 Jun 2009 17:38:08 -0500 Subject: *Do not allow two side emote. --HG-- branch : trunk --- src/game/GridNotifiers.cpp | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'src/game/GridNotifiers.cpp') diff --git a/src/game/GridNotifiers.cpp b/src/game/GridNotifiers.cpp index facfc203758..afbe2b898af 100644 --- a/src/game/GridNotifiers.cpp +++ b/src/game/GridNotifiers.cpp @@ -119,22 +119,24 @@ MessageDistDeliverer::Visit(PlayerMapType &m) { for (PlayerMapType::iterator iter = m.begin(); iter != m.end(); ++iter) { - if(!iter->getSource()->InSamePhase(i_phaseMask)) + Player *target = iter->getSource(); + if(!target->InSamePhase(i_phaseMask)) continue; - if(iter->getSource()->GetDistanceSq(&i_source) > i_distSq) + if(target->GetDistanceSq(i_source) > i_distSq) continue; // Send packet to all who are sharing the player's vision - if (!iter->getSource()->GetSharedVisionList().empty()) + if (!target->GetSharedVisionList().empty()) { - SharedVisionList::const_iterator i = iter->getSource()->GetSharedVisionList().begin(); - for ( ; i != iter->getSource()->GetSharedVisionList().end(); ++i) - if((*i)->m_seer == iter->getSource()) + SharedVisionList::const_iterator i = target->GetSharedVisionList().begin(); + for ( ; i != target->GetSharedVisionList().end(); ++i) + if((*i)->m_seer == target) SendPacket(*i); } - SendPacket(iter->getSource()); + if(target->m_seer == target) + SendPacket(target); } } @@ -146,7 +148,7 @@ MessageDistDeliverer::Visit(CreatureMapType &m) if(!iter->getSource()->InSamePhase(i_phaseMask)) continue; - if(iter->getSource()->GetDistanceSq(&i_source) > i_distSq) + if(iter->getSource()->GetDistanceSq(i_source) > i_distSq) continue; // Send packet to all who are sharing the creature's vision @@ -168,7 +170,7 @@ MessageDistDeliverer::Visit(DynamicObjectMapType &m) if(!iter->getSource()->InSamePhase(i_phaseMask)) continue; - if(iter->getSource()->GetDistanceSq(&i_source) > i_distSq) + if(iter->getSource()->GetDistanceSq(i_source) > i_distSq) continue; if (IS_PLAYER_GUID(iter->getSource()->GetCasterGUID())) -- cgit v1.2.3