From 563ab5da058037ac2654f00ef5186a007a121345 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Mon, 8 Nov 2021 10:49:00 -0500 Subject: [PATCH] Core/Auras: Implement SpellAuraInterruptFlags2::Ground and SpellAuraInterruptFlags2::Swimming Port From (https://github.com/TrinityCore/TrinityCore/commit/107f5ce0a40fdbd325cdb467baaee841d39e0958) --- Source/Framework/Constants/Spells/SpellConst.cs | 4 ++-- Source/Game/Entities/Unit/Unit.Movement.cs | 7 +++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Source/Framework/Constants/Spells/SpellConst.cs b/Source/Framework/Constants/Spells/SpellConst.cs index 1f118e8d5..3b193994a 100644 --- a/Source/Framework/Constants/Spells/SpellConst.cs +++ b/Source/Framework/Constants/Spells/SpellConst.cs @@ -163,9 +163,9 @@ namespace Framework.Constants { None = 0, Falling = 0x01, // NYI - Swimming = 0x02, // NYI + Swimming = 0x02, NotMoving = 0x04, // NYI - Ground = 0x08, // NYI + Ground = 0x08, Transform = 0x10, // NYI Jump = 0x20, ChangeSpec = 0x40, // NYI diff --git a/Source/Game/Entities/Unit/Unit.Movement.cs b/Source/Game/Entities/Unit/Unit.Movement.cs index 4fa0de062..f924d2d3c 100644 --- a/Source/Game/Entities/Unit/Unit.Movement.cs +++ b/Source/Game/Entities/Unit/Unit.Movement.cs @@ -617,6 +617,13 @@ namespace Game.Entities UpdatePositionData(); + bool isInWater = IsInWater(); + if (!IsFalling() || isInWater || IsFlying()) + RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2.Ground); + + if (isInWater) + RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2.Swimming); + return (relocated || turn); }