aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Guilds/Guild.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Guilds/Guild.cpp')
-rw-r--r--src/server/game/Guilds/Guild.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp
index 31ba9ca2809..2b0c2be4bbd 100644
--- a/src/server/game/Guilds/Guild.cpp
+++ b/src/server/game/Guilds/Guild.cpp
@@ -1562,6 +1562,12 @@ void Guild::SendGuildRankInfo(WorldSession* session) const
TC_LOG_DEBUG("guild", "SMSG_GUILD_RANK [%s]", session->GetPlayerInfo().c_str());
}
+void Guild::HandleSetAchievementTracking(WorldSession* session, std::set<uint32> const& criteriaIds)
+{
+ if (Member* member = GetMember(session->GetPlayer()->GetGUID()))
+ member->SetTrackedCriteriaIds(criteriaIds);
+}
+
void Guild::HandleSetMOTD(WorldSession* session, std::string const& motd)
{
if (m_motd == motd)
@@ -2625,6 +2631,14 @@ void Guild::BroadcastPacket(WorldPacket* packet) const
player->GetSession()->SendPacket(packet);
}
+void Guild::BroadcastPacketIfTrackingAchievement(WorldPacket* packet, uint32 criteriaId) const
+{
+ for (Members::const_iterator itr = m_members.begin(); itr != m_members.end(); ++itr)
+ if (itr->second->IsTrackingCriteriaId(criteriaId))
+ if (Player* player = itr->second->FindPlayer())
+ player->GetSession()->SendPacket(packet);
+}
+
void Guild::MassInviteToEvent(WorldSession* session, uint32 minLevel, uint32 maxLevel, uint32 minRank)
{
uint32 count = 0;