void Reset() { me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); EventStage = EVENT_STAGE_NONE; PeonEngagedCount = 0; PeonKilledCount = 0; _Reset(); SummonMinions(); events2.Reset(); }
void UpdateAI(const uint32 diff) { if (!UpdateVictim()) return; //ShadowVolley_Timer if (ShadowVolley_Timer <= diff) { DoCast(me->getVictim(), SPELL_SHADOWBOLTVOLLEY); ShadowVolley_Timer = 15000; } else ShadowVolley_Timer -= diff; //BoneShield_Timer if (BoneShield_Timer <= diff) { DoCast(me->getVictim(), SPELL_BONESHIELD); BoneShield_Timer = 45000; } else BoneShield_Timer -= diff; //Minion_Timer if (Minion_Timer <= diff) { //Cast SummonMinions(me->getVictim()); SummonMinions(me->getVictim()); SummonMinions(me->getVictim()); SummonMinions(me->getVictim()); Minion_Timer = 12000; } else Minion_Timer -= diff; //Summon 2 Bone Mages if (!Mages && HealthBelowPct(26)) { //Cast SummonMages(me->getVictim()); SummonMages(me->getVictim()); Mages = true; } DoMeleeAttackIfReady(); }