diff options
author | ModoX <moardox@gmail.com> | 2022-05-30 14:33:11 +0200 |
---|---|---|
committer | ModoX <moardox@gmail.com> | 2022-05-30 14:34:57 +0200 |
commit | cb78ddc63a516af5dd0e00d36e07650f4856dee0 (patch) | |
tree | cfda210484750b0604946b0c3c244ce2ecefd8bc /src | |
parent | 67823c82c7f13f203ebb4a656af5c6f346c0c20b (diff) |
Core/Player: Fixed phasing issues introduced in aa592e431b945800928f2e43b3812cfa240fada1
* now it doesn't appear like we'd have gm on all the time anymore
Ref #27985
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Object/Object.h | 2 | ||||
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/server/game/Entities/Object/Object.h b/src/server/game/Entities/Object/Object.h index acc4f688fe4..46b3f7b8a03 100644 --- a/src/server/game/Entities/Object/Object.h +++ b/src/server/game/Entities/Object/Object.h @@ -744,6 +744,7 @@ class TC_GAME_API WorldObject : public Object, public WorldLocation void SetLocationMapId(uint32 _mapId) { m_mapId = _mapId; } void SetLocationInstanceId(uint32 _instanceId) { m_InstanceId = _instanceId; } + virtual bool CanNeverSee(WorldObject const* obj) const; virtual bool IsNeverVisibleFor(WorldObject const* /*seer*/) const { return !IsInWorld() || IsDestroyedObject(); } virtual bool IsAlwaysVisibleFor(WorldObject const* /*seer*/) const { return false; } virtual bool IsInvisibleDueToDespawn() const { return false; } @@ -765,7 +766,6 @@ class TC_GAME_API WorldObject : public Object, public WorldLocation virtual bool _IsWithinDist(WorldObject const* obj, float dist2compare, bool is3D, bool incOwnRadius = true, bool incTargetRadius = true) const; - virtual bool CanNeverSee(WorldObject const* obj) const; virtual bool CanAlwaysSee(WorldObject const* /*obj*/) const { return false; } bool CanDetect(WorldObject const* obj, bool ignoreStealth, bool checkAlert = false) const; bool CanDetectInvisibilityOf(WorldObject const* obj) const; diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 701a433c7e3..9a291f099f5 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -24104,11 +24104,11 @@ bool Player::IsNeverVisibleFor(WorldObject const* seer) const return false; } -bool Player::CanNeverSee(WorldObject const* /*obj*/) const +bool Player::CanNeverSee(WorldObject const* obj) const { // the intent is to delay sending visible objects until client is ready for them // some gameobjects dont function correctly if they are sent before TransportServerTime is correctly set (after CMSG_MOVE_INIT_ACTIVE_MOVER_COMPLETE) - return !HasPlayerLocalFlag(PLAYER_LOCAL_FLAG_OVERRIDE_TRANSPORT_SERVER_TIME); + return !HasPlayerLocalFlag(PLAYER_LOCAL_FLAG_OVERRIDE_TRANSPORT_SERVER_TIME) || WorldObject::CanNeverSee(obj); } bool Player::CanAlwaysSee(WorldObject const* obj) const |