mirror of
https://github.com/araxiaonline/TrinityCore.git
synced 2026-06-18 06:00:10 -04:00
Core/PacketIO: Use new packet writing utilities in a bunch of files
This commit is contained in:
@@ -48,7 +48,7 @@ WorldPacket const* SendKnownSpells::Write()
|
||||
{
|
||||
_worldPacket.reserve(1 + 4 * KnownSpells.size() + 4 * FavoriteSpells.size());
|
||||
|
||||
_worldPacket.WriteBit(InitialLogin);
|
||||
_worldPacket << Bits<1>(InitialLogin);
|
||||
_worldPacket << uint32(KnownSpells.size());
|
||||
_worldPacket << uint32(FavoriteSpells.size());
|
||||
|
||||
@@ -140,7 +140,7 @@ ByteBuffer& operator<<(ByteBuffer& data, AuraInfo const& aura)
|
||||
|
||||
WorldPacket const* AuraUpdate::Write()
|
||||
{
|
||||
_worldPacket.WriteBit(UpdateAll);
|
||||
_worldPacket << Bits<1>(UpdateAll);
|
||||
_worldPacket << BitsSize<9>(Auras);
|
||||
for (AuraInfo const& aura : Auras)
|
||||
_worldPacket << aura;
|
||||
@@ -161,30 +161,29 @@ ByteBuffer& operator>>(ByteBuffer& buffer, SpellTargetData& targetData)
|
||||
{
|
||||
buffer.ResetBitPos();
|
||||
|
||||
targetData.Flags = buffer.ReadBits(28);
|
||||
bool hasSrcLocation = buffer.ReadBit();
|
||||
bool hasDstLocation = buffer.ReadBit();
|
||||
bool hasOrientation = buffer.ReadBit();
|
||||
bool hasMapID = buffer.ReadBit();
|
||||
uint32 nameLength = buffer.ReadBits(7);
|
||||
buffer >> Bits<28>(targetData.Flags);
|
||||
buffer >> OptionalInit(targetData.SrcLocation);
|
||||
buffer >> OptionalInit(targetData.DstLocation);
|
||||
buffer >> OptionalInit(targetData.Orientation);
|
||||
buffer >> OptionalInit(targetData.MapID);
|
||||
buffer >> SizedString::BitsSize<7>(targetData.Name);
|
||||
|
||||
buffer >> targetData.Unit;
|
||||
buffer >> targetData.Item;
|
||||
|
||||
if (hasSrcLocation)
|
||||
buffer >> targetData.SrcLocation.emplace();
|
||||
if (targetData.SrcLocation)
|
||||
buffer >> *targetData.SrcLocation;
|
||||
|
||||
if (hasDstLocation)
|
||||
buffer >> targetData.DstLocation.emplace();
|
||||
if (targetData.DstLocation)
|
||||
buffer >> *targetData.DstLocation;
|
||||
|
||||
if (hasOrientation)
|
||||
targetData.Orientation = buffer.read<float>();
|
||||
if (targetData.Orientation)
|
||||
buffer >> *targetData.Orientation;
|
||||
|
||||
if (hasMapID)
|
||||
targetData.MapID = buffer.read<int32>();
|
||||
|
||||
targetData.Name = buffer.ReadString(nameLength);
|
||||
if (targetData.MapID)
|
||||
buffer >> *targetData.MapID;
|
||||
|
||||
buffer >> SizedString::Data(targetData.Name);
|
||||
return buffer;
|
||||
}
|
||||
|
||||
@@ -200,8 +199,9 @@ ByteBuffer& operator>>(ByteBuffer& data, SpellCraftingReagent& optionalReagent)
|
||||
data >> optionalReagent.ItemID;
|
||||
data >> optionalReagent.DataSlotIndex;
|
||||
data >> optionalReagent.Quantity;
|
||||
if (data.ReadBit())
|
||||
optionalReagent.Source = data.read<uint8>();
|
||||
data >> OptionalInit(optionalReagent.Source);
|
||||
if (optionalReagent.Source)
|
||||
data >> *optionalReagent.Source;
|
||||
|
||||
return data;
|
||||
}
|
||||
@@ -230,14 +230,14 @@ ByteBuffer& operator>>(ByteBuffer& buffer, SpellCastRequest& request)
|
||||
for (SpellExtraCurrencyCost& optionalCurrency : request.OptionalCurrencies)
|
||||
buffer >> optionalCurrency;
|
||||
|
||||
request.SendCastFlags = buffer.ReadBits(5);
|
||||
bool hasMoveUpdate = buffer.ReadBit();
|
||||
request.Weight.resize(buffer.ReadBits(2));
|
||||
bool hasCraftingOrderID = buffer.ReadBit();
|
||||
buffer >> Bits<5>(request.SendCastFlags);
|
||||
buffer >> OptionalInit(request.MoveUpdate);
|
||||
buffer >> BitsSize<2>(request.Weight);
|
||||
buffer >> OptionalInit(request.CraftingOrderID);
|
||||
buffer >> request.Target;
|
||||
|
||||
if (hasCraftingOrderID)
|
||||
request.CraftingOrderID = buffer.read<uint64>();
|
||||
if (request.CraftingOrderID)
|
||||
buffer >> *request.CraftingOrderID;
|
||||
|
||||
for (SpellCraftingReagent& optionalReagent : request.OptionalReagents)
|
||||
buffer >> optionalReagent;
|
||||
@@ -245,13 +245,13 @@ ByteBuffer& operator>>(ByteBuffer& buffer, SpellCastRequest& request)
|
||||
for (SpellCraftingReagent& optionalReagent : request.RemovedModifications)
|
||||
buffer >> optionalReagent;
|
||||
|
||||
if (hasMoveUpdate)
|
||||
buffer >> request.MoveUpdate.emplace();
|
||||
if (request.MoveUpdate)
|
||||
buffer >> *request.MoveUpdate;
|
||||
|
||||
for (SpellWeight& weight : request.Weight)
|
||||
{
|
||||
buffer.ResetBitPos();
|
||||
weight.Type = buffer.ReadBits(2);
|
||||
buffer >> Bits<2>(weight.Type);
|
||||
buffer >> weight.ID;
|
||||
buffer >> weight.Quantity;
|
||||
}
|
||||
@@ -295,12 +295,12 @@ ByteBuffer& operator<<(ByteBuffer& data, TargetLocation const& targetLocation)
|
||||
|
||||
ByteBuffer& operator<<(ByteBuffer& data, SpellTargetData const& spellTargetData)
|
||||
{
|
||||
data.WriteBits(spellTargetData.Flags, 28);
|
||||
data.WriteBit(spellTargetData.SrcLocation.has_value());
|
||||
data.WriteBit(spellTargetData.DstLocation.has_value());
|
||||
data.WriteBit(spellTargetData.Orientation.has_value());
|
||||
data.WriteBit(spellTargetData.MapID.has_value());
|
||||
data.WriteBits(spellTargetData.Name.size(), 7);
|
||||
data << Bits<28>(spellTargetData.Flags);
|
||||
data << OptionalInit(spellTargetData.SrcLocation);
|
||||
data << OptionalInit(spellTargetData.DstLocation);
|
||||
data << OptionalInit(spellTargetData.Orientation);
|
||||
data << OptionalInit(spellTargetData.MapID);
|
||||
data << SizedString::BitsSize<7>(spellTargetData.Name);
|
||||
data.FlushBits();
|
||||
|
||||
data << spellTargetData.Unit;
|
||||
@@ -313,13 +313,12 @@ ByteBuffer& operator<<(ByteBuffer& data, SpellTargetData const& spellTargetData)
|
||||
data << *spellTargetData.DstLocation;
|
||||
|
||||
if (spellTargetData.Orientation)
|
||||
data << *spellTargetData.Orientation;
|
||||
data << float(*spellTargetData.Orientation);
|
||||
|
||||
if (spellTargetData.MapID)
|
||||
data << *spellTargetData.MapID;
|
||||
|
||||
data.WriteString(spellTargetData.Name);
|
||||
data << int32(*spellTargetData.MapID);
|
||||
|
||||
data << SizedString::Data(spellTargetData.Name);
|
||||
return data;
|
||||
}
|
||||
|
||||
@@ -394,13 +393,13 @@ ByteBuffer& operator<<(ByteBuffer& data, SpellCastData const& spellCastData)
|
||||
data << uint8(spellCastData.DestLocSpellCastIndex);
|
||||
data << spellCastData.Immunities;
|
||||
data << spellCastData.Predict;
|
||||
data.WriteBits(spellCastData.HitTargets.size(), 16);
|
||||
data.WriteBits(spellCastData.MissTargets.size(), 16);
|
||||
data.WriteBits(spellCastData.HitStatus.size(), 16);
|
||||
data.WriteBits(spellCastData.MissStatus.size(), 16);
|
||||
data.WriteBits(spellCastData.RemainingPower.size(), 9);
|
||||
data.WriteBit(spellCastData.RemainingRunes.has_value());
|
||||
data.WriteBits(spellCastData.TargetPoints.size(), 16);
|
||||
data << BitsSize<16>(spellCastData.HitTargets);
|
||||
data << BitsSize<16>(spellCastData.MissTargets);
|
||||
data << BitsSize<16>(spellCastData.HitStatus);
|
||||
data << BitsSize<16>(spellCastData.MissStatus);
|
||||
data << BitsSize<9>(spellCastData.RemainingPower);
|
||||
data << OptionalInit(spellCastData.RemainingRunes);
|
||||
data << BitsSize<16>(spellCastData.TargetPoints);
|
||||
data.FlushBits();
|
||||
|
||||
data << spellCastData.Target;
|
||||
@@ -451,10 +450,10 @@ WorldPacket const* SpellGo::Write()
|
||||
ByteBuffer& operator<<(ByteBuffer& data, LearnedSpellInfo const& learnedSpellInfo)
|
||||
{
|
||||
data << int32(learnedSpellInfo.SpellID);
|
||||
data.WriteBit(learnedSpellInfo.Favorite);
|
||||
data.WriteBit(learnedSpellInfo.EquipableSpellInvSlot.has_value());
|
||||
data.WriteBit(learnedSpellInfo.Superceded.has_value());
|
||||
data.WriteBit(learnedSpellInfo.TraitDefinitionID.has_value());
|
||||
data << Bits<1>(learnedSpellInfo.Favorite);
|
||||
data << OptionalInit(learnedSpellInfo.EquipableSpellInvSlot);
|
||||
data << OptionalInit(learnedSpellInfo.Superceded);
|
||||
data << OptionalInit(learnedSpellInfo.TraitDefinitionID);
|
||||
data.FlushBits();
|
||||
|
||||
if (learnedSpellInfo.EquipableSpellInvSlot)
|
||||
@@ -473,7 +472,7 @@ WorldPacket const* LearnedSpells::Write()
|
||||
{
|
||||
_worldPacket << uint32(ClientLearnedSpellData.size());
|
||||
_worldPacket << uint32(SpecializationID);
|
||||
_worldPacket.WriteBit(SuppressMessaging);
|
||||
_worldPacket << Bits<1>(SuppressMessaging);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
for (LearnedSpellInfo const& spell : ClientLearnedSpellData)
|
||||
@@ -570,7 +569,7 @@ WorldPacket const* UnlearnedSpells::Write()
|
||||
for (uint32 spellId : SpellID)
|
||||
_worldPacket << uint32(spellId);
|
||||
|
||||
_worldPacket.WriteBit(SuppressMessaging);
|
||||
_worldPacket << Bits<1>(SuppressMessaging);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -579,7 +578,7 @@ WorldPacket const* UnlearnedSpells::Write()
|
||||
WorldPacket const* CooldownEvent::Write()
|
||||
{
|
||||
_worldPacket << int32(SpellID);
|
||||
_worldPacket.WriteBit(IsPet);
|
||||
_worldPacket << Bits<1>(IsPet);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -591,7 +590,7 @@ WorldPacket const* ClearCooldowns::Write()
|
||||
if (!SpellID.empty())
|
||||
_worldPacket.append(SpellID.data(), SpellID.size());
|
||||
|
||||
_worldPacket.WriteBit(IsPet);
|
||||
_worldPacket << Bits<1>(IsPet);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -600,8 +599,8 @@ WorldPacket const* ClearCooldowns::Write()
|
||||
WorldPacket const* ClearCooldown::Write()
|
||||
{
|
||||
_worldPacket << uint32(SpellID);
|
||||
_worldPacket.WriteBit(ClearOnHold);
|
||||
_worldPacket.WriteBit(IsPet);
|
||||
_worldPacket << Bits<1>(ClearOnHold);
|
||||
_worldPacket << Bits<1>(IsPet);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -611,8 +610,8 @@ WorldPacket const* ModifyCooldown::Write()
|
||||
{
|
||||
_worldPacket << int32(SpellID);
|
||||
_worldPacket << int32(DeltaTime);
|
||||
_worldPacket.WriteBit(IsPet);
|
||||
_worldPacket.WriteBit(WithoutCategoryCooldown);
|
||||
_worldPacket << Bits<1>(IsPet);
|
||||
_worldPacket << Bits<1>(WithoutCategoryCooldown);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -645,9 +644,9 @@ ByteBuffer& operator<<(ByteBuffer& data, SpellHistoryEntry const& historyEntry)
|
||||
data << int32(historyEntry.RecoveryTime);
|
||||
data << int32(historyEntry.CategoryRecoveryTime);
|
||||
data << float(historyEntry.ModRate);
|
||||
data.WriteBit(historyEntry.RecoveryTimeStartOffset.has_value());
|
||||
data.WriteBit(historyEntry.CategoryRecoveryTimeStartOffset.has_value());
|
||||
data.WriteBit(historyEntry.OnHold);
|
||||
data << OptionalInit(historyEntry.RecoveryTimeStartOffset);
|
||||
data << OptionalInit(historyEntry.CategoryRecoveryTimeStartOffset);
|
||||
data << Bits<1>(historyEntry.OnHold);
|
||||
if (historyEntry.RecoveryTimeStartOffset)
|
||||
data << uint32(*historyEntry.RecoveryTimeStartOffset);
|
||||
if (historyEntry.CategoryRecoveryTimeStartOffset)
|
||||
@@ -668,7 +667,7 @@ WorldPacket const* SendSpellHistory::Write()
|
||||
|
||||
WorldPacket const* ClearAllSpellCharges::Write()
|
||||
{
|
||||
_worldPacket.WriteBit(IsPet);
|
||||
_worldPacket << Bits<1>(IsPet);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -677,7 +676,7 @@ WorldPacket const* ClearAllSpellCharges::Write()
|
||||
WorldPacket const* ClearSpellCharges::Write()
|
||||
{
|
||||
_worldPacket << int32(Category);
|
||||
_worldPacket.WriteBit(IsPet);
|
||||
_worldPacket << Bits<1>(IsPet);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -689,7 +688,7 @@ WorldPacket const* SetSpellCharges::Write()
|
||||
_worldPacket << uint32(NextRecoveryTime);
|
||||
_worldPacket << uint8(ConsumedCharges);
|
||||
_worldPacket << float(ChargeModRate);
|
||||
_worldPacket.WriteBit(IsPet);
|
||||
_worldPacket << Bits<1>(IsPet);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -739,7 +738,7 @@ WorldPacket const* CancelSpellVisualKit::Write()
|
||||
{
|
||||
_worldPacket << Source;
|
||||
_worldPacket << int32(SpellVisualKitID);
|
||||
_worldPacket.WriteBit(MountedVisual);
|
||||
_worldPacket << Bits<1>(MountedVisual);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -756,7 +755,7 @@ WorldPacket const* PlayOrphanSpellVisual::Write()
|
||||
_worldPacket << float(TravelSpeed);
|
||||
_worldPacket << float(LaunchDelay);
|
||||
_worldPacket << float(MinDuration);
|
||||
_worldPacket.WriteBit(SpeedAsTime);
|
||||
_worldPacket << Bits<1>(SpeedAsTime);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -775,7 +774,7 @@ WorldPacket const* PlaySpellVisual::Write()
|
||||
_worldPacket << uint16(ReflectStatus);
|
||||
_worldPacket << float(LaunchDelay);
|
||||
_worldPacket << float(MinDuration);
|
||||
_worldPacket.WriteBit(SpeedAsTime);
|
||||
_worldPacket << Bits<1>(SpeedAsTime);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -787,7 +786,7 @@ WorldPacket const* PlaySpellVisualKit::Write()
|
||||
_worldPacket << int32(KitRecID);
|
||||
_worldPacket << int32(KitType);
|
||||
_worldPacket << uint32(Duration);
|
||||
_worldPacket.WriteBit(MountedVisual);
|
||||
_worldPacket << Bits<1>(MountedVisual);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -833,8 +832,8 @@ WorldPacket const* SpellChannelStart::Write()
|
||||
_worldPacket << int32(SpellID);
|
||||
_worldPacket << Visual;
|
||||
_worldPacket << uint32(ChannelDuration);
|
||||
_worldPacket.WriteBit(InterruptImmunities.has_value());
|
||||
_worldPacket.WriteBit(HealPrediction.has_value());
|
||||
_worldPacket << OptionalInit(InterruptImmunities);
|
||||
_worldPacket << OptionalInit(HealPrediction);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
if (InterruptImmunities)
|
||||
@@ -871,8 +870,8 @@ WorldPacket const* SpellEmpowerStart::Write()
|
||||
for (Duration<Milliseconds, uint32> stageDuration : StageDurations)
|
||||
_worldPacket << stageDuration;
|
||||
|
||||
_worldPacket.WriteBit(InterruptImmunities.has_value());
|
||||
_worldPacket.WriteBit(HealPrediction.has_value());
|
||||
_worldPacket << OptionalInit(InterruptImmunities);
|
||||
_worldPacket << OptionalInit(HealPrediction);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
if (InterruptImmunities)
|
||||
@@ -929,12 +928,12 @@ WorldPacket const* ResurrectRequest::Write()
|
||||
_worldPacket << uint32(ResurrectOffererVirtualRealmAddress);
|
||||
_worldPacket << uint32(PetNumber);
|
||||
_worldPacket << int32(SpellID);
|
||||
_worldPacket.WriteBits(Name.length(), 11);
|
||||
_worldPacket.WriteBit(UseTimer);
|
||||
_worldPacket.WriteBit(Sickness);
|
||||
_worldPacket << SizedString::BitsSize<11>(Name);
|
||||
_worldPacket << Bits<1>(UseTimer);
|
||||
_worldPacket << Bits<1>(Sickness);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
_worldPacket.WriteString(Name);
|
||||
_worldPacket << SizedString::Data(Name);
|
||||
|
||||
return &_worldPacket;
|
||||
}
|
||||
@@ -994,7 +993,7 @@ WorldPacket const* MirrorImageCreatureData::Write()
|
||||
void SpellClick::Read()
|
||||
{
|
||||
_worldPacket >> SpellClickUnitGuid;
|
||||
TryAutoDismount = _worldPacket.ReadBit();
|
||||
_worldPacket >> Bits<1>(TryAutoDismount);
|
||||
}
|
||||
|
||||
WorldPacket const* ResyncRunes::Write()
|
||||
@@ -1038,11 +1037,11 @@ void UpdateMissileTrajectory::Read()
|
||||
_worldPacket >> Speed;
|
||||
_worldPacket >> FirePos;
|
||||
_worldPacket >> ImpactPos;
|
||||
bool hasStatus = _worldPacket.ReadBit();
|
||||
_worldPacket >> OptionalInit(Status);
|
||||
|
||||
_worldPacket.ResetBitPos();
|
||||
if (hasStatus)
|
||||
_worldPacket >> Status.emplace();
|
||||
if (Status)
|
||||
_worldPacket >> *Status;
|
||||
}
|
||||
|
||||
WorldPacket const* SpellDelayed::Write()
|
||||
@@ -1093,7 +1092,7 @@ WorldPacket const* MissileCancel::Write()
|
||||
{
|
||||
_worldPacket << OwnerGUID;
|
||||
_worldPacket << int32(SpellID);
|
||||
_worldPacket.WriteBit(Reverse);
|
||||
_worldPacket << Bits<1>(Reverse);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
return &_worldPacket;
|
||||
@@ -1102,7 +1101,7 @@ WorldPacket const* MissileCancel::Write()
|
||||
void TradeSkillSetFavorite::Read()
|
||||
{
|
||||
_worldPacket >> RecipeID;
|
||||
IsFavorite = _worldPacket.ReadBit();
|
||||
_worldPacket >> Bits<1>(IsFavorite);
|
||||
}
|
||||
|
||||
void KeyboundOverride::Read()
|
||||
|
||||
Reference in New Issue
Block a user