Merge pull request #13017 from DDuarte/guild_achiev_tracking

Core/Guild: Only send achievement criteria updates to players that requested them.
This commit is contained in:
Duarte Duarte committed 2014-09-03 01:43:06 +01:00
commit fcca6ea6eb
6 files changed
+40 -2

No files matched your search

+16
View File
@@ -829,3 +829,19 @@ void WorldSession::HandleGuildSetGuildMaster(WorldPacket& recvPacket)
if (Guild* guild = GetPlayer()->GetGuild())
guild->HandleSetNewGuildMaster(this, playerName);
}
void WorldSession::HandleGuildSetAchievementTracking(WorldPacket& recvPacket)
{
uint32 count = recvPacket.ReadBits(24);
std::set<uint32> criteriaIds;
for (int i = 0; i < count; ++i)
{
uint32 criteriaId;
recvPacket >> criteriaId;
criteriaIds.insert(criteriaId);
}
if (Guild* guild = GetPlayer()->GetGuild())
guild->HandleSetAchievementTracking(this, criteriaIds);
}