aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Player/Player.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index a41581d6c53..9d9323e8d3f 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -26266,9 +26266,6 @@ bool Player::SetDisableGravity(bool disable, bool packetOnly /*= false*/)
bool Player::SetCanFly(bool apply, bool packetOnly /*= false*/)
{
- if (!packetOnly && !Unit::SetCanFly(apply))
- return false;
-
if (!apply)
SetFallInformation(0, GetPositionZ());
@@ -26277,11 +26274,16 @@ bool Player::SetCanFly(bool apply, bool packetOnly /*= false*/)
data << uint32(0); //! movement counter
SendDirectMessage(&data);
- data.Initialize(MSG_MOVE_UPDATE_CAN_FLY, 64);
- data << GetPackGUID();
- BuildMovementPacket(&data);
- SendMessageToSet(&data, false);
- return true;
+ if (packetOnly || Unit::SetCanFly(apply))
+ {
+ data.Initialize(MSG_MOVE_UPDATE_CAN_FLY, 64);
+ data << GetPackGUID();
+ BuildMovementPacket(&data);
+ SendMessageToSet(&data, false);
+ return true;
+ }
+ else
+ return false;
}
bool Player::SetHover(bool apply, bool packetOnly /*= false*/)