local NPC_ID = 2
--------------------------------------------------------------------------------------------------------------
-----------
--Spells---
-----------
local function spell_1(eventId, dely, calls, creature)
creature:CastSpell(creature, 47008, true)
end
local function spell_2(eventId, dely, calls, creature)
creature:CastSpell(creature, 88942, true)
end
local function spell_3(eventId, dely, calls, creature)
creature:CastSpell(creature, 88954, true)
end
local function spell_4(eventId, dely, calls, creature)
creature:CastSpell(creature, 88972, true)
end
--------------------------------------------------------------------------------------------------------------
-----------
--Phasen---
-----------
local function TOT(event, delay, pCall, creature, player, killed)
if (creature:GetHealthPct() <= 0) then -- Wenn Boss ToT < 0% Letzter Text
creature:SendUnitYell("Letzer Wunsch :D", 0) --Boss Schreit Text
creature:SetDisplayId(9786) --BOSS ändert sein aussehen
creature:RemoveEvents()
end
end
local function PhaseEnd(event, delay, pCall, creature, player, killed)
if (creature:GetHealthPct() <= 1) then -- Wenn Boss < 1% Letzte Phase Start
creature:RemoveEvents()
creature:SendUnitYell("letzte phase", 0) --Boss Schreit Text
creature:RegisterEvent(spell_1, 15000, 1) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(TOT, 1000, 0)
end
end
local function Phase6(event, delay, pCall, creature)
if (creature:GetHealthPct() <= 15) then -- Wenn Boss < 15% dann phase 2 startet
creature:RemoveEvents()
creature:SendUnitYell("phase 6", 0) --Boss Schreit Text
creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(PhaseEnd, 1000, 0)
end
end
local function Phase5(event, delay, pCall, creature)
if (creature:GetHealthPct() <= 30) then -- Wenn Boss < 30% dann phase 2 startet
creature:RemoveEvents()
creature:SendUnitYell("phase 5", 0) --Boss Schreit Text
creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(Phase6, 1000, 0)
end
end
local function Phase4(event, delay, pCall, creature)
if (creature:GetHealthPct() <= 50) then -- Wenn Boss < 50% dann phase 2 startet
creature:RemoveEvents()
creature:SendUnitYell("phase 4", 0) --Boss Schreit Text
creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(Phase5, 1000, 0)
end
end
local function Phase3(event, delay, pCall, creature)
if (creature:GetHealthPct() <= 60) then -- Wenn Boss < 60% dann phase 2 startet
creature:RemoveEvents()
creature:SendUnitYell("phase 3", 0) --Boss Schreit Text
creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(Phase4, 1000, 0)
end
end
local function Phase2(event, delay, pCall, creature)
if (creature:GetHealthPct() <= 80) then -- Wenn Boss < 75% dann phase 1 startet
creature:RemoveEvents()
creature:SendUnitYell("phase 2", 0) --Boss Schreit Text
creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(Phase3, 1000, 0)
end
end
local function Phase1(event, delay, pCall, creature, player)
if (creature:GetHealthPct() <= 100) then -- Wenn Boss < 100% dann phase 1 startet
creature:RemoveEvents()
creature:SendUnitYell("phase 1", 0) --Boss Schreit Text
creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer)
creature:RegisterEvent(Phase2, 1000, 0)
end
end
--------------------------------------------------------------------------------------------------------------
---------------------------------
--Boss start phase---
---------------------------------
local function OnEnterCombat(event, creature, target, player)
creature:SendUnitYell("erste phase", 0) --Boss Schreit Text
creature:RegisterEvent(Phase1, 1000, 0)
end
--------------------------------------------------------------------------------------------------------------
RegisterCreatureEvent(NPC_ID, 1, OnEnterCombat)
Here is the Simple Code this is not finish
you can the code expand
have fun
Code:local NPC_ID = 2 -------------------------------------------------------------------------------------------------------------- ----------- --Spells--- ----------- local function spell_1(eventId, dely, calls, creature) creature:CastSpell(creature, 47008, true) end local function spell_2(eventId, dely, calls, creature) creature:CastSpell(creature, 88942, true) end local function spell_3(eventId, dely, calls, creature) creature:CastSpell(creature, 88954, true) end local function spell_4(eventId, dely, calls, creature) creature:CastSpell(creature, 88972, true) end -------------------------------------------------------------------------------------------------------------- ----------- --Phasen--- ----------- local function TOT(event, delay, pCall, creature, player, killed) if (creature:GetHealthPct() <= 0) then -- Wenn Boss ToT < 0% Letzter Text creature:SendUnitYell("Letzer Wunsch :D", 0) --Boss Schreit Text creature:SetDisplayId(9786) --BOSS ändert sein aussehen creature:RemoveEvents() end end local function PhaseEnd(event, delay, pCall, creature, player, killed) if (creature:GetHealthPct() <= 1) then -- Wenn Boss < 1% Letzte Phase Start creature:RemoveEvents() creature:SendUnitYell("letzte phase", 0) --Boss Schreit Text creature:RegisterEvent(spell_1, 15000, 1) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(TOT, 1000, 0) end end local function Phase6(event, delay, pCall, creature) if (creature:GetHealthPct() <= 15) then -- Wenn Boss < 15% dann phase 2 startet creature:RemoveEvents() creature:SendUnitYell("phase 6", 0) --Boss Schreit Text creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(PhaseEnd, 1000, 0) end end local function Phase5(event, delay, pCall, creature) if (creature:GetHealthPct() <= 30) then -- Wenn Boss < 30% dann phase 2 startet creature:RemoveEvents() creature:SendUnitYell("phase 5", 0) --Boss Schreit Text creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(Phase6, 1000, 0) end end local function Phase4(event, delay, pCall, creature) if (creature:GetHealthPct() <= 50) then -- Wenn Boss < 50% dann phase 2 startet creature:RemoveEvents() creature:SendUnitYell("phase 4", 0) --Boss Schreit Text creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(Phase5, 1000, 0) end end local function Phase3(event, delay, pCall, creature) if (creature:GetHealthPct() <= 60) then -- Wenn Boss < 60% dann phase 2 startet creature:RemoveEvents() creature:SendUnitYell("phase 3", 0) --Boss Schreit Text creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(Phase4, 1000, 0) end end local function Phase2(event, delay, pCall, creature) if (creature:GetHealthPct() <= 80) then -- Wenn Boss < 75% dann phase 1 startet creature:RemoveEvents() creature:SendUnitYell("phase 2", 0) --Boss Schreit Text creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(Phase3, 1000, 0) end end local function Phase1(event, delay, pCall, creature, player) if (creature:GetHealthPct() <= 100) then -- Wenn Boss < 100% dann phase 1 startet creature:RemoveEvents() creature:SendUnitYell("phase 1", 0) --Boss Schreit Text creature:RegisterEvent(spell_2, 10000, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_3, 20010, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(spell_4, 30030, 0) -- (Event, Zeit ms, Wie offt 0 = immer) creature:RegisterEvent(Phase2, 1000, 0) end end -------------------------------------------------------------------------------------------------------------- --------------------------------- --Boss start phase--- --------------------------------- local function OnEnterCombat(event, creature, target, player) creature:SendUnitYell("erste phase", 0) --Boss Schreit Text creature:RegisterEvent(Phase1, 1000, 0) end -------------------------------------------------------------------------------------------------------------- RegisterCreatureEvent(NPC_ID, 1, OnEnterCombat)