aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/ChatHandler.cpp
diff options
context:
space:
mode:
authorariel- <ariel-@users.noreply.github.com>2016-10-07 00:59:56 -0300
committerGitHub <noreply@github.com>2016-10-07 00:59:56 -0300
commit66688a7855a8862666a39b9a958073aaa2489447 (patch)
treee9efaffe69a0299dc596c254a669ab6d39674688 /src/server/game/Handlers/ChatHandler.cpp
parentce45e1bf95a03be6b1f42c785e4c01dd55999d33 (diff)
Core/Channel: revamp channel system (#17980)
* Core/Channel: change the way channels are stored and sent to client. - Fixes multiple channels per zone when using different locales - Connected clients will receive locally the name of the channel for their apropiate locale (if available) - In other cases default locale name will be sent, so as to prevent breaking channel chat for those players Closes #8411
Diffstat (limited to 'src/server/game/Handlers/ChatHandler.cpp')
-rw-r--r--src/server/game/Handlers/ChatHandler.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp
index 2b1660fef2b..ba5164f9be5 100644
--- a/src/server/game/Handlers/ChatHandler.cpp
+++ b/src/server/game/Handlers/ChatHandler.cpp
@@ -26,6 +26,7 @@
#include "DatabaseEnv.h"
#include "CellImpl.h"
#include "Chat.h"
+#include "Channel.h"
#include "ChannelMgr.h"
#include "GridNotifiersImpl.h"
#include "Group.h"
@@ -461,13 +462,10 @@ void WorldSession::HandleMessagechatOpcode(WorldPacket& recvData)
}
}
- if (ChannelMgr* cMgr = ChannelMgr::forTeam(sender->GetTeam()))
+ if (Channel* chn = ChannelMgr::GetChannelForPlayerByNamePart(channel, sender))
{
- if (Channel* chn = cMgr->GetChannel(channel, sender))
- {
- sScriptMgr->OnPlayerChat(sender, type, lang, msg, chn);
- chn->Say(sender->GetGUID(), msg.c_str(), lang);
- }
+ sScriptMgr->OnPlayerChat(sender, type, lang, msg, chn);
+ chn->Say(sender->GetGUID(), msg.c_str(), lang);
}
break;
}