diff options
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.h')
-rw-r--r-- | src/server/game/Globals/ObjectMgr.h | 22 |
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 { |