aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities/Unit
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Entities/Unit')
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 3659f304091..4134cd66b35 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -12060,6 +12060,13 @@ bool Unit::UpdatePosition(float x, float y, float z, float orientation, bool tel
UpdatePositionData();
+ bool isInWater = IsInWater();
+ if (!IsFalling() || isInWater || IsFlying())
+ RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2::Ground);
+
+ if (isInWater)
+ RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2::Swimming);
+
return (relocated || turn);
}