aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Chat/Chat.cpp
diff options
context:
space:
mode:
authorjoschiwald <joschiwald.trinity@gmail.com>2014-12-23 00:06:36 +0100
committerjoschiwald <joschiwald.trinity@gmail.com>2014-12-23 00:06:36 +0100
commit6c6e4d4328526ccfcd9049efbf9033fe47de41a6 (patch)
tree32e7f776afd1b527302f3addd1dde812d84585d8 /src/server/game/Chat/Chat.cpp
parentbf8eff8545d092585a1c710dc0b251b8cd0654bb (diff)
Core/Packets: moved chat packet building function to packet builder class
Diffstat (limited to 'src/server/game/Chat/Chat.cpp')
-rw-r--r--src/server/game/Chat/Chat.cpp58
1 files changed, 3 insertions, 55 deletions
diff --git a/src/server/game/Chat/Chat.cpp b/src/server/game/Chat/Chat.cpp
index cbb0e4683aa..8bc0ac2952b 100644
--- a/src/server/game/Chat/Chat.cpp
+++ b/src/server/game/Chat/Chat.cpp
@@ -212,7 +212,7 @@ void ChatHandler::SendSysMessage(const char *str)
while (char* line = LineFromMessage(pos))
{
- BuildChatPacket(&packet, CHAT_MSG_SYSTEM, LANG_UNIVERSAL, NULL, NULL, line);
+ packet.Initalize(CHAT_MSG_SYSTEM, LANG_UNIVERSAL, nullptr, nullptr, line);
m_session->SendPacket(packet.Write());
}
@@ -230,7 +230,7 @@ void ChatHandler::SendGlobalSysMessage(const char *str)
while (char* line = LineFromMessage(pos))
{
- BuildChatPacket(&packet, CHAT_MSG_SYSTEM, LANG_UNIVERSAL, NULL, NULL, line);
+ packet.Initalize(CHAT_MSG_SYSTEM, LANG_UNIVERSAL, nullptr, nullptr, line);
sWorld->SendGlobalMessage(packet.Write());
}
@@ -248,7 +248,7 @@ void ChatHandler::SendGlobalGMSysMessage(const char *str)
while (char* line = LineFromMessage(pos))
{
- BuildChatPacket(&packet, CHAT_MSG_SYSTEM, LANG_UNIVERSAL, NULL, NULL, line);
+ packet.Initalize(CHAT_MSG_SYSTEM, LANG_UNIVERSAL, nullptr, nullptr, line);
sWorld->SendGlobalGMMessage(packet.Write());
}
@@ -630,58 +630,6 @@ bool ChatHandler::ShowHelpForCommand(ChatCommand* table, const char* cmd)
return ShowHelpForSubCommands(table, "", cmd);
}
-void ChatHandler::BuildChatPacket(WorldPackets::Chat::Chat* packet, ChatMsg chatType, Language language, WorldObject const* sender, WorldObject const* receiver, std::string const& message,
- uint32 achievementId /*= 0*/, std::string const& channelName /*= ""*/, LocaleConstant locale /*= DEFAULT_LOCALE*/, std::string const& addonPrefix /*= ""*/)
-{
- // Clear everything because same packet can be used multiple times
- packet->Reset();
- packet->SenderGUID.Clear();
- packet->SenderAccountGUID.Clear();
- packet->SenderGuildGUID.Clear();
- packet->PartyGUID.Clear();
- packet->TargetGUID.Clear();
- packet->SenderName.clear();
- packet->TargetName.clear();
- packet->ChatFlags = CHAT_FLAG_NONE;
-
- packet->SlashCmd = chatType;
- packet->Language = language;
-
- if (sender)
- {
- packet->SenderGUID = sender->GetGUID();
-
- if (Creature const* creatureSender = sender->ToCreature())
- packet->SenderName = creatureSender->GetNameForLocaleIdx(locale);
-
- if (Player const* playerSender = sender->ToPlayer())
- {
- packet->SenderAccountGUID = playerSender->GetSession()->GetAccountGUID();
- packet->ChatFlags = playerSender->GetChatFlags();
-
- if (Guild const* guild = playerSender->GetGuild())
- packet->SenderGuildGUID = guild->GetGUID();
-
- if (Group const* group = playerSender->GetGroup())
- packet->PartyGUID = group->GetGUID();
- }
- }
-
- if (receiver)
- {
- packet->TargetGUID = receiver->GetGUID();
- if (Creature const* creatureReceiver = receiver->ToCreature())
- packet->TargetName = creatureReceiver->GetNameForLocaleIdx(locale);
- }
-
- packet->SenderVirtualAddress = GetVirtualRealmAddress();
- packet->TargetVirtualAddress = GetVirtualRealmAddress();
- packet->AchievementID = achievementId;
- packet->Channel = channelName;
- packet->Prefix = addonPrefix;
- packet->ChatText = message;
-}
-
Player* ChatHandler::getSelectedPlayer()
{
if (!m_session)