
Untitled
By: a guest on
May 25th, 2012 | syntax:
C++ | size: 1.13 KB | hits: 25 | expires: Never
#include "ScriptPCH.h"
enum Spells
{
SPELL_FROSTBOLT = 1337,
};
enum Yells
{
SAY_RAWR = -1337;
};
class boss_terminator : public CreatureScript
{
public:
boss_terminator() : CreatureScript("boss_terminator") {}
CreatureAI* GetAI(Creature* creature) const
{
return new boss_terminatorAI (creature);
}
struct boss_terminatorAI : public ScriptedAI
{
boss_terminatorAI(Creature* creature) : ScriptedAI(creature), frostbolt(false) {}
bool frostbolt;
void Reset()
{
frostbolt = false;
}
void JustDied(Unit* /*blabla*/)
{
me->MonsterYell(SAY_RAWR, 0, 0);
}
void UpdateAI(const uint32 diff)
{
if (!UpdateVictim())
return;
if (!frostbolt && HealthBelowPct(50))
{
if (Unit* target = SelectTarget(SELECT_TARGET_TOPAGGRO))
me->CastSpell(target, SPELL_FROSTBOLT, true);
frostbolt = true;
}
DoMeleeAttackIfReady();
}
};
};