function phase_1(pUnit, Event)
if pUnit:GetHealthPct() < 80 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(35132)
pUnit:RegisterEvent("phase_2",1000, 0)
end
end
function phase_2(pUnit, Event)
if pUnit:GetHealthPct() < 79 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(35132)
pUnit:RegisterEvent("phase_3",1000, 0)
end
end
function phase_3(pUnit, Event)
if pUnit:GetHealthPct() < 78 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(43529)
pUnit:RegisterEvent("phase_4",1000, 0)
end
end
function phase_4(pUnit, Event)
if pUnit:GetHealthPct() < 75 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(35132)
pUnit:RegisterEvent("phase_5",1000, 0)
end
end
function phase_5(pUnit, Event)
if pUnit:GetHealthPct() < 71 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(30330)
pUnit:RegisterEvent("phase_6",1000, 0)
end
end
function phase_6(pUnit, Event)
if pUnit:GetHealthPct() < 68 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(43529)
pUnit:RegisterEvent("phase_7",1000, 0)
end
end
function phase_7(pUnit, Event)
if pUnit:GetHealthPct() < 65 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(37289)
pUnit:RegisterEvent("phase_8",1000, 0)
end
end
function phase_8(pUnit, Event)
if pUnit:GetHealthPct() < 63 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(37289)
pUnit:RegisterEvent("phase_9",1000, 0)
end
end
function phase_9(pUnit, Event)
if pUnit:GetHealthPct() < 60 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(43529)
pUnit:RegisterEvent("phase_10",1000, 0)
end
end
function phase_10(pUnit, Event)
if pUnit:GetHealthPct() < 58 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(43529)
pUnit:RegisterEvent("phase_11",1000, 0)
end
end
function phase_11(pUnit, Event)
if pUnit:GetHealthPct() < 55 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(23331)
pUnit:RegisterEvent("phase_12",1000, 0)
end
end
function phase_12(pUnit, Event)
if pUnit:GetHealthPct() < 54 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(23331)
pUnit:RegisterEvent("phase_13",1000, 0)
end
end
function phase_13(pUnit, Event)
if pUnit:GetHealthPct() < 53 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(35132)
pUnit:RegisterEvent("phase_14",1000, 0)
end
end
function phase_14(pUnit, Event)
if pUnit:GetHealthPct() < 52 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(35132)
pUnit:RegisterEvent("phase_15",1000, 0)
end
end
function phase_15(pUnit, Event)
if pUnit:GetHealthPct() < 50 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(35132)
pUnit:RegisterEvent("phase_16",1000, 0)
end
end
function phase_16(pUnit, Event)
if pUnit:GetHealthPct() < 46 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(35132)
pUnit:RegisterEvent("phase_17",1000, 0)
end
end
function phase_17(pUnit, Event)
if pUnit:GetHealthPct() < 40 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(35132)
pUnit:RegisterEvent("phase_18",1000, 0)
end
end
function phase_18(pUnit, Event)
if pUnit:GetHealthPct() < 35 then
pUnit:RemoveEvents();
pUnit:FullCastSpell(35132)
pUnit:RegisterEvent("phase_19",1000, 0)
end
end
function phase_19(pUnit, Event)
if pUnit:GetHealthPct() < 30 then
pUnit:SpawnCreature(1000009)
pUnit:SpawnCreature(16805)
pUnit:SpawnCreature(16805)
pUnit:SpawnCreature(16805)
pUnit:SpawnCreature(16805)
pUnit:SpawnCreature(16805)
pUnit:SpawnCreature(16805)
pUnit:SpawnCreature(16805)
pUnit:SpawnCreature(16805)
pUnit:RemoveEvents();
pUnit:RegisterEvent("phase_20",1000, 0)
end
end
function boss_start(pUnit, Event)
pUnit:RegisterEvent("phase_1",1000, 0)
end
RegisterUnitEvent(1000011, 1, "boss_start")