aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server
diff options
context:
space:
mode:
authorVincent-Michael <Vincent_Michael@gmx.de>2015-05-02 16:31:48 +0200
committerVincent-Michael <Vincent_Michael@gmx.de>2015-05-02 16:31:48 +0200
commitfc7014628af364911de75eebcac2034676292b30 (patch)
tree1edf5d387a8478a7aa772142235b24add277bfe8 /src/server/game/Server
parenta0fee439de4c1d5d36a4079778976fe821b3d8d1 (diff)
Core/PacketIO: Updated and enabled SMSG_CHAT_SERVER_MESSAGE
Diffstat (limited to 'src/server/game/Server')
-rw-r--r--src/server/game/Server/Packets/ChatPackets.cpp12
-rw-r--r--src/server/game/Server/Packets/ChatPackets.h11
-rw-r--r--src/server/game/Server/Protocol/Opcodes.cpp2
3 files changed, 24 insertions, 1 deletions
diff --git a/src/server/game/Server/Packets/ChatPackets.cpp b/src/server/game/Server/Packets/ChatPackets.cpp
index 44df88257ab..260770e65fe 100644
--- a/src/server/game/Server/Packets/ChatPackets.cpp
+++ b/src/server/game/Server/Packets/ChatPackets.cpp
@@ -221,3 +221,15 @@ WorldPacket const* WorldPackets::Chat::ChatPlayerNotfound::Write()
return &_worldPacket;
}
+
+WorldPacket const* WorldPackets::Chat::ChatServerMessage::Write()
+{
+ _worldPacket << MessageID;
+
+ _worldPacket.WriteBits(StringParam.length(), 11);
+ _worldPacket.FlushBits();
+
+ _worldPacket.WriteString(StringParam);
+
+ return &_worldPacket;
+}
diff --git a/src/server/game/Server/Packets/ChatPackets.h b/src/server/game/Server/Packets/ChatPackets.h
index b794d118d88..5bc55952168 100644
--- a/src/server/game/Server/Packets/ChatPackets.h
+++ b/src/server/game/Server/Packets/ChatPackets.h
@@ -239,6 +239,17 @@ namespace WorldPackets
std::string Name;
};
+
+ class ChatServerMessage final : public ServerPacket
+ {
+ public:
+ ChatServerMessage() : ServerPacket(SMSG_CHAT_SERVER_MESSAGE, 4 + 2) { }
+
+ WorldPacket const* Write() override;
+
+ int32 MessageID = 0;
+ std::string StringParam;
+ };
}
}
diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp
index 82af7f986f6..8ef40d9a30b 100644
--- a/src/server/game/Server/Protocol/Opcodes.cpp
+++ b/src/server/game/Server/Protocol/Opcodes.cpp
@@ -1012,7 +1012,7 @@ void OpcodeTable::Initialize()
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_SERVER_MESSAGE, STATUS_UNHANDLED, 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);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHUNKED_PACKET, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);