diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 886f0a77a3..76d3abd6c6 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -13073,7 +13073,7 @@ void Unit::SendTeleportPacket(TeleportLocation const& teleportLocation) WorldPackets::Movement::MoveUpdateTeleport moveUpdateTeleport; moveUpdateTeleport.Status = &m_movementInfo; if (_movementForces) - moveUpdateTeleport.MovementForces = _movementForces->GetForces(); + moveUpdateTeleport.MovementForces = *_movementForces->GetForces(); // should this really be the unit _being_ moved? not the unit doing the moving? if (Player* playerMover = Unit::ToPlayer(GetUnitBeingMoved())) diff --git a/src/server/game/Server/Packets/MovementPackets.cpp b/src/server/game/Server/Packets/MovementPackets.cpp index e11f49c6b9..c037e10476 100644 --- a/src/server/game/Server/Packets/MovementPackets.cpp +++ b/src/server/game/Server/Packets/MovementPackets.cpp @@ -829,7 +829,7 @@ WorldPacket const* MoveUpdateTeleport::Write() { _worldPacket << *Status; - _worldPacket << uint32(MovementForces ? MovementForces->size() : 0); + _worldPacket << Size(MovementForces); _worldPacket << OptionalInit(WalkSpeed); _worldPacket << OptionalInit(RunSpeed); _worldPacket << OptionalInit(RunBackSpeed); @@ -841,9 +841,8 @@ WorldPacket const* MoveUpdateTeleport::Write() _worldPacket << OptionalInit(PitchRate); _worldPacket.FlushBits(); - if (MovementForces) - for (MovementForce const& force : *MovementForces) - _worldPacket << force; + for (MovementForce const& force : MovementForces) + _worldPacket << force; if (WalkSpeed) _worldPacket << *WalkSpeed; diff --git a/src/server/game/Server/Packets/MovementPackets.h b/src/server/game/Server/Packets/MovementPackets.h index a3f6ed5060..a362ccd098 100644 --- a/src/server/game/Server/Packets/MovementPackets.h +++ b/src/server/game/Server/Packets/MovementPackets.h @@ -359,7 +359,7 @@ namespace WorldPackets WorldPacket const* Write() override; MovementInfo* Status = nullptr; - ::MovementForces::Container const* MovementForces = nullptr; + std::span MovementForces; Optional SwimBackSpeed; Optional FlightSpeed; Optional SwimSpeed;