diff options
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 3 | ||||
-rw-r--r-- | src/server/game/Spells/SpellDefines.h | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 32e3362285f..6c7491f2c2e 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -12496,6 +12496,9 @@ bool Unit::UpdatePosition(float x, float y, float z, float orientation, bool tel _positionUpdateInfo.Relocated = relocated; _positionUpdateInfo.Turned = turn; + if (IsFalling()) + RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2::Falling); + bool isInWater = IsInWater(); if (!IsFalling() || isInWater || IsFlying()) RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2::Ground); diff --git a/src/server/game/Spells/SpellDefines.h b/src/server/game/Spells/SpellDefines.h index de0cb71c7e1..54f850c4e1f 100644 --- a/src/server/game/Spells/SpellDefines.h +++ b/src/server/game/Spells/SpellDefines.h @@ -116,7 +116,7 @@ DEFINE_ENUM_FLAG(SpellAuraInterruptFlags); enum class SpellAuraInterruptFlags2 : uint32 { None = 0, - Falling = 0x00000001, // NYI + Falling = 0x00000001, // Implemented in Unit::UpdatePosition Swimming = 0x00000002, NotMoving = 0x00000004, // NYI Ground = 0x00000008, |