diff options
author | Traesh <traesh@farahlon.com> | 2017-03-21 18:14:23 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2017-03-21 18:14:23 +0100 |
commit | 9cc5273cd27069d7abb8538eca20f429801b6f00 (patch) | |
tree | 2325cfc80cb3c6b9ae4ae907a2abc284d61bb0fa /src/server/game/Scripting/ScriptMgr.h | |
parent | 024ae15681736db1adea3ac82f666d725d931e6c (diff) |
Core/AreaTriggers: Areatrigger rework script system + fix priest angelic feather
Closes #19171
Diffstat (limited to 'src/server/game/Scripting/ScriptMgr.h')
-rw-r--r-- | src/server/game/Scripting/ScriptMgr.h | 34 |
1 files changed, 4 insertions, 30 deletions
diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h index 09292747668..f4cbfff2c47 100644 --- a/src/server/game/Scripting/ScriptMgr.h +++ b/src/server/game/Scripting/ScriptMgr.h @@ -29,6 +29,7 @@ class AccountMgr; class AreaTrigger; +class AreaTriggerAI; class AuctionHouseObject; class Aura; class AuraScript; @@ -849,29 +850,9 @@ class TC_GAME_API AreaTriggerEntityScript : public ScriptObject AreaTriggerEntityScript(const char* name); public: - // Called when the AreaTrigger has just been initialized, just before added to map - virtual void OnInitialize(AreaTrigger* /*areaTrigger*/) { } - // Called when the AreaTrigger has just been created - virtual void OnCreate(AreaTrigger* /*areaTrigger*/) { } - - // Called on each AreaTrigger update - virtual void OnUpdate(AreaTrigger* /*areaTrigger*/, uint32 /*diff*/) { } - - // Called when the AreaTrigger reach splineIndex - virtual void OnSplineIndexReached(AreaTrigger* /*areaTrigger*/, int /*splineIndex*/) { } - - // Called when the AreaTrigger reach its destination - virtual void OnDestinationReached(AreaTrigger* /*areaTrigger*/) { } - - // Called when an unit enter the AreaTrigger - virtual void OnUnitEnter(AreaTrigger* /*areaTrigger*/, Unit* /*unit*/) { } - - // Called when an unit exit the AreaTrigger, or when the AreaTrigger is removed - virtual void OnUnitExit(AreaTrigger* /*areaTrigger*/, Unit* /*unit*/) { } - - // Called when the AreaTrigger is removed - virtual void OnRemove(AreaTrigger* /*areaTrigger*/) { } + // Called when a AreaTriggerAI object is needed for the areatrigger. + virtual AreaTriggerAI* GetAI(AreaTrigger* /*at*/) const { return nullptr; } }; class TC_GAME_API SceneScript : public ScriptObject @@ -1174,14 +1155,7 @@ class TC_GAME_API ScriptMgr public: /* AreaTriggerEntityScript */ - void OnAreaTriggerEntityInitialize(AreaTrigger* areaTrigger); - void OnAreaTriggerEntityCreate(AreaTrigger* areaTrigger); - void OnAreaTriggerEntityUpdate(AreaTrigger* areaTrigger, uint32 diff); - void OnAreaTriggerEntitySplineIndexReached(AreaTrigger* areaTrigger, int splineIndex); - void OnAreaTriggerEntityDestinationReached(AreaTrigger* areaTrigger); - void OnAreaTriggerEntityUnitEnter(AreaTrigger* areaTrigger, Unit* unit); - void OnAreaTriggerEntityUnitExit(AreaTrigger* areaTrigger, Unit* unit); - void OnAreaTriggerEntityRemove(AreaTrigger* areaTrigger); + AreaTriggerAI* GetAreaTriggerAI(AreaTrigger* areaTrigger); public: /* SceneScript */ void OnSceneStart(Player* player, uint32 sceneInstanceID, SceneTemplate const* sceneTemplate); |