82 _worldPacket <<
uint32(Pets.size());
83 _worldPacket.WriteBit(PetAdded);
84 _worldPacket.FlushBits();
94 _worldPacket <<
uint32(Slots.size());
95 _worldPacket.WriteBit(NewSlot);
96 _worldPacket.WriteBit(AutoSlotted);
97 _worldPacket.FlushBits();
99 for (
auto const& slot : Slots)
100 _worldPacket << slot;
102 return &_worldPacket;
107 _worldPacket >> PetGuid;
108 _worldPacket >> Slot;
113 _worldPacket >> PetGuid;
114 uint32 nameLength = _worldPacket.ReadBits(7);
115 bool hasDeclinedNames = _worldPacket.ReadBit();
117 if (hasDeclinedNames)
119 DeclinedNames = std::make_unique<DeclinedName>();
123 declinedNameLengths[i] = _worldPacket.ReadBits(7);
126 DeclinedNames->name[i] = _worldPacket.ReadString(declinedNameLengths[i]);
129 Name = _worldPacket.ReadString(nameLength);
134 _worldPacket >> BattlePetID;
135 _worldPacket >> UnitGUID;
140 _worldPacket << BattlePetID;
141 _worldPacket <<
int32(CreatureID);
144 _worldPacket.WriteBit(Allow);
148 _worldPacket.WriteBits(
Name.length(), 8);
149 _worldPacket.WriteBit(HasDeclined);
152 _worldPacket.WriteBits(DeclinedNames.name[i].length(), 7);
155 _worldPacket.WriteString(DeclinedNames.name[i]);
157 _worldPacket.WriteString(
Name);
160 _worldPacket.FlushBits();
162 return &_worldPacket;
167 _worldPacket >> PetGuid;
172 _worldPacket >> PetGuid;
173 _worldPacket >> Flags;
174 ControlType = _worldPacket.ReadBits(2);
179 _worldPacket >> PetGuid;
184 _worldPacket >> PetGuid;
189 _worldPacket << PetGuid;
191 return &_worldPacket;
197 _worldPacket <<
int32(CreatureID);
199 return &_worldPacket;
204 _worldPacket >> PetGuid;
209 _worldPacket >> PetGuid;
ByteBuffer & operator<<(ByteBuffer &data, WorldPackets::BattlePet::BattlePetSlot const &slot)
#define MAX_DECLINED_NAME_CASES
void WriteString(std::string const &str)
void WriteBits(std::size_t value, int32 bits)
WorldPacket const * Write() override
WorldPacket const * Write() override
WorldPacket const * Write() override
std::vector< std::reference_wrapper< BattlePet > > Pets
std::vector< std::reference_wrapper< BattlePetSlot > > Slots
WorldPacket const * Write() override
WorldPacket const * Write() override
WorldPacket const * Write() override
Optional< BattlePetOwnerInfo > OwnerInfo