diff --git a/src/server/game/Server/Packets/CharacterPackets.cpp b/src/server/game/Server/Packets/CharacterPackets.cpp index 42ca409c87..e1c374aaae 100644 --- a/src/server/game/Server/Packets/CharacterPackets.cpp +++ b/src/server/game/Server/Packets/CharacterPackets.cpp @@ -544,6 +544,38 @@ void CharCustomize::Read() SortCustomizations(CustomizeInfo->Customizations); } +CharCustomizeSuccess::CharCustomizeSuccess(CharCustomizeInfo const* info) + : ServerPacket(SMSG_CHAR_CUSTOMIZE_SUCCESS, 16 + 1 + 1 + 1 + 1 + 1 + 1 + 1), Customizations(info->Customizations) +{ + CharGUID = info->CharGUID; + SexID = info->SexID; + CharName = info->CharName; +} + +WorldPacket const* CharCustomizeSuccess::Write() +{ + _worldPacket << CharGUID; + _worldPacket << uint8(SexID); + _worldPacket << Size(Customizations); + for (ChrCustomizationChoice customization : Customizations) + _worldPacket << customization; + + _worldPacket << SizedString::BitsSize<6>(CharName); + _worldPacket.FlushBits(); + + _worldPacket << SizedString::Data(CharName); + + return &_worldPacket; +} + +WorldPacket const* CharCustomizeFailure::Write() +{ + _worldPacket << uint32(Result); + _worldPacket << CharGUID; + + return &_worldPacket; +} + void CharRaceOrFactionChange::Read() { RaceOrFactionChangeInfo = std::make_shared(); @@ -826,38 +858,6 @@ WorldPacket const* SetFactionVisible::Write() return &_worldPacket; } -CharCustomizeSuccess::CharCustomizeSuccess(CharCustomizeInfo const* info) - : ServerPacket(SMSG_CHAR_CUSTOMIZE_SUCCESS, 16 + 1 + 1 + 1 + 1 + 1 + 1 + 1), Customizations(info->Customizations) -{ - CharGUID = info->CharGUID; - SexID = info->SexID; - CharName = info->CharName; -} - -WorldPacket const* CharCustomizeSuccess::Write() -{ - _worldPacket << CharGUID; - _worldPacket << uint8(SexID); - _worldPacket << Size(Customizations); - for (ChrCustomizationChoice customization : Customizations) - _worldPacket << customization; - - _worldPacket << SizedString::BitsSize<6>(CharName); - _worldPacket.FlushBits(); - - _worldPacket << SizedString::Data(CharName); - - return &_worldPacket; -} - -WorldPacket const* CharCustomizeFailure::Write() -{ - _worldPacket << uint32(Result); - _worldPacket << CharGUID; - - return &_worldPacket; -} - void SetPlayerDeclinedNames::Read() { _worldPacket >> Player; diff --git a/src/server/game/Server/Packets/CharacterPackets.h b/src/server/game/Server/Packets/CharacterPackets.h index 5e79ca35da..6e4299badc 100644 --- a/src/server/game/Server/Packets/CharacterPackets.h +++ b/src/server/game/Server/Packets/CharacterPackets.h @@ -417,7 +417,29 @@ namespace WorldPackets std::shared_ptr CustomizeInfo; }; - /// @todo: CharCustomizeResult + class CharCustomizeSuccess final : public ServerPacket + { + public: + explicit CharCustomizeSuccess(CharCustomizeInfo const* customizeInfo); + + WorldPacket const* Write() override; + + ObjectGuid CharGUID; + std::string CharName; + uint8 SexID = 0; + Array const& Customizations; + }; + + class CharCustomizeFailure final : public ServerPacket + { + public: + explicit CharCustomizeFailure() : ServerPacket(SMSG_CHAR_CUSTOMIZE_FAILURE, 1 + 16) { } + + WorldPacket const* Write() override; + + uint32 Result = 0; + ObjectGuid CharGUID; + }; class CharRaceOrFactionChange final : public ClientPacket { @@ -839,30 +861,6 @@ namespace WorldPackets uint32 FactionIndex = 0; }; - class CharCustomizeSuccess final : public ServerPacket - { - public: - explicit CharCustomizeSuccess(CharCustomizeInfo const* customizeInfo); - - WorldPacket const* Write() override; - - ObjectGuid CharGUID; - std::string CharName; - uint8 SexID = 0; - Array const& Customizations; - }; - - class CharCustomizeFailure final : public ServerPacket - { - public: - explicit CharCustomizeFailure() : ServerPacket(SMSG_CHAR_CUSTOMIZE_FAILURE, 1 + 16) { } - - WorldPacket const* Write() override; - - uint32 Result = 0; - ObjectGuid CharGUID; - }; - class SetPlayerDeclinedNames final : public ClientPacket { public: