Share Pastebin
Guest
Public paste!

boss script

By: a guest | Mar 21st, 2010 | Syntax: Lua | Size: 5.39 KB | Hits: 54 | Expires: Never
Copy text to clipboard
  1. local NPC_id = 548917
  2.  
  3. function mage_frost(Unit, event) -- ice phase
  4. Unit:RegisterEvent("Cone of cold", 0000)
  5. Unit:RegisterEvent("blizzard", 1200)
  6. Unit:RegisterEvent("frost nova", 0000)
  7. Unit:RegisterEvent(548917, 1, "Mage_OnCombat")
  8. Unit:RegisterEvent(548917, 2, "Mage_OnLeaveCombat")
  9. Unit:RegisterEvent(548917, 3, "Mage_OnKilledTarget")
  10. Unit:RegisterEvent(548917, 4, "Mage_OnDeath")
  11. end
  12.  
  13. function Mage_OnCombat(Unit, event)
  14. Unit:SendChatMessage(14, 0, "I will make this quick.")
  15. end
  16.  
  17. function Mage_OnLeaveCombat(Unit, event)
  18. Unit:SendChatMessage(14, 0, "Now, how easy was that?"
  19. end
  20.  
  21. function Mage_OnKilledTarget(Unit, event)
  22. Unit:SendChatMessage(14, 0, "Flatlined.")
  23. end
  24.  
  25. function Mage_OnDeath(14, 0, "Do not take solace in the petty triumph, for i will climb the walls of hell myself to personally kill you myself!")
  26. end
  27.  
  28. function Cone of cold(Unit, event)
  29. Unit:FullCastSpellOnTarget(65023, Unit)
  30. Unit:SendChatMessage(14, 0, "Stay!")
  31. end
  32.  
  33. function blizzard(Unit, event)
  34. local rand = Unit:GetRandomPlayer(0)
  35. if (rand ~= nill)
  36. Unit:FullCastSpellOnTarget(62602,Unit)
  37. Unit:SendChatMessage(14, 0, "This will cool you off!!")
  38. end
  39.  
  40. function frost nova(Unit, event)
  41. Unit:FullCastSpellOnTarget(56935, Unit)
  42. Unit:SendChatMessage(14, 0, "Don't move!")
  43. end
  44. end
  45.  
  46. if (Unit:GetHealthPct() <= 75) then --fire phase
  47. Unit:SendChatMessage(14, 0, "Why do you persist?")
  48. Unit:RegisterEvent("mage_fire", 0000)
  49. end
  50.  
  51. function mage_fire(Unit, event)
  52. Unit:RegisterEvent("Fireball", 0800)
  53. Unit:RegisterEvent("living bomb", 0000)
  54. Unit:RegisterEvent("blast wave", 0000)
  55. Unit:RegisterEvent("pyroblast", 2000)
  56. Unit:RegisterEvent("molten armor", 0000)
  57. Unit:RegisterEvent("fire blast", 0000)
  58. Unit:RegisterEvent("immolation aura", 0000)
  59. end
  60.  
  61. function immolation aura(Unit, event)
  62. Unit:FullCastSpellOnTarget(50589, Unit)
  63. end
  64.  
  65. function molten armor(Unit,event)
  66. Unit:FullCastSpellOnTarget(43044, Unit)
  67. end
  68.  
  69. function Fireball(Unit, event)
  70. Unit:FullCastSpellOnTarget(72163, Unit)
  71. end
  72.  
  73. function living bomb(Unit, event)
  74. local rand = Unit:GetRandomPlayer(0)
  75. if (rand ~= nill)
  76. Unit:FullCastSpellOnTarget(55362, rand)
  77. Unit:SendChatMessage(14, 0, "Run away little girl! Run away!")
  78. end
  79.  
  80. function blast wave(Unit, event)
  81. Unit:FullCastSpellOnTarget(38536, Unit)
  82. Unit:SendChatMessage(14, 0, "disgusting...")
  83. end
  84.  
  85. function pyroblast(Unit, event)
  86. local rand = Unit:GetRandomPlayer(0)
  87. if (rand ~= nill)
  88. Unit:FullCastSpellOnTarget(64698, Unit)
  89. Unit:SendChatMessage(14, 0, "Dont' move....This will only hurt a little..")
  90. end
  91.  
  92. function fire blast(Unit, event)
  93. Unit:FullCastSpellOnTarget(20679, Unit)
  94. end
  95.  
  96. if (Unit:GetHealthPct() <= 50) then -- arcane phase
  97. Unit:SendChatMessage(14, 0, "What is this? no mortal has ever gotten this far!")
  98. Unit:RegisterEvent("mage_arcane", 0000)
  99. end
  100.  
  101. function mage_arcane(Unit, event)
  102. Unit:RegisterEvent("arcane blast", 1000)
  103. Unit:RegisterEvent("arcane explosion", 5000)
  104. Unit:RegisterEvent("mage armor", 0000)
  105. Unit:RegisterEvent("arcane barrage", 0500)
  106. Unit:RegisterEvent("arcane missiles", 0000)
  107. Unit:RegisterEvent("mana drain", 0800)
  108. Unit:RegisterEvent("mirror image", 0000)
  109. end
  110.  
  111. function mage armor(Unit, event)
  112. Unit:FullCastSpellOnTarget(43024, Unit)
  113. Unit:sendChatMessage(14, 0, "You will not prevail!")
  114. end
  115.  
  116. function arcane blast(Unit, event)
  117. Unit:FullCastSpellOnTarget(65791, event)
  118. end
  119.  
  120. function arcane explosion(Unit, event)
  121. Unit:FullCastSpellOnTarget(29973, Unit)
  122. Unit:SendChatMessage(14, 0, "I suggest you run away!")
  123. end
  124.  
  125. function arcane barrage(Unit, event)
  126. local rand = Unit:GetRandomPlayer(0)
  127. if (rand ~= nill)
  128. Unit:FullCastSpellOnTarget(67996, Unit)
  129. end
  130.  
  131. function arcane missiles(Unit, event)
  132. local rand = Unit:GetRandomPlayer(0)
  133. if (rand ~= nill)
  134. Unit:FullCastSpellOnTarget(42846,Unit)
  135. end
  136.  
  137. function mana drain(Unit, event)
  138. local rand = Unit:GetRandomPlayer(0)
  139. if (rand ~= nill)
  140. Unit:FullCastSpellOnTarget(8129, event)
  141. Unit:SendChatMessage(14, 0, "No more spells for you!")
  142. end
  143.  
  144. function mirror image(Unit, event)
  145. Unit:FullCastSpellOnTarget(58832, event)
  146. Unit:SendChatMessage(14, 0, "Where am I? HAHAHAHAHA!")
  147. end
  148. end
  149. end
  150. end
  151. end
  152. end
  153.  
  154. if (Unit:GetHealthPct() <= 25) then --last phase
  155. Unit:RegisterEvent("last_phase", 0000)
  156. end
  157.  
  158. function last_phase(Unit, event)
  159. Unit:RegisterEvent("gravity well", 0600)
  160. Unit:RegisterEvent("polymorph", 1000)
  161. Unit:RegisterEvent("time_stop", 1000)
  162. Unit:RegisterEvent("firebomb", 1500)
  163. Unit:RegisterEvent("thorns", 0000)--25777
  164. Unit:RegisterEvent("gravity bomb", 0500)--63025
  165. end
  166.  
  167. function thorns(Unit, event)
  168. Unit:FullCastSpellOnTarget(25777, Unit)
  169. end
  170.  
  171. function gravity well(Unit, event)
  172. Unit:SendChatMessage(14,0, "Nautious? I thought so")
  173. Unit:FullCastSpellOnTarget(44226, Unit)
  174. end
  175.  
  176. function polymorph(Unit, event)
  177. Unit:SendchatMessage(14, 0, "Oh, dear. It seems you have turned into a sheep.")
  178. local rand = Unit:GetRandomPlayer(0)
  179. if (rand ~= nill)
  180. Unit:FullCastSpellOnTarget(46280, Unit)
  181. end
  182.  
  183. function time_stop(Unit, event)
  184. Unit:SenchChatMessage(14, 0, "stop. Now")
  185. Unit:FullCastSpellOnTarget(47736, Unit)
  186. end
  187.  
  188. function firebomb(Unit, event)
  189. local rand = Unit:GetRandomPlayer(0)
  190. if (rand ~= nill)
  191. Unit:FullCastSpellOnTarget(47773, Unit)
  192. end
  193.  
  194. function gravity bomb(Unit, event)
  195. local rand = Unit:GetRandomPlayer(0)
  196. if (rand ~= nill)
  197. Unit:SendChatMessage(14, 0, "for the last time. Run away")
  198. Unit:FullCastSpellOnTarget(63025, Unit)
  199. Unit:RemoveEvents()
  200. end
  201. end
  202. end
  203. end
  204. end
  205. end
  206. end