Code:
function Demon_boss_enrage(Unit, event)
if Unit:GetHealthPct() < 40 then
Unit:RemoveEvents()
Unit:SendChatMessage(11,0,"My time is valuable mortals!")
Unit:SendChatMessage(11,0,"Taste the Power of The Legion and all Within!")
Unit:PlaySoundToSet(11273)
Unit:CastSpell(33653)
Unit:CastSpell(36900)
end
end
function Wave_spawn_0(pUnit, event)
if Unit:GetHealthPct() < 90 then
Unit:RemoveEvents()
Unit:SendChatMessage(12, 0, "Demons unite and Attack!!")
x = Unit:GetX()
y = Unit:GetY()
z = Unit:GetZ()
o = Unit:GetO()
Unit:SpawnCreature(4, x + 3, y + 3, z, o, 17, 100000)
Unit:SpawnCreature(4, x - 3, y + 3, z, o, 17, 100000)
Unit:SpawnCreature(4, x + 3, y - 3, z, o, 17, 100000)
Unit:SpawnCreature(4, x - 3, y - 3, z, o, 17, 100000)
Unit:RegisterEvent("Wave_spawn_1",1000, 0)
end
end
function Wave_spawn_1(Unit, event)
if Unit:GetHealthPct() < 75 then
Unit:RemoveEvents()
Unit:SendChatMessage(12, 0, "Destroy the Usurpers")
x = Unit:GetX()
y = Unit:GetY()
z = Unit:GetZ()
o = Unit:GetO()
Unit:SpawnCreature(6, x + 3, y + 3, z, o, 17, 100000)
Unit:SpawnCreature(6, x - 3, y + 3, z, o, 17, 100000)
Unit:SpawnCreature(6, x + 3, y - 3, z, o, 17, 100000)
Unit:SpawnCreature(6, x - 3, y - 3, z, o, 17, 100000)
Unit:RegisterEvent("Wave_spawn_2",1000, 0)
end
end
function Wave_spawn_2(Unit, event)
if Unit:GetHealthPct() < 50 then
Unit:RemoveEvents()
Unit:SendChatMessage(12, 0, "Why do you pry on?")
x = Unit:GetX()
y = Unit:GetY()
z = Unit:GetZ()
o = Unit:GetO()
Unit:SpawnCreature(3, x + 3, y + 3, z, o, 17, 100000)
Unit:SpawnCreature(3, x - 3, y + 3, z, o, 17, 100000)
Unit:SpawnCreature(3, x + 3, y - 3, z, o, 17, 100000)
Unit:SpawnCreature(3, x - 3, y - 3, z, o, 17, 100000)
Unit:RegisterEvent("Wave_spawn_3",1000, 0)
end
end
function Wave_spawn_3(Unit, event)
if Unit:GetHealthPct() < 25 then
Unit:RemoveEvents()
Unit:SendChatMessage(12, 0, "I WILL NOT BE DEFEATED!")
x = Unit:GetX()
y = Unit:GetY()
z = Unit:GetZ()
o = Unit:GetO()
Unit:SpawnCreature(25, x + 3, y + 3, z, o, 17, 100000)
Unit:SpawnCreature(25, x - 3, y + 3, z, o, 17, 100000)
Unit:SpawnCreature(25, x + 3, y - 3, z, o, 17, 100000)
Unit:SpawnCreature(25, x - 3, y - 3, z, o, 17, 100000)
end
end
function wave1_boss_onCombat (pUnit, Event)
pUnit:RegisterEvent("fire_ball_1",1000, 0)
end
end
function fire_ball_1 (pUnit, Event)
if pUnit:GetHealthPct() < 90 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(33938, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("fire_ball_2",1000, 0)
end
end
function fire_ball_2 (pUnit, Event)
if pUnit:GetHealthPct() < 80 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(33938, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("fire_ball_3",1000, 0)
end
end
function fire_ball_3 (pUnit, Event)
if pUnit:GetHealthPct() < 70 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(33938, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("fire_ball_4",1000, 0)
end
end
function fire_ball_4 (pUnit, Event)
if pUnit:GetHealthPct() < 60 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(33938, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("fire_ball_5",1000, 0)
end
end
function fire_ball_5 (pUnit, Event)
if pUnit:GetHealthPct() < 50 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(33938, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("fire_ball_6",1000, 0)
end
end
function fire_ball_6 (pUnit, Event)
if pUnit:GetHealthPct() < 40 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(33938, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("fire_ball_7",1000, 0)
end
end
function fire_ball_7 (pUnit, Event)
if pUnit:GetHealthPct() < 30 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(33938, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("fire_ball_8",1000, 0)
end
end
function fire_ball_8 (pUnit, Event)
if pUnit:GetHealthPct() < 20 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(33938, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("fire_ball_9",1000, 0)
end
end
function fire_ball_9 (pUnit, Event)
if pUnit:GetHealthPct() < 10 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(33938, pUnit:GetRandomPlayer(0))
end
end
function wave2_boss_onCombat (pUnit, Event)
pUnit:RegisterEvent("void_bolt_1",1000, 0)
end
end
function void_bolt_1 (pUnit, Event)
if pUnit:GetHealthPct() < 90 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(39252, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("void_bolt_2",1000, 0)
end
end
function void_bolt_2 (pUnit, Event)
if pUnit:GetHealthPct() < 80 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(39252, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("void_bolt_3",1000, 0)
end
end
function void_bolt_3 (pUnit, Event)
if pUnit:GetHealthPct() < 70 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(39252, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("void_bolt_4",1000, 0)
end
end
function void_bolt_4 (pUnit, Event)
if pUnit:GetHealthPct() < 60 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(39252, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("void_bolt_5",1000, 0)
end
end
function void_bolt_5 (pUnit, Event)
if pUnit:GetHealthPct() < 50 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(39252, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("void_bolt_6",1000, 0)
end
end
function void_bolt_6 (pUnit, Event)
if pUnit:GetHealthPct() < 40 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(39252, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("void_bolt_7",1000, 0)
end
end
function void_bolt_7 (pUnit, Event)
if pUnit:GetHealthPct() < 30 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(39252, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("void_bolt_8",1000, 0)
end
end
function void_bolt_8 (pUnit, Event)
if pUnit:GetHealthPct() < 20 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(39252, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("void_bolt_9",1000, 0)
end
end
function void_bolt_9 (pUnit, Event)
if pUnit:GetHealthPct() < 10 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(39252, pUnit:GetRandomPlayer(0))
end
end
function wave3_boss_onCombat (pUnit, Event)
pUnit:RegisterEvent("infernal_1",1000, 0)
end
end
function infernal_1 (pUnit, Event)
if pUnit:GetHealthPct() < 90 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(43438, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("infernal_2",1000, 0)
end
end
function infernal_2 (pUnit, Event)
if pUnit:GetHealthPct() < 80 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(43438, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("infernal_3",1000, 0)
end
end
function infernal_3 (pUnit, Event)
if pUnit:GetHealthPct() < 70 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(43438, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("infernal_4",1000, 0)
end
end
function infernal_4 (pUnit, Event)
if pUnit:GetHealthPct() < 60 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(43438, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("infernal_5",1000, 0)
end
end
function infernal_5 (pUnit, Event)
if pUnit:GetHealthPct() < 50 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(43438, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("infernal_6",1000, 0)
end
end
function infernal_6 (pUnit, Event)
if pUnit:GetHealthPct() < 40 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(43438, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("infernal_7",1000, 0)
end
end
function infernal_7 (pUnit, Event)
if pUnit:GetHealthPct() < 30 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(43438, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("infernal_8",1000, 0)
end
end
function infernal_8 (pUnit, Event)
if pUnit:GetHealthPct() < 20 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(43438, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("infernal_9",1000, 0)
end
end
function infernal_9 (pUnit, Event)
if pUnit:GetHealthPct() < 10 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(43438, pUnit:GetRandomPlayer(0))
end
end
function wave4_boss_onCombat (pUnit, Event)
pUnit:RegisterEvent("doomguard_1",1000, 0)
end
end
function doomguard_1 (pUnit, Event)
if pUnit:GetHealthPct() < 90 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(31972, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("doomguard_2",1000, 0)
end
end
function doomguard_2 (pUnit, Event)
if pUnit:GetHealthPct() < 80 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(31972, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("doomguard_3",1000, 0)
end
end
function doomguard_3 (pUnit, Event)
if pUnit:GetHealthPct() < 70 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(31972, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("doomguard_4",1000, 0)
end
end
function doomguard_4 (pUnit, Event)
if pUnit:GetHealthPct() < 60 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(31972, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("doomguard_5",1000, 0)
end
end
function doomguard_5 (pUnit, Event)
if pUnit:GetHealthPct() < 50 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(31972, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("doomguard_6",1000, 0)
end
end
function doomguard_6 (pUnit, Event)
if pUnit:GetHealthPct() < 40 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(31972, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("doomguard_7",1000, 0)
end
end
function doomguard_7 (pUnit, Event)
if pUnit:GetHealthPct() < 30 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(31972, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("doomguard_8",1000, 0)
end
end
function doomguard_8 (pUnit, Event)
if pUnit:GetHealthPct() < 20 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(31972, pUnit:GetRandomPlayer(0))
pUnit:RegisterEvent("doomguard_9",1000, 0)
end
end
function doomguard_9 (pUnit, Event)
if pUnit:GetHealthPct() < 10 then
pUnit:PlaySoundToSet(11263)
pUnit:FullCastSpellOnTarget(31972, pUnit:GetRandomPlayer(0))
end
end
function Near_Death_boss(pUnit, event)
if pUnit:GetHealthPct() < 10 then
pUnit:CastSpell(38916)
pUnit:CastSpell(40506)
pUnit:SendChatMessage(11,0,"You may be close to defeating me but I'll never die to mortals such as yourselves")
pUnit:FullCastSpellOnTarget(40647, pUnit:GetRandomPlayer(0))
end
end
function Demon_Boss_onCombat (pUnit, Event)
pUnit:PlaySoundToSet(11263)
pUnit:SendChatMessage(11, 0, "Time to die meddlers")
pUnit:RegisterEvent("Demon_boss_enrage",1000,0)
pUnit:RegisterEvent("Wave_spawn_0",1000, 0)
end
end
function Demon_boss_onLeaveCombat(pUnit, Event)
pUnit:SendChatMessage(11, 0, "DO NOT WASTE MY TIME AGAIN")
pUnit:RemoveAura(33653)
pUnit:RemoveAura(36900)
pUnit:RemoveEvents()
end
end
function Demon_boss_onDeath(pUnit, Event)
pUnit:PlaySoundToSet(11204)
pUnit:SendChatMessage(11,0,"My body has been destroyed but you shall never kill the Legion, Feel my dying power!")
x = pUnit:GetX()
y = pUnit:GetY()
z = pUnit:GetZ()
o = pUnit:GetO()
pUnit:SpawnCreature(4, x + 3, y + 3, z, o, 17, 100000)
pUnit:SpawnCreature(6, x + 3, y + 3, z, o, 17, 100000)
pUnit:SpawnCreature(3, x - 3, y + 3, z, o, 17, 100000)
pUnit:SpawnCreature(25, x + 3, y - 3, z, o, 17, 100000)
pUnit:RemoveAura(33653)
pUnit:RemoveAura(36900)
pUnit:RemoveEvents()
end
end
<eof>
RegisterUnitEvent (5, 1, "Demon_boss_onCombat")
RegisterUnitEvent (5, 2, "Demon_boss_onLeaveCombat")
RegisterUnitEvent (5, 4, "Demon_boss_onDeath")
RegisterUnitEvent (4, 1, "wave1_boss_onCombat")
RegisterUnitEvent (6, 1, "wave2_boss_onCombat")
RegisterUnitEvent (7, 1, "wave3_boss_onCombat")
RegisterUnitEvent (8, 1, "wave4_boss_onCombat")