Core/PacketIO: Use std::span instead of pointer to vector in SMSG_MOVE_UPDATE_TELEPORT
This commit is contained in:
@@ -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()))
|
||||
|
||||
@@ -829,7 +829,7 @@ WorldPacket const* MoveUpdateTeleport::Write()
|
||||
{
|
||||
_worldPacket << *Status;
|
||||
|
||||
_worldPacket << uint32(MovementForces ? MovementForces->size() : 0);
|
||||
_worldPacket << Size<uint32>(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;
|
||||
|
||||
@@ -359,7 +359,7 @@ namespace WorldPackets
|
||||
WorldPacket const* Write() override;
|
||||
|
||||
MovementInfo* Status = nullptr;
|
||||
::MovementForces::Container const* MovementForces = nullptr;
|
||||
std::span<MovementForce const> MovementForces;
|
||||
Optional<float> SwimBackSpeed;
|
||||
Optional<float> FlightSpeed;
|
||||
Optional<float> SwimSpeed;
|
||||
|
||||
Reference in New Issue
Block a user