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, 20 insertions, 2 deletions
diff --git a/src/server/game/Globals/ObjectMgr.h b/src/server/game/Globals/ObjectMgr.h
index b59dad0d71c..649e21dad71 100644
--- a/src/server/game/Globals/ObjectMgr.h
+++ b/src/server/game/Globals/ObjectMgr.h
@@ -88,6 +88,21 @@ struct ScriptInfo
float o;
};
+enum ScriptsType
+{
+ SCRIPTS_FIRST = 1,
+
+ SCRIPTS_QUEST_END = SCRIPTS_FIRST,
+ SCRIPTS_QUEST_START,
+ SCRIPTS_SPELL,
+ SCRIPTS_GAMEOBJECT,
+ SCRIPTS_EVENT,
+ SCRIPTS_WAYPOINT,
+ SCRIPTS_GOSSIP,
+
+ SCRIPTS_LAST
+};
+
typedef std::multimap<uint32, ScriptInfo> ScriptMap;
typedef std::map<uint32, ScriptMap > ScriptMapMap;
typedef std::multimap<uint32, uint32> SpellScriptsMap;
@@ -100,6 +115,9 @@ extern ScriptMapMap sEventScripts;
extern ScriptMapMap sGossipScripts;
extern ScriptMapMap sWaypointScripts;
+std::string GetScriptsTableNameByType(ScriptsType type);
+ScriptMapMap* GetScriptsMapByType(ScriptsType type);
+
struct SpellClickInfo
{
uint32 spellId;
@@ -1041,8 +1059,8 @@ class ObjectMgr
int DBCLocaleIndex;
private:
- void LoadScripts(ScriptMapMap& scripts, char const* tablename);
- void CheckScripts(ScriptMapMap const& scripts,std::set<int32>& ids);
+ void LoadScripts(ScriptsType type);
+ void CheckScripts(ScriptsType type, std::set<int32>& ids);
void LoadCreatureAddons(SQLStorage& creatureaddons, char const* entryName, char const* comment);
void ConvertCreatureAddonAuras(CreatureDataAddon* addon, char const* table, char const* guidEntryStr);
void LoadQuestRelationsHelper(QuestRelations& map,char const* table);