aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorccrs <ccrs@users.noreply.github.com>2025-10-21 20:00:55 +0200
committerccrs <ccrs@users.noreply.github.com>2025-10-22 15:14:12 +0200
commit05afc3aa8950a5240b07472bb887bccbaf96101b (patch)
tree7f5ef0e9bbf43d0fe538a9b54312788447b9672e /src
parentd1bbef93ce246df54602fa11916e30179af660f1 (diff)
Core/Movement: allow to manually set up SWIM flag on init splines
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Movement/Spline/MoveSplineFlag.h1
-rw-r--r--src/server/game/Movement/Spline/MoveSplineInit.h3
2 files changed, 4 insertions, 0 deletions
diff --git a/src/server/game/Movement/Spline/MoveSplineFlag.h b/src/server/game/Movement/Spline/MoveSplineFlag.h
index 4bd7ff12545..6bf064ced74 100644
--- a/src/server/game/Movement/Spline/MoveSplineFlag.h
+++ b/src/server/game/Movement/Spline/MoveSplineFlag.h
@@ -101,6 +101,7 @@ namespace Movement
void EnableFacingTarget() { raw() = (raw() & ~Mask_Final_Facing) | Final_Target; }
void EnableTransportEnter() { raw() = (raw() & ~TransportExit) | TransportEnter; }
void EnableTransportExit() { raw() = (raw() & ~TransportEnter) | TransportExit; }
+ void EnableSwim() { raw() = raw() | CanSwim; }
uint8 animTier;
bool done : 1;
diff --git a/src/server/game/Movement/Spline/MoveSplineInit.h b/src/server/game/Movement/Spline/MoveSplineInit.h
index 957f4a8ba54..04ff2eea437 100644
--- a/src/server/game/Movement/Spline/MoveSplineInit.h
+++ b/src/server/game/Movement/Spline/MoveSplineInit.h
@@ -144,6 +144,8 @@ namespace Movement
*/
void SetVelocity(float velocity);
+ void SetSwim();
+
PointsArray& Path() { return args.path; }
/* Disables transport coordinate transformations for cases where raw offsets are available
@@ -164,6 +166,7 @@ namespace Movement
inline void MoveSplineInit::SetTransportEnter() { args.flags.EnableTransportEnter(); }
inline void MoveSplineInit::SetTransportExit() { args.flags.EnableTransportExit(); }
inline void MoveSplineInit::SetOrientationFixed(bool enable) { args.flags.orientationFixed = enable; }
+ inline void MoveSplineInit::SetSwim() { args.flags.EnableSwim(); }
inline void MoveSplineInit::SetParabolic(float amplitude, float time_shift)
{