File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -531,13 +531,15 @@ void WorldSession::HandleForceSpeedChangeAck(WorldPacket &recvData)
531531
532532 /* the client data has been verified. let's do the actual change now */
533533 movementInfo.time = AdjustClientMovementTime (movementInfo.time );
534-
535534 mover->m_movementInfo = movementInfo;
536- mover->UpdatePosition (movementInfo.pos );
537535
538536 float newSpeedRate = speedSent / (mover->IsControlledByPlayer () ? playerBaseMoveSpeed[move_type] : baseMoveSpeed[move_type]);
539537 mover->SetSpeedRateReal (move_type, newSpeedRate);
540538 MovementPacketSender::SendSpeedChangeToObservers (mover, move_type, speedSent);
539+
540+ // Update position after updating known serverside speed
541+ // this can interrupt aura granting us the speed boost so it needs see updated value in Unit::m_speed_rate
542+ mover->UpdatePosition (movementInfo.pos );
541543}
542544
543545void WorldSession::HandleSetActiveMoverOpcode (WorldPacket &recvData)
You can’t perform that action at this time.
0 commit comments