aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Movement/Spline/MoveSplineInit.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/server/game/Movement/Spline/MoveSplineInit.cpp b/src/server/game/Movement/Spline/MoveSplineInit.cpp
index f5d2ae59329..fe1db906a26 100644
--- a/src/server/game/Movement/Spline/MoveSplineInit.cpp
+++ b/src/server/game/Movement/Spline/MoveSplineInit.cpp
@@ -25,9 +25,13 @@ namespace Movement
{
UnitMoveType SelectSpeedType(uint32 moveFlags)
{
- if (moveFlags & MOVEMENTFLAG_FLYING)
+ /*! Not sure about MOVEMENTFLAG_CAN_FLY here - do creatures that can fly
+ but are on ground right now also have it? If yes, this needs a more
+ dynamic check, such as is flying now
+ */
+ if (moveFlags & (MOVEMENTFLAG_FLYING | MOVEMENTFLAG_CAN_FLY | MOVEMENTFLAG_DISABLE_GRAVITY))
{
- if ( moveFlags & MOVEMENTFLAG_BACKWARD /*&& speed_obj.flight >= speed_obj.flight_back*/ )
+ if (moveFlags & MOVEMENTFLAG_BACKWARD /*&& speed_obj.flight >= speed_obj.flight_back*/)
return MOVE_FLIGHT_BACK;
else
return MOVE_FLIGHT;
@@ -41,7 +45,7 @@ namespace Movement
}
else if (moveFlags & MOVEMENTFLAG_WALKING)
{
- //if ( speed_obj.run > speed_obj.walk )
+ //if (speed_obj.run > speed_obj.walk)
return MOVE_WALK;
}
else if (moveFlags & MOVEMENTFLAG_BACKWARD /*&& speed_obj.run >= speed_obj.run_back*/)