diff options
author | Shauren <shauren.trinity@gmail.com> | 2012-04-14 17:49:51 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2012-04-14 17:49:51 +0200 |
commit | a3bdaf7e6d614f081ddc073aa6cec3e158f8617f (patch) | |
tree | 2a56a832c3ed0135a8cd41762b9173f055aec04d /src/server/game/Scripting/ScriptMgr.h | |
parent | ab8e69873c23ca48f981930d443509225792a070 (diff) |
Core/Scripts: Added support for creating custom GameObjectAI classes, similar to how creature scripts work.
Diffstat (limited to 'src/server/game/Scripting/ScriptMgr.h')
-rwxr-xr-x | src/server/game/Scripting/ScriptMgr.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h index 3b65a5cf256..6fe058d336a 100755 --- a/src/server/game/Scripting/ScriptMgr.h +++ b/src/server/game/Scripting/ScriptMgr.h @@ -39,6 +39,7 @@ class Creature; class CreatureAI; class DynamicObject; class GameObject; +class GameObjectAI; class Guild; class GridMap; class Group; @@ -471,6 +472,9 @@ class GameObjectScript : public ScriptObject, public UpdatableScript<GameObject> // Called when the game object is damaged (destructible buildings only). virtual void OnDamaged(GameObject* /*go*/, Player* /*player*/) { } + + // Called when a GameObjectAI object is needed for the gameobject. + virtual GameObjectAI* GetAI(GameObject* /*go*/) const { return NULL; } }; class AreaTriggerScript : public ScriptObject @@ -911,6 +915,7 @@ class ScriptMgr void OnGameObjectDestroyed(GameObject* go, Player* player); void OnGameObjectDamaged(GameObject* go, Player* player); void OnGameObjectUpdate(GameObject* go, uint32 diff); + GameObjectAI* GetGameObjectAI(GameObject* go); public: /* AreaTriggerScript */ |