41 for (
WorldObject* passenger : transport->GetPassengers())
43 if (
vis_guids.erase(passenger->GetGUID()) > 0)
45 switch (passenger->GetTypeId())
53 passenger->ToPlayer()->UpdateVisibilityOf(&
i_player);
76 if (outOfRangeGuid.IsPlayer())
99 iter->GetSource()->UpdateVisibilityOf(
i_objects);
101 for (SharedVisionList::const_iterator i = iter->GetSource()->GetSharedVisionList().begin();
102 i != iter->GetSource()->GetSharedVisionList().end(); ++i)
103 if ((*i)->m_seer == iter->GetSource())
111 for (SharedVisionList::const_iterator i = iter->GetSource()->GetSharedVisionList().begin();
112 i != iter->GetSource()->GetSharedVisionList().end(); ++i)
113 if ((*i)->m_seer == iter->GetSource())
120 if (
Unit* caster = iter->GetSource()->GetCaster())
122 if (player->m_seer == iter->GetSource())
137 && c->
CanSeeOrDetect(u, { .DistanceCheck = true, .AlertCheck = true }))
146 Player* player = iter->GetSource();
180 Player* player = iter->GetSource();
226 Player* player = iter->GetSource();
266 Player* player = iter->GetSource();
286 if (iter->GetSource()->IsInWorld())
void CreatureUnitRelocationWorker(Creature *c, Unit *u)
@ NOTIFY_VISIBILITY_CHANGED
ObjectGuid const & GetGUID() const
CorpseType GetType() const
void TriggerAlert(Unit const *who) const
void MoveInLineOfSight_Safe(Unit *who)
== Reactions At =================================
void SendDirectMessage(WorldPacket const *data) const
GuidUnorderedSet m_clientGUIDs
void UpdateVisibilityOf(WorldObject *target)
void SendInitialVisiblePackets(WorldObject *target) const
WorldObject const *const i_searchObj
bool operator()(Player *u)
bool operator()(Player *u)
bool HasStealthAura() const
bool HasAuraType(AuraType auraType) const
bool HasUnitState(const uint32 f) const
void AddOutOfRangeGUID(ObjectGuid guid)
bool BuildPacket(WorldPacket *packet)
bool isNeedNotify(uint16 f) const
TransportBase * GetTransport() const
bool CanSeeOrDetect(WorldObject const *obj, CanSeeOrDetectExtraArgs const &args={ }) const
bool IsWithinDistInMap(WorldObject const *obj, float dist2compare, bool is3D=true, bool incOwnRadius=true, bool incTargetRadius=true) const
TC_GAME_API Player * GetPlayer(Map const *, ObjectGuid const &guid)
static void VisitAllObjects(WorldObject const *obj, T &visitor, float radius, bool dont_load=true)
void Visit(CellCoord const &, TypeContainerVisitor< T, CONTAINER > &visitor, Map &, WorldObject const &obj, float radius) const
bool IsPositionValid() const
void Visit(GridRefManager< T > &)
void Visit(GridRefManager< T > &)
void Visit(GridRefManager< T > &)
void Visit(GridRefManager< T > &)
void Visit(GridRefManager< T > &m)
void Visit(GridRefManager< T > &m)
IteratorPair< WorldObject ** > i_objects
void Visit(GridRefManager< T > &)
GuidUnorderedSet vis_guids
VisibleNotifier(Player &player)
std::set< WorldObject * > i_visibleNow
bool operator()(WorldObject *target) const