aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Scripting/ScriptMgr.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Scripting/ScriptMgr.h')
-rw-r--r--src/server/game/Scripting/ScriptMgr.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h
index eea4d7cc39c..fb1e8668558 100644
--- a/src/server/game/Scripting/ScriptMgr.h
+++ b/src/server/game/Scripting/ScriptMgr.h
@@ -33,6 +33,7 @@ class Battleground;
class BattlegroundMap;
class Channel;
class ChatCommand;
+class Conversation;
class Creature;
class CreatureAI;
class DynamicObject;
@@ -859,6 +860,17 @@ class TC_GAME_API AreaTriggerEntityScript : public ScriptObject
virtual AreaTriggerAI* GetAI(AreaTrigger* /*at*/) const { return nullptr; }
};
+class TC_GAME_API ConversationScript : public ScriptObject
+{
+ protected:
+ ConversationScript(char const* name);
+
+ public:
+
+ // Called when Conversation is created but not added to Map yet.
+ virtual void OnConversationCreate(Conversation* /*conversation*/, Unit* /*creator*/) { }
+};
+
class TC_GAME_API SceneScript : public ScriptObject
{
protected:
@@ -1161,7 +1173,12 @@ class TC_GAME_API ScriptMgr
AreaTriggerAI* GetAreaTriggerAI(AreaTrigger* areaTrigger);
+ public: /* ConversationScript */
+
+ void OnConversationCreate(Conversation* conversation, Unit* creator);
+
public: /* SceneScript */
+
void OnSceneStart(Player* player, uint32 sceneInstanceID, SceneTemplate const* sceneTemplate);
void OnSceneTrigger(Player* player, uint32 sceneInstanceID, SceneTemplate const* sceneTemplate, std::string const& triggerName);
void OnSceneCancel(Player* player, uint32 sceneInstanceID, SceneTemplate const* sceneTemplate);