mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-21 09:44:45 +01:00
Core/Packets: update & enabled CMSG_SHOWING_CLOAK, CMSG_SHOWING_HELM (#24394)
(cherry picked from commit a47d57d1db)
Co-authored-by: DJScias <zumbak04@gmail.com>
# Conflicts:
# src/server/game/Server/Packets/AllPackets.h
# src/server/game/Server/Packets/CharacterPackets.cpp
# src/server/game/Server/Packets/CharacterPackets.h
# src/server/game/Server/WorldSession.h
This commit is contained in:
@@ -1260,18 +1260,20 @@ void WorldSession::HandleSetFactionInactiveOpcode(WorldPacket& recvData)
|
||||
_player->GetReputationMgr().SetInactive(replistid, inactive != 0);
|
||||
}
|
||||
|
||||
void WorldSession::HandleShowingHelmOpcode(WorldPacket& recvData)
|
||||
void WorldSession::HandleShowingHelmOpcode(WorldPackets::Character::ShowingHelm& packet)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "CMSG_SHOWING_HELM for %s", _player->GetName().c_str());
|
||||
recvData.read_skip<uint8>(); // unknown, bool?
|
||||
_player->ToggleFlag(PLAYER_FLAGS, PLAYER_FLAGS_HIDE_HELM);
|
||||
if (packet.ShowHelm)
|
||||
_player->RemoveFlag(PLAYER_FLAGS, PLAYER_FLAGS_HIDE_HELM);
|
||||
else
|
||||
_player->SetFlag(PLAYER_FLAGS, PLAYER_FLAGS_HIDE_HELM);
|
||||
}
|
||||
|
||||
void WorldSession::HandleShowingCloakOpcode(WorldPacket& recvData)
|
||||
void WorldSession::HandleShowingCloakOpcode(WorldPackets::Character::ShowingCloak& packet)
|
||||
{
|
||||
TC_LOG_DEBUG("network", "CMSG_SHOWING_CLOAK for %s", _player->GetName().c_str());
|
||||
recvData.read_skip<uint8>(); // unknown, bool?
|
||||
_player->ToggleFlag(PLAYER_FLAGS, PLAYER_FLAGS_HIDE_CLOAK);
|
||||
if (packet.ShowCloak)
|
||||
_player->RemoveFlag(PLAYER_FLAGS, PLAYER_FLAGS_HIDE_CLOAK);
|
||||
else
|
||||
_player->SetFlag(PLAYER_FLAGS, PLAYER_FLAGS_HIDE_CLOAK);
|
||||
}
|
||||
|
||||
void WorldSession::HandleCharRenameOpcode(WorldPacket& recvData)
|
||||
|
||||
@@ -215,3 +215,14 @@ WorldPacket const* WorldPackets::Character::CharacterLoginFailed::Write()
|
||||
_worldPacket << uint8(Code);
|
||||
return &_worldPacket;
|
||||
}
|
||||
|
||||
void WorldPackets::Character::ShowingCloak::Read()
|
||||
{
|
||||
_worldPacket >> ShowCloak;
|
||||
}
|
||||
|
||||
void WorldPackets::Character::ShowingHelm::Read()
|
||||
{
|
||||
_worldPacket >> ShowHelm;
|
||||
}
|
||||
|
||||
|
||||
@@ -125,6 +125,26 @@ namespace WorldPackets
|
||||
|
||||
LoginFailureReason Code = LoginFailureReason::Failed;
|
||||
};
|
||||
|
||||
class ShowingCloak final : public ClientPacket
|
||||
{
|
||||
public:
|
||||
ShowingCloak(WorldPacket&& packet) : ClientPacket(CMSG_SHOWING_CLOAK, std::move(packet)) { }
|
||||
|
||||
void Read() override;
|
||||
|
||||
bool ShowCloak = false;
|
||||
};
|
||||
|
||||
class ShowingHelm final : public ClientPacket
|
||||
{
|
||||
public:
|
||||
ShowingHelm(WorldPacket&& packet) : ClientPacket(CMSG_SHOWING_HELM, std::move(packet)) { }
|
||||
|
||||
void Read() override;
|
||||
|
||||
bool ShowHelm = false;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -83,6 +83,8 @@ namespace WorldPackets
|
||||
namespace Character
|
||||
{
|
||||
class EnumCharacters;
|
||||
class ShowingCloak;
|
||||
class ShowingHelm;
|
||||
|
||||
enum class LoginFailureReason : uint8;
|
||||
}
|
||||
@@ -633,8 +635,8 @@ class TC_GAME_API WorldSession
|
||||
void HandleMountSpecialAnimOpcode(WorldPacket& recvdata);
|
||||
|
||||
// character view
|
||||
void HandleShowingHelmOpcode(WorldPacket& recvData);
|
||||
void HandleShowingCloakOpcode(WorldPacket& recvData);
|
||||
void HandleShowingHelmOpcode(WorldPackets::Character::ShowingHelm& packet);
|
||||
void HandleShowingCloakOpcode(WorldPackets::Character::ShowingCloak& packet);
|
||||
|
||||
// repair
|
||||
void HandleRepairItemOpcode(WorldPacket& recvPacket);
|
||||
|
||||
Reference in New Issue
Block a user