[11206] Move visibility self/around to new function and use it.

* Fixed wrong visibility changes in some cases at .mod phase uses.
* Apply phase change to any owned units (not only pets as before).
  It also will applied in more safe way for avoid unexpected lost owner at update.
* Check view point setting auras targets accessability not only at visibility change
  but also at phase change.
* Replace SetVisibility(GetVisibility()) hack like calls.
This commit is contained in:
VladimirMangos 2011-02-27 19:16:31 +03:00
parent bef47ce126
commit f1899e3b27
6 changed files with 64 additions and 50 deletions

View file

@ -551,6 +551,7 @@ class MANGOS_DLL_SPEC WorldObject : public Object
void AddObjectToRemoveList();
void UpdateObjectVisibility();
virtual void UpdateVisibilityAndView(); // update visibility for object and object for all around
// main visibility check function in normal case (ignore grey zone distance check)
bool isVisibleFor(Player const* u, WorldObject const* viewPoint) const { return isVisibleForInState(u,viewPoint,false); }