diff options
author | Shauren <shauren.trinity@gmail.com> | 2017-05-03 13:55:03 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2017-05-03 13:55:03 +0200 |
commit | 0d556dd4af739130d2217ad66b65787bb310c46b (patch) | |
tree | c31c2788868f669656bd27be83f85d238d2b57b3 /src/server/game/Handlers/ChatHandler.cpp | |
parent | c01d28bc3326cbd649e839cb3ede96eb56d85a7e (diff) |
Core/Chat: Fixed addon whispers and channel messages
Closes #19490
Closes #19534
Diffstat (limited to 'src/server/game/Handlers/ChatHandler.cpp')
-rw-r--r-- | src/server/game/Handlers/ChatHandler.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp index 40645bc485a..765a071cf29 100644 --- a/src/server/game/Handlers/ChatHandler.cpp +++ b/src/server/game/Handlers/ChatHandler.cpp @@ -472,10 +472,13 @@ void WorldSession::HandleChatAddonMessage(ChatMsg type, std::string prefix, std: } case CHAT_MSG_WHISPER: { - if (!normalizePlayerName(target)) + /// @todo implement cross realm whispers (someday) + ExtendedPlayerName extName = ExtractExtendedPlayerName(target); + + if (!normalizePlayerName(extName.Name)) break; - Player* receiver = ObjectAccessor::FindPlayerByName(target); + Player* receiver = ObjectAccessor::FindPlayerByName(extName.Name); if (!receiver) break; @@ -510,7 +513,7 @@ void WorldSession::HandleChatAddonMessage(ChatMsg type, std::string prefix, std: case CHAT_MSG_CHANNEL: { if (Channel* chn = ChannelMgr::GetChannelForPlayerByNamePart(target, sender)) - chn->Say(sender->GetGUID(), text.c_str(), uint32(LANG_ADDON)); + chn->AddonSay(sender->GetGUID(), prefix, text.c_str()); break; } default: |