Advertisement
Rochet2

Some boss script

Aug 7th, 2012
250
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.47 KB | None | 0 0
  1. -- Mob
  2. local NPC_ID = 50003
  3.  
  4. function Boss_Spawn(pUnit, event)
  5.     pUnit:SetUInt32Value(58, 0) -- Wanted this on spawn?
  6. end
  7.  
  8. function Boss_BeginCombat(pUnit, event)
  9.     pUnit:SendChatMessage(0, 0, "You shouldn't have come today.")
  10.     pUnit:RegisterEvent("Chromie_ArcaneBlast", 5000, 0)
  11.     pUnit:RegisterEvent("Boss_PhaseTwo", 1000, 0)
  12. end
  13.  
  14. function Boss_PhaseTwo (pUnit, Event)
  15.     if pUnit:GetHealthPct() <=75 then
  16.         pUnit:RemoveEvents()
  17.         pUnit:SendChatMessage(0, 0, "I see you're up for a little challenge!")
  18.         pUnit:RegisterEvent("Chromie_ArcaneBlast", 5000, 0)
  19.         pUnit:RegisterEvent("Chromie_ShadowBoltVolley", 10000, 0)
  20.         pUnit:RegisterEvent("Boss_PhaseThree", 1000, 0)
  21.     end
  22. end
  23.  
  24. function Boss_PhaseThree (pUnit, Event)
  25.     if pUnit:GetHealthPct() <=25 then
  26.         pUnit:RemoveEvents()
  27.         pUnit:RegisterEvent("Chromie_Model", 10000, 0)
  28.         pUnit:SetMoveRunFlag(1)
  29.         pUnit:MoveTo(-67.566589, 841.814904, 42.081596, 1.554467)
  30.         pUnit:EnableMoveFly(1)
  31.         pUnit:RegisterEvent("Chromie_ArcaneBlast", 5000, 0)
  32.         pUnit:RegisterEvent("Chromie_ShadowBoltVolley", 10000, 0)
  33.         pUnit:RegisterEvent("Boss_PhaseFour", 1000, 0)
  34.     end
  35. end
  36.  
  37. function Boss_PhaseFour (pUnit, Event)
  38.     if pUnit:GetHealthPct() <=24 then
  39.         pUnit:RemoveEvents()
  40.         pUnit:SetMoveRunFlag(0)
  41.         pUnit:RegisterEvent("Chromie_ArcaneBlast", 5000, 0)
  42.         pUnit:RegisterEvent("Chromie_ShadowBoltVolley", 10000, 0)
  43.         pUnit:RegisterEvent("Boss_PhaseFive", 1000, 0)
  44.     end
  45. end
  46.  
  47. function Boss_PhaseFive (pUnit, Event)
  48.     if pUnit:GetHealthPct() <= 5 then
  49.         pUnit:RemoveEvents()
  50.         pUnit:MoveTo(64.066269, -814.885376, 41.173016, 4.707840)
  51.         pUnit:Demorph()
  52.         pUnit:RegisterEvent("Chromie_ArcaneBlast", 5000, 0)
  53.         pUnit:RegisterEvent("Chromie_ShadowBoltVolley", 10000, 0)
  54.         pUnit:SendChatMessage(0, 0, "I can't.. Keep myself in my dragon form, you're too strong!")
  55.     end
  56. end
  57.  
  58. function Chromie_Model (pUnit, Event)
  59.     pUnit:SetModel(19537)
  60.     pUnit:FullCastSpellOnTarget(15253, pUnit:GetMainTank())
  61. end
  62.  
  63. function Chromie_ArcaneBlast (pUnit, event)
  64.     pUnit:FullCastSpellOnTarget(51797, pUnit:GetMainTank())
  65. end
  66.  
  67. function Chromie_ShadowBoltVolley (pUnit, event)
  68.     pUnit:FullCastSpellOnTarget(15245, pUnit:GetMainTank())
  69. end
  70.  
  71. function Boss_LeaveOrDeath(pUnit, event, pPlayer)
  72.     pUnit:RemoveEvents()
  73. end
  74.  
  75. RegisterUnitEvent(NPC_ID, 1, Boss_BeginCombat) -- on combat
  76. RegisterUnitEvent(NPC_ID, 2, Boss_LeaveOrDeath) -- on leave combat
  77. RegisterUnitEvent(NPC_ID, 4, Boss_LeaveOrDeath) -- on death
  78. RegisterUnitEvent(NPC_ID, 18, Boss_Spawn) -- on spawn
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement