aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Guilds/Guild.cpp
diff options
context:
space:
mode:
authorDDuarte <dnpd.dd@gmail.com>2014-09-03 01:34:57 +0100
committerDDuarte <dnpd.dd@gmail.com>2014-09-03 01:34:57 +0100
commit977592e1379fb47ab207a17b9ed0db090662bfee (patch)
treef6d1fd150d70234ea328e4c07b95dd425d4d7d9e /src/server/game/Guilds/Guild.cpp
parentb4c0d886d8693ad45c7d76f177ef1191eea7e288 (diff)
Core/Net: Implement sending guild challenges rewards and counts
CMSG_GUILD_REQUEST_CHALLENGE_UPDATE & SMSG_GUILD_CHALLENGE_UPDATED Partial implementation, guild challenges are not being tracked yet
Diffstat (limited to 'src/server/game/Guilds/Guild.cpp')
-rw-r--r--src/server/game/Guilds/Guild.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp
index 8cfa6a4e681..31ba9ca2809 100644
--- a/src/server/game/Guilds/Guild.cpp
+++ b/src/server/game/Guilds/Guild.cpp
@@ -2156,6 +2156,28 @@ void Guild::HandleGuildPartyRequest(WorldSession* session)
TC_LOG_DEBUG("guild", "SMSG_GUILD_PARTY_STATE_RESPONSE [%s]", session->GetPlayerInfo().c_str());
}
+void Guild::HandleGuildRequestChallengeUpdate(WorldSession* session)
+{
+ WorldPacket data(SMSG_GUILD_CHALLENGE_UPDATED, 4 * GUILD_CHALLENGES_TYPES * 5);
+
+ for (int i = 0; i < GUILD_CHALLENGES_TYPES; ++i)
+ data << uint32(GuildChallengeXPReward[i]);
+
+ for (int i = 0; i < GUILD_CHALLENGES_TYPES; ++i)
+ data << uint32(GuildChallengeGoldReward[i]);
+
+ for (int i = 0; i < GUILD_CHALLENGES_TYPES; ++i)
+ data << uint32(GuildChallengesPerWeek[i]);
+
+ for (int i = 0; i < GUILD_CHALLENGES_TYPES; ++i)
+ data << uint32(GuildChallengeMaxLevelGoldReward[i]);
+
+ for (int i = 0; i < GUILD_CHALLENGES_TYPES; ++i)
+ data << uint32(0); /// @todo current count
+
+ session->SendPacket(&data);
+}
+
void Guild::SendEventLog(WorldSession* session) const
{
WorldPacket data(SMSG_GUILD_EVENT_LOG_QUERY_RESULT, 1 + m_eventLog->GetSize() * (1 + 8 + 4));