diff --git a/Source/Game/Entities/Object/WorldObject.cs b/Source/Game/Entities/Object/WorldObject.cs index 1508e4397..cd3e85ca2 100644 --- a/Source/Game/Entities/Object/WorldObject.cs +++ b/Source/Game/Entities/Object/WorldObject.cs @@ -156,8 +156,11 @@ namespace Game.Entities Unit unit = ToUnit(); if (unit) + { + flags.PlayHoverAnim = unit.IsPlayingHoverAnim(); if (unit.GetVictim()) flags.CombatVictim = true; + } WorldPacket buffer = new(); buffer.WriteUInt8((byte)updateType); diff --git a/Source/Game/Entities/Unit/Unit.Fields.cs b/Source/Game/Entities/Unit/Unit.Fields.cs index c46dc77f2..f48b8cd62 100644 --- a/Source/Game/Entities/Unit/Unit.Fields.cs +++ b/Source/Game/Entities/Unit/Unit.Fields.cs @@ -128,6 +128,8 @@ namespace Game.Entities bool m_duringRemoveFromWorld; // lock made to not add stuff after begining removing from world bool _instantCast; + bool _playHoverAnim; + ushort _aiAnimKitId; ushort _movementAnimKitId; ushort _meleeAnimKitId; diff --git a/Source/Game/Entities/Unit/Unit.Movement.cs b/Source/Game/Entities/Unit/Unit.Movement.cs index 0744100be..aa5c81b0b 100644 --- a/Source/Game/Entities/Unit/Unit.Movement.cs +++ b/Source/Game/Entities/Unit/Unit.Movement.cs @@ -1611,8 +1611,12 @@ namespace Game.Entities } } - void SendSetPlayHoverAnim(bool enable) + public bool IsPlayingHoverAnim() { return _playHoverAnim; } + + void SetPlayHoverAnim(bool enable) { + _playHoverAnim = enable; + SetPlayHoverAnim data = new(); data.UnitGUID = GetGUID(); data.PlayHoverAnim = enable;