diff options
| author | Shauren <shauren.trinity@gmail.com> | 2024-04-07 00:05:46 +0200 |
|---|---|---|
| committer | Ovahlord <dreadkiller@gmx.de> | 2024-05-28 16:35:03 +0200 |
| commit | 5c1021046a9a08101c0205e6ff60408e5dc3dbba (patch) | |
| tree | 109f75d938126d24363edb27afeccca01ffd9070 /src/server/game/Movement/MotionMaster.cpp | |
| parent | 093546f22c2908017bbcf36e0b589ca5d7660eff (diff) | |
Core/Movement: Ensure land and takeoff animations even if gravity enabled/disabled state is not what spline generator expects
(cherry picked from commit be3ae90dc488894afea8e4cca74d9105558fff53)
Diffstat (limited to 'src/server/game/Movement/MotionMaster.cpp')
| -rw-r--r-- | src/server/game/Movement/MotionMaster.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Movement/MotionMaster.cpp b/src/server/game/Movement/MotionMaster.cpp index 7b43eea41ae..aec3bc208a8 100644 --- a/src/server/game/Movement/MotionMaster.cpp +++ b/src/server/game/Movement/MotionMaster.cpp @@ -713,6 +713,8 @@ void MotionMaster::MoveLand(uint32 id, Position const& pos, Optional<int32> tier { init.MoveTo(PositionToVector3(pos), false); init.SetAnimation(AnimTier::Ground, tierTransitionId.value_or(1)); + init.SetFly(); // ensure smooth animation even if gravity is enabled before calling this function + init.SetSmooth(); switch (speedSelectionMode) { case MovementWalkRunSpeedSelectionMode::ForceRun: @@ -740,7 +742,8 @@ void MotionMaster::MoveTakeoff(uint32 id, Position const& pos, Optional<int32> t std::function<void(Movement::MoveSplineInit&)> initializer = [=](Movement::MoveSplineInit& init) { init.MoveTo(PositionToVector3(pos), false); - init.SetAnimation(AnimTier::Hover, tierTransitionId.value_or(15)); + init.SetAnimation(AnimTier::Fly, tierTransitionId.value_or(2)); + init.SetFly(); // ensure smooth animation even if gravity is disabled after calling this function switch (speedSelectionMode) { case MovementWalkRunSpeedSelectionMode::ForceRun: |
