diff options
-rwxr-xr-x | src/server/game/Entities/Object/Object.cpp | 3 | ||||
-rwxr-xr-x | src/server/game/Entities/Player/Player.cpp | 7 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 2bee996eab0..3cd02d05a90 100755 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -1672,6 +1672,9 @@ bool WorldObject::canSeeOrDetect(WorldObject const* obj, bool ignoreStealth, boo if (Player const* player = this->ToPlayer()) viewpoint = player->GetViewpoint(); + if (!viewpoint) + viewpoint = this; + if (!corpseCheck && !viewpoint->IsWithinDist(obj, GetSightRange(obj), false)) return false; } diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 74f475aab17..10ec8500923 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -22973,11 +22973,8 @@ void Player::SetViewpoint(WorldObject* target, bool apply) WorldObject* Player::GetViewpoint() const { if (uint64 guid = GetUInt64Value(PLAYER_FARSIGHT)) - { - WorldObject* viewpoint = (WorldObject*) ObjectAccessor::GetObjectByTypeMask(*this, guid, TYPEMASK_SEER); - return viewpoint ? viewpoint : (WorldObject*) this; // always expected not NULL - } - return (WorldObject*) this; + return (WorldObject*)ObjectAccessor::GetObjectByTypeMask(*this, guid, TYPEMASK_SEER); + return NULL; } bool Player::CanUseBattlegroundObject() |