*Update AI scripts. Use better default AI.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-05-10 22:48:22 -05:00
parent 904300b4c2
commit 82f886e3c1
10 changed files with 219 additions and 104 deletions
@@ -12,6 +12,8 @@
#include "CreatureAI.h"
#include "CreatureAIImpl.h"
class ScriptedInstance;
class SummonList : private std::list<uint64>
{
public:
@@ -216,5 +218,30 @@ struct TRINITY_DLL_DECL NullCreatureAI : public ScriptedAI
void UpdateAI(const uint32) {}
};
struct TRINITY_DLL_DECL BossAI : public ScriptedAI
{
BossAI(Creature *c, uint32 id) : ScriptedAI(c), bossId(id)
, summons(me), instance((ScriptedInstance*)c->GetInstanceData())
{}
uint32 bossId;
EventMap events;
SummonList summons;
ScriptedInstance *instance;
void JustSummoned(Creature *summon);
void SummonedCreatureDespawn(Creature *summon);
void UpdateAI(const uint32 diff) = 0;
void _Reset();
void _EnterCombat();
void _JustDied();
void Reset() { _Reset(); }
void EnterCombat(Unit *who) { _EnterCombat(); }
void JustDied(Unit *killer) { _JustDied(); }
};
#endif