diff options
| author | Shauren <shauren.trinity@gmail.com> | 2023-03-23 00:06:43 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2023-03-23 00:06:43 +0100 |
| commit | d6d5d94ebe88e71b6250678f114d900871fcf054 (patch) | |
| tree | 58944300418b0648b14ecf23ac9ee0fb766b9062 | |
| parent | 922f60fa25569db05a7717b6b55568f321a02f64 (diff) | |
Core/PacketIO: Fixed SMSG_ENABLE_BARBER_SHOP structure
Closes #28606
| -rw-r--r-- | src/server/game/Entities/GameObject/GameObject.cpp | 5 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/MiscPackets.cpp | 7 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/MiscPackets.h | 6 |
3 files changed, 14 insertions, 4 deletions
diff --git a/src/server/game/Entities/GameObject/GameObject.cpp b/src/server/game/Entities/GameObject/GameObject.cpp index d0615358f3d..d9ee233faf4 100644 --- a/src/server/game/Entities/GameObject/GameObject.cpp +++ b/src/server/game/Entities/GameObject/GameObject.cpp @@ -2867,8 +2867,9 @@ void GameObject::Use(Unit* user) Player* player = user->ToPlayer(); - WorldPackets::Misc::EnableBarberShop packet; - player->SendDirectMessage(packet.Write()); + WorldPackets::Misc::EnableBarberShop enableBarberShop; + enableBarberShop.CustomizationScope = info->barberChair.CustomizationScope; + player->SendDirectMessage(enableBarberShop.Write()); // fallback, will always work player->TeleportTo(GetMapId(), GetPositionX(), GetPositionY(), GetPositionZ(), GetOrientation(), TELE_TO_NOT_LEAVE_TRANSPORT | TELE_TO_NOT_LEAVE_COMBAT | TELE_TO_NOT_UNSUMMON_PET); diff --git a/src/server/game/Server/Packets/MiscPackets.cpp b/src/server/game/Server/Packets/MiscPackets.cpp index b8d00d817eb..9f39f3334ca 100644 --- a/src/server/game/Server/Packets/MiscPackets.cpp +++ b/src/server/game/Server/Packets/MiscPackets.cpp @@ -416,6 +416,13 @@ WorldPacket const* WorldPackets::Misc::RandomRoll::Write() return &_worldPacket; } +WorldPacket const* WorldPackets::Misc::EnableBarberShop::Write() +{ + _worldPacket << uint8(CustomizationScope); + + return &_worldPacket; +} + ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::Misc::PhaseShiftDataPhase const& phaseShiftDataPhase) { data << uint16(phaseShiftDataPhase.PhaseFlags); diff --git a/src/server/game/Server/Packets/MiscPackets.h b/src/server/game/Server/Packets/MiscPackets.h index fe65386f2d6..5f29600d31d 100644 --- a/src/server/game/Server/Packets/MiscPackets.h +++ b/src/server/game/Server/Packets/MiscPackets.h @@ -547,9 +547,11 @@ namespace WorldPackets class EnableBarberShop final : public ServerPacket { public: - EnableBarberShop() : ServerPacket(SMSG_ENABLE_BARBER_SHOP, 0) { } + EnableBarberShop() : ServerPacket(SMSG_ENABLE_BARBER_SHOP, 1) { } - WorldPacket const* Write() override { return &_worldPacket; } + WorldPacket const* Write() override; + + uint8 CustomizationScope = 0; }; struct PhaseShiftDataPhase |
