From d015711fbb7a8bf57f7bb64ba8113c942d5125de Mon Sep 17 00:00:00 2001 From: Meji Date: Sun, 9 Jul 2023 11:59:35 +0200 Subject: Core/SAI: Implemented new source type SMART_SCRIPT_TYPE_EVENT (3) (#28816) --- src/server/game/Scripting/ScriptMgr.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/server/game/Scripting/ScriptMgr.h') diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h index 631b5320cd6..f20652607b2 100644 --- a/src/server/game/Scripting/ScriptMgr.h +++ b/src/server/game/Scripting/ScriptMgr.h @@ -990,6 +990,20 @@ class TC_GAME_API WorldStateScript : public ScriptObject virtual void OnValueChange(int32 worldStateId, int32 oldValue, int32 newValue, Map const* map); }; +class TC_GAME_API EventScript : public ScriptObject +{ + protected: + + explicit EventScript(char const* name); + + public: + + ~EventScript(); + + // Called when a game event is triggered + virtual void OnTrigger(WorldObject* object, WorldObject* invoker, uint32 eventId); +}; + // Manages registration, loading, and execution of scripts. class TC_GAME_API ScriptMgr { @@ -1296,6 +1310,10 @@ class TC_GAME_API ScriptMgr void OnWorldStateValueChange(WorldStateTemplate const* worldStateTemplate, int32 oldValue, int32 newValue, Map const* map); + public: /* EventScript */ + + void OnEventTrigger(WorldObject* object, WorldObject* invoker, uint32 eventId); + private: uint32 _scriptCount; bool _scriptIdUpdated; -- cgit v1.2.3