aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Scripting/ScriptMgr.h
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2012-04-14 17:49:51 +0200
committerShauren <shauren.trinity@gmail.com>2012-04-14 17:49:51 +0200
commita3bdaf7e6d614f081ddc073aa6cec3e158f8617f (patch)
tree2a56a832c3ed0135a8cd41762b9173f055aec04d /src/server/game/Scripting/ScriptMgr.h
parentab8e69873c23ca48f981930d443509225792a070 (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-xsrc/server/game/Scripting/ScriptMgr.h5
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 */