void VisibleChangesNotifier::Visit(CameraMapType& m) { for (CameraMapType::iterator iter = m.begin(); iter != m.end(); ++iter) { iter->getSource()->UpdateVisibilityOf(&i_object); } }
void MovementOpcodeDeliverer::Visit(CameraMapType& m) { for (auto iter = m.begin(); iter != m.end(); ++iter) { Camera* pCamera = iter->getSource(); if (!pCamera) continue; Player* owner = pCamera->GetOwner(); if (owner == i_skipped_receiver) continue; if (WorldSession* session = owner->GetSession()) { WorldPacket data(i_received_movement->GetOpcode(), uint16(i_received_movement->size() + 2)); data << i_mover_guid; // write guid i_movement_info.Write(data); // write data session->SendPacket(&data); } } }
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 (!i_player.InSamePhase(iter->getSource()->GetBody())) continue; if (WorldSession* session = owner->GetSession()) { if (session->IsPremiumActive() && i_message->GetOpcode() == SMSG_MESSAGECHAT && (i_message->contents()[0] == CHAT_MSG_SAY || i_message->contents()[0] == CHAT_MSG_YELL || i_message->contents()[0] == CHAT_MSG_EMOTE) && (owner->GetTeam() == ALLIANCE && i_message->contents()[1] == LANG_ORCISH || owner->GetTeam() == HORDE && i_message->contents()[1] == LANG_COMMON)) { WorldPacket data(*i_message); data.put<uint8>(1, uint8(LANG_UNIVERSAL)); session->SendPacket(&data); } else session->SendPacket(i_message); } } } }
void ObjectMessageDeliverer::Visit(CameraMapType& m) { for (CameraMapType::iterator iter = m.begin(); iter != m.end(); ++iter) { if (WorldSession* session = iter->getSource()->GetOwner()->GetSession()) session->SendPacket(i_message); } }
void PacketBroadcaster::Visit(CameraMapType& m) { for (CameraMapType::iterator iter = m.begin(); iter != m.end(); ++iter) { if (_dist && !_source.IsWithinDist(iter->getSource()->GetBody(), _dist)) continue; BroadcastPacketTo(iter->getSource()->GetOwner()); } }
void ObjectMessageDistDeliverer::Visit(CameraMapType& m) { for (CameraMapType::iterator iter = m.begin(); iter != m.end(); ++iter) { if (!i_dist || iter->getSource()->GetBody()->IsWithinDist(&i_object, i_dist)) { if (WorldSession* session = iter->getSource()->GetOwner()->GetSession()) session->SendPacket(i_message); } } }
void MessageDelivererExcept::Visit(CameraMapType &m) { for(CameraMapType::iterator it = m.begin(); it!= m.end(); ++it) { Player* player = it->getSource()->getOwner(); if(!player->InSamePhase(i_phaseMask) || player == i_skipped_receiver) continue; if (WorldSession* session = player->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 (WorldSession* session = owner->GetSession()) session->SendPacket(i_message); } } }
void MessageDelivererExcept::Visit(CameraMapType& m) { for (CameraMapType::iterator iter = m.begin(); iter != m.end(); ++iter) { Player* owner = iter->getSource()->GetOwner(); if (owner == i_skipped_receiver) continue; if (WorldSession* session = owner->GetSession()) session->SendPacket(i_message); } }
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) { if (i_toSelf || iter->getSource()->getOwner() != &i_player) { if (!i_player.InSamePhase(iter->getSource()->getBody())) continue; if(WorldSession* session = iter->getSource()->getOwner()->GetSession()) session->SendPacket(i_message); } } }