aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Movement/MotionMaster.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/server/game/Movement/MotionMaster.cpp b/src/server/game/Movement/MotionMaster.cpp
index 19e900a8806..a29684dfbe2 100644
--- a/src/server/game/Movement/MotionMaster.cpp
+++ b/src/server/game/Movement/MotionMaster.cpp
@@ -178,11 +178,14 @@ MovementGenerator* MotionMaster::GetMotionSlot(int slot) const
void MotionMaster::PropagateSpeedChange()
{
- for (int i = 0; i <= _top; ++i)
- {
- if (_slot[i])
- _slot[i]->UnitSpeedChanged();
- }
+ if (empty())
+ return;
+
+ MovementGenerator* movement = top();
+ if (!movement)
+ return;
+
+ movement->UnitSpeedChanged();
}
bool MotionMaster::GetDestination(float &x, float &y, float &z)