diff options
| author | ModoX <moardox@gmail.com> | 2024-10-07 20:29:02 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-10-07 20:29:02 +0200 |
| commit | 222a80a6d62410eae6fa46dbdc60309f1728653a (patch) | |
| tree | 246ef3665a4baea293a64b562ffe63814334b7f0 /src/server/game/Server/Packets | |
| parent | 86f0337d64776b9dd724f3ec21ca964fffc8aac4 (diff) | |
Core/Movement: Implemented cyclic waypoint movement (#29923)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Diffstat (limited to 'src/server/game/Server/Packets')
| -rw-r--r-- | src/server/game/Server/Packets/MovementPackets.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/server/game/Server/Packets/MovementPackets.cpp b/src/server/game/Server/Packets/MovementPackets.cpp index b28ce65e032..25272638ee8 100644 --- a/src/server/game/Server/Packets/MovementPackets.cpp +++ b/src/server/game/Server/Packets/MovementPackets.cpp @@ -372,7 +372,13 @@ void WorldPackets::Movement::CommonMovement::WriteCreateObjectSplineDataBlock(:: if (!moveSpline.isCyclic()) // Destination dest = moveSpline.FinalDestination(); else - dest = G3D::Vector3::zero(); + { + ::Movement::MoveSpline::MySpline const& spline = moveSpline._Spline(); + if (spline.getPointCount() <= 1) + dest = G3D::Vector3::zero(); + else + dest = spline.getPoint(spline.last() - 1); + } data << dest.x << dest.y << dest.z; |
