aboutsummaryrefslogtreecommitdiff
path: root/src/game
diff options
context:
space:
mode:
Diffstat (limited to 'src/game')
-rw-r--r--src/game/AchievementMgr.h2
-rw-r--r--src/game/DBCStores.cpp1
-rw-r--r--src/game/DBCStores.h1
-rw-r--r--src/game/Player.cpp7
-rw-r--r--src/game/Player.h5
5 files changed, 13 insertions, 3 deletions
diff --git a/src/game/AchievementMgr.h b/src/game/AchievementMgr.h
index 6f30dbfa446..5020539bb5c 100644
--- a/src/game/AchievementMgr.h
+++ b/src/game/AchievementMgr.h
@@ -234,6 +234,7 @@ class AchievementMgr
void SaveToDB();
void ResetAchievementCriteria(AchievementCriteriaTypes type, uint32 miscvalue1=0, uint32 miscvalue2=0);
void UpdateAchievementCriteria(AchievementCriteriaTypes type, uint32 miscvalue1=0, uint32 miscvalue2=0, Unit *unit=NULL, uint32 time=0);
+ void CompletedAchievement(AchievementEntry const* entry);
void CheckAllAchievementCriteria();
void SendAllAchievementData();
void SendRespondInspectAchievements(Player* player);
@@ -245,7 +246,6 @@ class AchievementMgr
void SendCriteriaUpdate(uint32 id, CriteriaProgress const* progress);
void SetCriteriaProgress(AchievementCriteriaEntry const* entry, uint32 changeValue, ProgressType ptype = PROGRESS_SET);
void CompletedCriteriaFor(AchievementEntry const* achievement);
- void CompletedAchievement(AchievementEntry const* entry);
bool IsCompletedCriteria(AchievementCriteriaEntry const* criteria, AchievementEntry const* achievement);
bool IsCompletedAchievement(AchievementEntry const* entry);
void CompleteAchievementsWithRefs(AchievementEntry const* entry);
diff --git a/src/game/DBCStores.cpp b/src/game/DBCStores.cpp
index d35087c324a..42780870499 100644
--- a/src/game/DBCStores.cpp
+++ b/src/game/DBCStores.cpp
@@ -696,3 +696,4 @@ TRINITY_DLL_SPEC DBCStorage <ItemEntry> const* GetItemDisplayStore()
TRINITY_DLL_SPEC DBCStorage <CreatureDisplayInfoEntry> const* GetCreatureDisplayStore() { return &sCreatureDisplayInfoStore; }
TRINITY_DLL_SPEC DBCStorage <EmotesEntry> const* GetEmotesStore() { return &sEmotesStore; }
TRINITY_DLL_SPEC DBCStorage <EmotesTextEntry> const* GetEmotesTextStore() { return &sEmotesTextStore; }
+TRINITY_DLL_SPEC DBCStorage <AchievementEntry> const* GetAchievementStore() { return &sAchievementStore; }
diff --git a/src/game/DBCStores.h b/src/game/DBCStores.h
index a423cd0bfc8..fc47568e6a5 100644
--- a/src/game/DBCStores.h
+++ b/src/game/DBCStores.h
@@ -158,4 +158,5 @@ TRINITY_DLL_SPEC DBCStorage <ItemEntry> const* GetItemDisplaySt
TRINITY_DLL_SPEC DBCStorage <CreatureDisplayInfoEntry> const* GetCreatureDisplayStore();
TRINITY_DLL_SPEC DBCStorage <EmotesEntry> const* GetEmotesStore();
TRINITY_DLL_SPEC DBCStorage <EmotesTextEntry> const* GetEmotesTextStore();
+TRINITY_DLL_SPEC DBCStorage <AchievementEntry> const* GetAchievementStore();
#endif
diff --git a/src/game/Player.cpp b/src/game/Player.cpp
index a4f88581dca..8a3a4bffd93 100644
--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -20725,7 +20725,12 @@ void Player::HandleFall(MovementInfo const& movementInfo)
void Player::UpdateAchievementCriteria( AchievementCriteriaTypes type, uint32 miscvalue1/*=0*/, uint32 miscvalue2/*=0*/, Unit *unit/*=NULL*/, uint32 time/*=0*/ )
{
- GetAchievementMgr().UpdateAchievementCriteria(type, miscvalue1,miscvalue2,unit,time);
+ GetAchievementMgr().UpdateAchievementCriteria(type, miscvalue1, miscvalue2, unit, time);
+}
+
+void Player::CompletedAchievement(AchievementEntry const* entry)
+{
+ GetAchievementMgr().CompletedAchievement(entry);
}
void Player::LearnTalent(uint32 talentId, uint32 talentRank)
diff --git a/src/game/Player.h b/src/game/Player.h
index 9f67fa6ff81..a63cb719d6f 100644
--- a/src/game/Player.h
+++ b/src/game/Player.h
@@ -2144,8 +2144,11 @@ class TRINITY_DLL_SPEC Player : public Unit
void ResyncRunes(uint8 count);
void AddRunePower(uint8 index);
void InitRunes();
+
AchievementMgr& GetAchievementMgr() { return m_achievementMgr; }
- void UpdateAchievementCriteria(AchievementCriteriaTypes type, uint32 miscvalue1=0, uint32 miscvalue2=0, Unit *unit=NULL, uint32 time=0);
+ void UpdateAchievementCriteria(AchievementCriteriaTypes type, uint32 miscvalue1 = 0, uint32 miscvalue2 = 0, Unit *unit = NULL, uint32 time = 0);
+ void CompletedAchievement(AchievementEntry const* entry);
+
bool HasTitle(uint32 bitIndex);
bool HasTitle(CharTitlesEntry const* title) { return HasTitle(title->bit_index); }
void SetTitle(CharTitlesEntry const* title, bool lost = false);