void MessageDistDeliverer::Visit(CameraMapType &m) { for(CameraMapType::iterator iter=m.begin(); iter != m.end(); ++iter) { Player * owner = iter->getSource()->GetOwner(); if ((i_toSelf || owner != &i_player) && (!i_ownTeamOnly || owner->GetTeam() == i_player.GetTeam()) && (!i_dist || iter->getSource()->GetBody()->IsWithinDist(&i_player,i_dist))) { if (WorldSession* session = owner->GetSession()) session->SendPacket(i_message); } } }
void MessageDeliverer::Visit(CameraMapType& m) { for (CameraMapType::iterator iter = m.begin(); iter != m.end(); ++iter) { Player* owner = iter->getSource()->GetOwner(); if (i_toSelf || owner != &i_player) { if (!i_player.InSamePhase(iter->getSource()->GetBody())) continue; if (WorldSession* session = owner->GetSession()) session->SendPacket(i_message); } } }
void VisibleChangesNotifier::Visit(CameraMapType& m) { for (CameraMapType::iterator iter = m.begin(); iter != m.end(); ++iter) iter->getSource()->UpdateVisibilityOf(&_object); }