diff options
Diffstat (limited to 'src/server/game/Combat/HostileRefManager.cpp')
-rwxr-xr-x | src/server/game/Combat/HostileRefManager.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/server/game/Combat/HostileRefManager.cpp b/src/server/game/Combat/HostileRefManager.cpp index 029725fa128..6af228c9117 100755 --- a/src/server/game/Combat/HostileRefManager.cpp +++ b/src/server/game/Combat/HostileRefManager.cpp @@ -185,3 +185,18 @@ void HostileRefManager::setOnlineOfflineState(Unit *pCreature, bool bIsOnline) //================================================= +void HostileRefManager::UpdateVisibility() +{ + HostileReference* ref = getFirst(); + while (ref) + { + HostileReference* nextRef = ref->next(); + if (!ref->getSource()->getOwner()->canSeeOrDetect(getOwner())) + { + HostileReference* nextRef = ref->next(); + ref->removeReference(); + delete ref; + } + ref = nextRef; + } +} |