aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Globals/ObjectMgr.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.h')
-rw-r--r--src/server/game/Globals/ObjectMgr.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/server/game/Globals/ObjectMgr.h b/src/server/game/Globals/ObjectMgr.h
index 01b1b87ca68..383ee438335 100644
--- a/src/server/game/Globals/ObjectMgr.h
+++ b/src/server/game/Globals/ObjectMgr.h
@@ -624,6 +624,16 @@ struct CharacterTemplate
typedef std::unordered_map<uint32, CharacterTemplate> CharacterTemplateContainer;
+struct SceneTemplate
+{
+ uint32 SceneId;
+ uint32 PlaybackFlags;
+ uint32 ScenePackageId;
+ uint32 ScriptId;
+};
+
+typedef std::unordered_map<uint32, SceneTemplate> SceneTemplateContainer;
+
enum SkillRangeType
{
SKILL_RANGE_LANGUAGE, // 300..300
@@ -1069,6 +1079,8 @@ class TC_GAME_API ObjectMgr
void LoadTerrainWorldMaps();
void LoadAreaPhases();
+ void LoadSceneTemplates();
+
std::string GeneratePetName(uint32 entry);
uint32 GetBaseXP(uint8 level);
uint32 GetXPForLevel(uint8 level) const;
@@ -1403,6 +1415,15 @@ class TC_GAME_API ObjectMgr
return nullptr;
}
+ SceneTemplate const* GetSceneTemplate(uint32 sceneId) const
+ {
+ auto itr = _sceneTemplateStore.find(sceneId);
+ if (itr != _sceneTemplateStore.end())
+ return &itr->second;
+
+ return nullptr;
+ }
+
private:
// first free id for selected id type
uint32 _auctionId;
@@ -1556,6 +1577,7 @@ class TC_GAME_API ObjectMgr
RealmNameContainer _realmNameStore;
CharacterTemplateContainer _characterTemplateStore;
+ SceneTemplateContainer _sceneTemplateStore;
enum CreatureLinkedRespawnType
{