Core/PacketIO: Updated to 11.0.0

This commit is contained in:
Shauren
2024-08-02 13:25:41 +02:00
parent 7fb9168d57
commit e59eef5432
99 changed files with 5064 additions and 3635 deletions
+38 -3
View File
@@ -8885,9 +8885,10 @@ void Unit::SetInteractionAllowedInCombat(bool interactionAllowed)
void Unit::UpdateNearbyPlayersInteractions()
{
for (uint32 i = 0; i < m_unitData->NpcFlags.size(); ++i)
if (m_unitData->NpcFlags[i])
ForceUpdateFieldChange(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::NpcFlags, i));
if (m_unitData->NpcFlags)
ForceUpdateFieldChange(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::NpcFlags));
if (m_unitData->NpcFlags2)
ForceUpdateFieldChange(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::NpcFlags2));
}
//======================================================================
@@ -13176,6 +13177,40 @@ bool Unit::SetCollision(bool disable)
return true;
}
bool Unit::SetEnableFullSpeedTurning(bool enable)
{
if (GetTypeId() != TYPEID_PLAYER)
return false;
if (enable == HasExtraUnitMovementFlag(MOVEMENTFLAG2_FULL_SPEED_TURNING))
return false;
if (enable)
AddExtraUnitMovementFlag(MOVEMENTFLAG2_FULL_SPEED_TURNING);
else
RemoveExtraUnitMovementFlag(MOVEMENTFLAG2_FULL_SPEED_TURNING);
static constexpr OpcodeServer fullSpeedTurningOpcodeTable[2] =
{
SMSG_MOVE_DISABLE_FULL_SPEED_TURNING,
SMSG_MOVE_ENABLE_FULL_SPEED_TURNING
};
if (Player* playerMover = Unit::ToPlayer(GetUnitBeingMoved()))
{
WorldPackets::Movement::MoveSetFlag packet(fullSpeedTurningOpcodeTable[enable]);
packet.MoverGUID = GetGUID();
packet.SequenceIndex = m_movementCounter++;
playerMover->SendDirectMessage(packet.Write());
WorldPackets::Movement::MoveUpdate moveUpdate;
moveUpdate.Status = &m_movementInfo;
SendMessageToSet(moveUpdate.Write(), playerMover);
}
return true;
}
bool Unit::SetCanTransitionBetweenSwimAndFly(bool enable)
{
if (GetTypeId() != TYPEID_PLAYER)