diff options
Diffstat (limited to 'src/game/UnitAI.h')
-rw-r--r-- | src/game/UnitAI.h | 19 |
1 files changed, 0 insertions, 19 deletions
diff --git a/src/game/UnitAI.h b/src/game/UnitAI.h index c5e02b07d1b..93992724c08 100644 --- a/src/game/UnitAI.h +++ b/src/game/UnitAI.h @@ -17,18 +17,14 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ - #ifndef TRINITY_UNITAI_H #define TRINITY_UNITAI_H - #include "Platform/Define.h" #include <list> #include "Unit.h" - class Unit; class Player; struct AISpellInfoType; - //Selection method used by SelectTarget enum SelectAggroTarget { @@ -38,7 +34,6 @@ enum SelectAggroTarget SELECT_TARGET_NEAREST, SELECT_TARGET_FARTHEST, }; - class TRINITY_DLL_SPEC UnitAI { protected: @@ -48,54 +43,40 @@ class TRINITY_DLL_SPEC UnitAI virtual bool CanAIAttack(const Unit *who) const { return true; } virtual void AttackStart(Unit *); virtual void UpdateAI(const uint32 diff) = 0; - virtual void InitializeAI() { if(!me->isDead()) Reset(); } - virtual void Reset() {}; - // Called when unit is charmed virtual void OnCharmed(bool apply) = 0; - // Pass parameters between AI virtual void DoAction(const int32 param = 0) {} virtual uint32 GetData(uint32 id = 0) { return 0; } virtual void SetData(uint32 id, uint32 value) {} virtual void SetGUID(const uint64 &guid, int32 id = 0) {} virtual uint64 GetGUID(int32 id = 0) { return 0; } - Unit* SelectTarget(SelectAggroTarget target, uint32 position = 0, float dist = 0, bool playerOnly = false, int32 aura = 0); void SelectTargetList(std::list<Unit*> &targetList, uint32 num, SelectAggroTarget target, float dist = 0, bool playerOnly = false, int32 aura = 0); - void AttackStartCaster(Unit *victim, float dist); - void DoCast(uint32 spellId); void DoCast(Unit* victim, uint32 spellId, bool triggered = false); void DoCastVictim(uint32 spellId, bool triggered = false); void DoCastAOE(uint32 spellId, bool triggered = false); - float DoGetSpellMaxRange(uint32 spellId, bool positive = false); - void DoMeleeAttackIfReady(); bool DoSpellAttackIfReady(uint32 spell); - static AISpellInfoType *AISpellInfo; static void FillAISpellInfo(); }; - class TRINITY_DLL_SPEC PlayerAI : public UnitAI { protected: Player* const me; public: explicit PlayerAI(Player *p) : UnitAI((Unit*)p), me(p) {} - void OnCharmed(bool apply); }; - class TRINITY_DLL_SPEC SimpleCharmedAI : public PlayerAI { public: void UpdateAI(const uint32 diff); }; - #endif |