aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Globals/ObjectMgr.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.h')
-rwxr-xr-xsrc/server/game/Globals/ObjectMgr.h32
1 files changed, 31 insertions, 1 deletions
diff --git a/src/server/game/Globals/ObjectMgr.h b/src/server/game/Globals/ObjectMgr.h
index 4efbbc7e5f0..13d3a3ec418 100755
--- a/src/server/game/Globals/ObjectMgr.h
+++ b/src/server/game/Globals/ObjectMgr.h
@@ -557,7 +557,27 @@ struct LanguageDesc
};
extern LanguageDesc lang_description[LANGUAGES_COUNT];
- LanguageDesc const* GetLanguageDescByID(uint32 lang);
+LanguageDesc const* GetLanguageDescByID(uint32 lang);
+
+enum EncounterCreditType
+{
+ ENCOUNTER_CREDIT_KILL_CREATURE = 0,
+ ENCOUNTER_CREDIT_CAST_SPELL = 1,
+};
+
+struct DungeonEncounter
+{
+ DungeonEncounter(DungeonEncounterEntry const* _dbcEntry, EncounterCreditType _creditType, uint32 _creditEntry, uint32 _lastEncounterDungeon)
+ : dbcEntry(_dbcEntry), creditType(_creditType), creditEntry(_creditEntry), lastEncounterDungeon(_lastEncounterDungeon) { }
+
+ DungeonEncounterEntry const* dbcEntry;
+ EncounterCreditType creditType;
+ uint32 creditEntry;
+ uint32 lastEncounterDungeon;
+};
+
+typedef std::list<DungeonEncounter const*> DungeonEncounterList;
+typedef UNORDERED_MAP<uint32,DungeonEncounterList> DungeonEncounterMap;
class PlayerDumpReader;
@@ -796,6 +816,14 @@ class ObjectMgr
return NULL;
}
+ DungeonEncounterList const* GetDungeonEncounterList(uint32 mapId, Difficulty difficulty)
+ {
+ UNORDERED_MAP<uint32, DungeonEncounterList>::const_iterator itr = mDungeonEncounters.find(MAKE_PAIR32(mapId, difficulty));
+ if (itr != mDungeonEncounters.end())
+ return &itr->second;
+ return NULL;
+ }
+
void LoadGuilds();
void LoadArenaTeams();
void LoadGroups();
@@ -884,6 +912,7 @@ class ObjectMgr
void LoadGossipMenuItemsLocales();
void LoadPointOfInterestLocales();
void LoadInstanceTemplate();
+ void LoadInstanceEncounters();
void LoadMailLevelRewards();
void LoadVehicleAccessories();
void LoadVehicleScaling();
@@ -1253,6 +1282,7 @@ class ObjectMgr
AreaTriggerMap mAreaTriggers;
AreaTriggerScriptMap mAreaTriggerScripts;
AccessRequirementMap mAccessRequirements;
+ DungeonEncounterMap mDungeonEncounters;
RepRewardRateMap m_RepRewardRateMap;
RepOnKillMap mRepOnKill;