From a1a52b710c6563105d1c24112b1fa2699f3fbdfe Mon Sep 17 00:00:00 2001 From: megamage Date: Sat, 3 Jan 2009 11:02:57 -0600 Subject: *Mangos [7014] Fixed setting initial value of achievement criteria counter, broken after 21df99d7. With that bug players had to complete an achievement criteria n+1 times. By arrai. --HG-- branch : trunk --- src/game/AchievementMgr.cpp | 8 ++++---- src/shared/revision_nr.h | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/game/AchievementMgr.cpp b/src/game/AchievementMgr.cpp index 90ae2dde0a4..44df14bf15b 100644 --- a/src/game/AchievementMgr.cpp +++ b/src/game/AchievementMgr.cpp @@ -788,7 +788,7 @@ AchievementCompletionState AchievementMgr::GetAchievementCompletionState(Achieve void AchievementMgr::SetCriteriaProgress(AchievementCriteriaEntry const* entry, uint32 newValue, bool relative) { - sLog.outString("AchievementMgr::SetCriteriaProgress(%u, %u)", entry->ID, newValue); + sLog.outDetail("AchievementMgr::SetCriteriaProgress(%u, %u)", entry->ID, newValue); CriteriaProgress *progress = NULL; CriteriaProgressMap::iterator iter = m_criteriaProgress.find(entry->ID); @@ -796,7 +796,7 @@ void AchievementMgr::SetCriteriaProgress(AchievementCriteriaEntry const* entry, if(iter == m_criteriaProgress.end()) { progress = &m_criteriaProgress[entry->ID]; - progress->counter = 0; + progress->counter = newValue; progress->date = time(NULL); } else @@ -826,7 +826,7 @@ void AchievementMgr::SetCriteriaProgress(AchievementCriteriaEntry const* entry, void AchievementMgr::CompletedAchievement(AchievementEntry const* achievement) { - sLog.outString("AchievementMgr::CompletedAchievement(%u)", achievement->ID); + sLog.outDetail("AchievementMgr::CompletedAchievement(%u)", achievement->ID); if(achievement->flags & ACHIEVEMENT_FLAG_COUNTER || m_completedAchievements.find(achievement->ID)!=m_completedAchievements.end()) return; @@ -843,6 +843,7 @@ void AchievementMgr::CompletedAchievement(AchievementEntry const* achievement) UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_ACHIEVEMENT); // reward items and titles + // TODO: rewards should be send by mail AchievementReward const* reward = NULL; for (uint32 i=0; iachievementId, reward->titleId[0], reward->titleId[1]); uint32 titleId = reward->titleId[GetPlayer()->GetTeam() == HORDE?0:1]; if(CharTitlesEntry const* titleEntry = sCharTitlesStore.LookupEntry(titleId)) GetPlayer()->SetTitle(titleEntry); diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 4755816010e..087432dda3d 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "7013" + #define REVISION_NR "7014" #endif // __REVISION_NR_H__ -- cgit v1.2.3