aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/ChatHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Handlers/ChatHandler.cpp')
-rw-r--r--src/server/game/Handlers/ChatHandler.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp
index 776765cfcbf..bf71dc44379 100644
--- a/src/server/game/Handlers/ChatHandler.cpp
+++ b/src/server/game/Handlers/ChatHandler.cpp
@@ -413,15 +413,16 @@ void WorldSession::HandleChatMessage(ChatMsg type, uint32 lang, std::string msg,
void WorldSession::HandleChatAddonMessageOpcode(WorldPackets::Chat::ChatAddonMessage& chatAddonMessage)
{
- HandleChatAddonMessage(chatAddonMessage.Params.Type, chatAddonMessage.Params.Prefix, chatAddonMessage.Params.Text);
+ HandleChatAddonMessage(chatAddonMessage.Params.Type, chatAddonMessage.Params.Prefix, chatAddonMessage.Params.Text, chatAddonMessage.Params.IsLogged);
}
void WorldSession::HandleChatAddonMessageTargetedOpcode(WorldPackets::Chat::ChatAddonMessageTargeted& chatAddonMessageTargeted)
{
- HandleChatAddonMessage(chatAddonMessageTargeted.Params.Type, chatAddonMessageTargeted.Params.Prefix, chatAddonMessageTargeted.Params.Text, chatAddonMessageTargeted.Target);
+ HandleChatAddonMessage(chatAddonMessageTargeted.Params.Type, chatAddonMessageTargeted.Params.Prefix, chatAddonMessageTargeted.Params.Text,
+ chatAddonMessageTargeted.Params.IsLogged, chatAddonMessageTargeted.Target);
}
-void WorldSession::HandleChatAddonMessage(ChatMsg type, std::string prefix, std::string text, std::string target /*= ""*/)
+void WorldSession::HandleChatAddonMessage(ChatMsg type, std::string prefix, std::string text, bool isLogged, std::string target /*= ""*/)
{
Player* sender = GetPlayer();
@@ -439,7 +440,7 @@ void WorldSession::HandleChatAddonMessage(ChatMsg type, std::string prefix, std:
{
if (sender->GetGuildId())
if (Guild* guild = sGuildMgr->GetGuildById(sender->GetGuildId()))
- guild->BroadcastAddonToGuild(this, type == CHAT_MSG_OFFICER, text, prefix);
+ guild->BroadcastAddonToGuild(this, type == CHAT_MSG_OFFICER, text, prefix, isLogged);
break;
}
case CHAT_MSG_WHISPER:
@@ -454,7 +455,7 @@ void WorldSession::HandleChatAddonMessage(ChatMsg type, std::string prefix, std:
if (!receiver)
break;
- sender->WhisperAddon(text, prefix, receiver);
+ sender->WhisperAddon(text, prefix, isLogged, receiver);
break;
}
// Messages sent to "RAID" while in a party will get delivered to "PARTY"
@@ -478,14 +479,14 @@ void WorldSession::HandleChatAddonMessage(ChatMsg type, std::string prefix, std:
}
WorldPackets::Chat::Chat packet;
- packet.Initialize(type, LANG_ADDON, sender, nullptr, text, 0, "", DEFAULT_LOCALE, prefix);
+ packet.Initialize(type, isLogged ? LANG_ADDON_LOGGED : LANG_ADDON, sender, nullptr, text, 0, "", DEFAULT_LOCALE, prefix);
group->BroadcastAddonMessagePacket(packet.Write(), prefix, true, subGroup, sender->GetGUID());
break;
}
case CHAT_MSG_CHANNEL:
{
if (Channel* chn = ChannelMgr::GetChannelForPlayerByNamePart(target, sender))
- chn->AddonSay(sender->GetGUID(), prefix, text.c_str());
+ chn->AddonSay(sender->GetGUID(), prefix, text.c_str(), isLogged);
break;
}
default: