Achievements/Guilds: Fix guild achievement tracking

- This fix a typo on commit TrinityCore@7ec22c5
- This fix update of criteria progress on login

Thanks to @DDuarte for initial commit and help with pull request
Thanks to @Kiritoo for send me sniffs
This commit is contained in:
Dekadence
2014-09-27 14:28:10 +02:00
parent b48ba56efd
commit 5ac63a43fb
5 changed files with 118 additions and 8 deletions

View File

@@ -832,15 +832,15 @@ void WorldSession::HandleGuildSetGuildMaster(WorldPacket& recvPacket)
void WorldSession::HandleGuildSetAchievementTracking(WorldPacket& recvPacket)
{
uint32 count = recvPacket.ReadBits(24);
std::set<uint32> criteriaIds;
std::set<uint32> achievementIds;
for (uint32 i = 0; i < count; ++i)
{
uint32 criteriaId;
recvPacket >> criteriaId;
criteriaIds.insert(criteriaId);
uint32 achievementId;
recvPacket >> achievementId;
achievementIds.insert(achievementId);
}
if (Guild* guild = GetPlayer()->GetGuild())
guild->HandleSetAchievementTracking(this, criteriaIds);
guild->HandleSetAchievementTracking(this, achievementIds);
}