aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/ChatHandler.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2012-07-17 14:03:00 +0200
committerShauren <shauren.trinity@gmail.com>2012-07-17 14:03:00 +0200
commit19759a139cdcfe4665bc8e397814b5fa81ed7635 (patch)
tree140c3db611fa714408b425cfc50788752530c976 /src/server/game/Handlers/ChatHandler.cpp
parente832f1cd30655c86a76f1690e12d778d625fc14c (diff)
Core/PacketIO: Updated and enabled addon chat messages
Diffstat (limited to 'src/server/game/Handlers/ChatHandler.cpp')
-rwxr-xr-xsrc/server/game/Handlers/ChatHandler.cpp26
1 files changed, 18 insertions, 8 deletions
diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp
index 08d36328cf0..cfc7376a683 100755
--- a/src/server/game/Handlers/ChatHandler.cpp
+++ b/src/server/game/Handlers/ChatHandler.cpp
@@ -554,26 +554,36 @@ void WorldSession::HandleAddonMessagechatOpcode(WorldPacket& recvData)
case CMSG_MESSAGECHAT_ADDON_PARTY:
type = CHAT_MSG_PARTY;
break;
- //case CMSG_MESSAGECHAT_ADDON_RAID:
- // type = CHAT_MSG_RAID;
- // break;
- //case CMSG_MESSAGECHAT_ADDON_WHISPER:
- // type = CHAT_MSG_WHISPER;
- // break;
+ case CMSG_MESSAGECHAT_ADDON_RAID:
+ type = CHAT_MSG_RAID;
+ break;
+ case CMSG_MESSAGECHAT_ADDON_WHISPER:
+ type = CHAT_MSG_WHISPER;
+ break;
default:
sLog->outDetail("HandleAddonMessagechatOpcode: Unknown addon chat opcode (%u)", recvData.GetOpcode());
recvData.hexlike();
return;
}
+ uint32 msgLen = recvData.ReadBits(9);
+ uint32 prefixLen = recvData.ReadBits(5);
std::string message = "";
std::string prefix = "";
std::string targetName = "";
if (type == CHAT_MSG_WHISPER)
- recvData >> prefix >> targetName >> message;
+ {
+ uint32 targetLen = recvData.ReadBits(10);
+ message = recvData.ReadString(msgLen);
+ prefix = recvData.ReadString(prefixLen);
+ targetName = recvData.ReadString(targetLen);
+ }
else
- recvData >> message >> prefix;
+ {
+ message = recvData.ReadString(msgLen);
+ prefix = recvData.ReadString(prefixLen);
+ }
// Logging enabled?
if (sWorld->getBoolConfig(CONFIG_CHATLOG_ADDON))