Core/PacketIO: Updated and enabled SMSG_CHAT_RESTRICTED

This commit is contained in:
Carbenium
2016-02-10 00:01:45 +01:00
parent 4f78efd463
commit f8de1ab354
6 changed files with 32 additions and 14 deletions
+4 -4
View File
@@ -658,9 +658,9 @@ void WorldSession::SendPlayerAmbiguousNotice(std::string const& name)
SendPacket(packet.Write());
}
void WorldSession::SendChatRestrictedNotice(ChatRestrictionType restriction)
void WorldSession::SendChatRestricted(ChatRestrictionType restriction)
{
WorldPacket data(SMSG_CHAT_RESTRICTED, 1);
data << uint8(restriction);
SendPacket(&data);
WorldPackets::Chat::ChatRestricted packet;
packet.Reason = restriction;
SendPacket(packet.Write());
}
@@ -272,10 +272,17 @@ void WorldPackets::Chat::ChatReportIgnored::Read()
_worldPacket >> Reason;
}
WorldPacket const * WorldPackets::Chat::ChatPlayerAmbiguous::Write()
WorldPacket const* WorldPackets::Chat::ChatPlayerAmbiguous::Write()
{
_worldPacket.WriteBits(Name.length(), 9);
_worldPacket.WriteString(Name);
return &_worldPacket;
}
WorldPacket const* WorldPackets::Chat::ChatRestricted::Write()
{
_worldPacket << uint8(Reason);
return &_worldPacket;
}
+12 -2
View File
@@ -301,15 +301,25 @@ namespace WorldPackets
uint8 Reason = 0;
};
class ChatPlayerAmbiguous : ServerPacket
class ChatPlayerAmbiguous final : public ServerPacket
{
public:
ChatPlayerAmbiguous() : ServerPacket(SMSG_CHAT_PLAYER_AMBIGUOUS, 2 + Name.length()) { }
ChatPlayerAmbiguous() : ServerPacket(SMSG_CHAT_PLAYER_AMBIGUOUS, 2 + Name.length()) { }
WorldPacket const* Write() override;
std::string Name;
};
class ChatRestricted final : public ServerPacket
{
public:
ChatRestricted() : ServerPacket(SMSG_CHAT_RESTRICTED, 1) { }
WorldPacket const* Write() override;
uint8 Reason = 0;
};
}
}
@@ -808,7 +808,7 @@ void WorldPackets::Spells::MissileTrajectoryCollision::Read()
_worldPacket >> CollisionPos;
}
WorldPacket const * WorldPackets::Spells::NotifyMissileTrajectoryCollision::Write()
WorldPacket const* WorldPackets::Spells::NotifyMissileTrajectoryCollision::Write()
{
_worldPacket << Caster;
_worldPacket << uint8(CastID);
+1 -1
View File
@@ -973,7 +973,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHAT_PLAYER_AMBIGUOUS, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHAT_PLAYER_NOTFOUND, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHAT_RECONNECT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHAT_RESTRICTED, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHAT_RESTRICTED, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHAT_SERVER_MESSAGE, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHEAT_IGNORE_DIMISHING_RETURNS, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHECK_WARGAME_ENTRY, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+6 -5
View File
@@ -787,10 +787,11 @@ enum BFLeaveReason
enum ChatRestrictionType
{
ERR_CHAT_RESTRICTED = 0,
ERR_CHAT_THROTTLED = 1,
ERR_USER_SQUELCHED = 2,
ERR_YELL_RESTRICTED = 3
ERR_CHAT_RESTRICTED = 0,
ERR_CHAT_THROTTLED = 1,
ERR_USER_SQUELCHED = 2,
ERR_YELL_RESTRICTED = 3,
ERR_CHAT_RAID_RESTRICTED = 4
};
enum CharterTypes
@@ -1438,7 +1439,7 @@ class WorldSession
void HandleChatMessageEmoteOpcode(WorldPackets::Chat::ChatMessageEmote& chatMessageEmote);
void SendChatPlayerNotfoundNotice(std::string const& name);
void SendPlayerAmbiguousNotice(std::string const& name);
void SendChatRestrictedNotice(ChatRestrictionType restriction);
void SendChatRestricted(ChatRestrictionType restriction);
void HandleTextEmoteOpcode(WorldPackets::Chat::CTextEmote& packet);
void HandleChatIgnoredOpcode(WorldPackets::Chat::ChatReportIgnored& chatReportIgnored);