stoneharry

Untitled

Mar 1st, 2013
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 19.66 KB | None | 0 0
  1. -- Scourges Ambush - Caer Darrow Latest Quest.
  2. -- You will have to stay alive to complete the quest.
  3.  
  4. ScourgesAmbush = {} -- Main Table.
  5.  
  6. -- Creatures Death.
  7.  
  8. ScourgesAmbush.ScourgesKilled = 0
  9. ScourgesAmbush.ScourgesLordWave = 0
  10. ScourgesAmbush.ScourgesWaveyTwo = 0
  11. ScourgesAmbush.ScourgesWaveyThree = 0
  12.  
  13. -- Coordonates.
  14.  
  15. -- First Run: 1262.197876, -2561.500732, 110.228584, 3.629264
  16. -- Second Run: 1264.366333, -2569.398193, 110.228584, 5.192202
  17. -- Third Run: 1271.808838, -2571.046631, 110.228996, 5.988852
  18. -- Fourth Run: 1265.707764, -2575.237549, 110.228996, 5.069932
  19.  
  20. -- High Captain Justin Barlett.
  21.  
  22. function ScourgesAmbush.HighCaptainJustinBarlettOnSpawn(pUnit, event)
  23.     ScourgesAmbush.CaptainJustinBarlett = pUnit
  24.     pUnit:RegisterEvent("ScourgesAmbush.HighCaptainHeal", 6000, 0)
  25. end
  26.  
  27. RegisterUnitEvent(30343, 18, "ScourgesAmbush.HighCaptainJustinBarlettOnSpawn")
  28.  
  29. function ScourgesAmbush.HighCaptainHeal(pUnit, event)
  30.     ScourgesAmbush.CaptainClosestPlayer = nil
  31.     pUnit:RegisterEvent("ScourgesAmbush.CaptainHealClosestPlayer", 1000, 1)
  32. end
  33.  
  34. function ScourgesAmbush.CaptainHealClosestPlayer(pUnit, event)
  35.     --[[if (pUnit:GetClosestPlayer() ~= nil) then
  36.         ScourgesAmbush.CaptainClosestPlayer = pUnit:GetClosestPlayer()
  37.         if (ScourgesAmbush.CaptainClosestPlayer:GetPhase() == 2) then
  38.             if (ScourgesAmbush.CaptainClosestPlayer:IsAlive() == true) then
  39.                 if (ScourgesAmbush.CaptainClosestPlayer:GetHealthPct() <= 70) then
  40.                     pUnit:FullCastSpellOnTarget(1026, ScourgesAmbush.CaptainClosestPlayer)
  41.                 end
  42.             end
  43.         end
  44.     end]]
  45. end
  46.    
  47. -- Creatures (Scourges) Functions - Animated Bone Warrior.
  48.  
  49. function ScourgesAmbush.AnimatedBoneWarriorOnSpawn(pUnit, event)
  50.     if (pUnit:GetPhase() == 2) then
  51.         ScourgesAmbush.AnimatedBoneWarrior = tostring(pUnit)
  52.         ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior] = {}
  53.         ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior] = pUnit
  54.         ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior]:SetFaction(14)
  55.         ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior]:SetMovementFlags(1)
  56.         ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior]:MoveTo(1262.197876, -2561.500732, 110.228584, 3.629264)
  57.         ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior]:RegisterEvent("ScourgesAmbush.AnimatedBoneWarriorMoveTwo", 3200, 1)
  58.     end
  59. end
  60.  
  61. function ScourgesAmbush.AnimatedBoneWarriorMoveTwo(pUnit, event)
  62.         ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior]:MoveTo(1264.366333, -2569.398193, 110.228584, 5.192202)
  63.         ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior]:RegisterEvent("ScourgesAmbush.RunThereOrNo", 3200, 1)
  64. end
  65.  
  66. function ScourgesAmbush.RunThereOrNo(pUnit, event)
  67.     ScourgesAmbush.RunOrNo = math.random(1, 4)
  68.         if (ScourgesAmbush.RunOrNo == 1) then
  69.             ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior]:MoveTo(1271.808838, -2571.046631, 110.228996, 5.988852)
  70.         end
  71.         if (ScourgesAmbush.RunOrNo == 2) then
  72.             ScourgesAmbush[ScourgesAmbush.AnimatedBoneWarrior]:MoveTo(1265.707764, -2575.237549, 110.228996, 5.069932)
  73.         end
  74. end
  75.  
  76. RegisterUnitEvent(95710, 18, "ScourgesAmbush.AnimatedBoneWarriorOnSpawn")
  77.  
  78. -- Animated Bone Warriors on Death.
  79.  
  80. function ScourgesAmbush.AnimatedBoneWarriorOnDeath(pUnit, event)
  81.     if (pUnit:GetPhase() == 2) then
  82.         ScourgesAmbush.ScourgesKilled = ScourgesAmbush.ScourgesKilled + 1
  83.     end
  84. end
  85.  
  86. RegisterUnitEvent(95710, 4, "ScourgesAmbush.AnimatedBoneWarriorOnDeath")
  87.  
  88. -- Creatures (Scourges) Functions - Risen Abberation.
  89.  
  90. function ScourgesAmbush.RisenAbberationOnSpawn(pUnit, event)
  91.     if (pUnit:GetPhase() == 2) then
  92.         ScourgesAmbush.RisenAbberation = tostring(pUnit)
  93.         ScourgesAmbush[ScourgesAmbush.RisenAbberation] = {}
  94.         ScourgesAmbush[ScourgesAmbush.RisenAbberation] = pUnit
  95.         ScourgesAmbush[ScourgesAmbush.RisenAbberation]:SetFaction(14)
  96.         ScourgesAmbush[ScourgesAmbush.RisenAbberation]:SetMovementFlags(1)
  97.         ScourgesAmbush[ScourgesAmbush.RisenAbberation]:MoveTo(1262.197876, -2561.500732, 110.228584, 3.629264)
  98.         ScourgesAmbush[ScourgesAmbush.RisenAbberation]:RegisterEvent("ScourgesAmbush.RisenAbberationMoveTwo", 3200, 1)
  99.     end
  100. end
  101.  
  102. function ScourgesAmbush.RisenAbberationMoveTwo(pUnit, event)
  103.         ScourgesAmbush[ScourgesAmbush.RisenAbberation]:MoveTo(1264.366333, -2569.398193, 110.228584, 5.192202)
  104.         ScourgesAmbush[ScourgesAmbush.RisenAbberation]:RegisterEvent("ScourgesAmbush.RunThereOrNoTwo", 3200, 1)
  105. end
  106.  
  107. function ScourgesAmbush.RunThereOrNoTwo(pUnit, event)
  108.     ScourgesAmbush.RunOrNoTwo = math.random(1, 4)
  109.         if (ScourgesAmbush.RunOrNoTwo == 1) then
  110.             ScourgesAmbush[ScourgesAmbush.RisenAbberation]:MoveTo(1271.808838, -2571.046631, 110.228996, 5.988852)
  111.         end
  112.         if (ScourgesAmbush.RunOrNoTwo == 2) then
  113.             ScourgesAmbush[ScourgesAmbush.RisenAbberation]:MoveTo(1265.707764, -2575.237549, 110.228996, 5.069932)
  114.         end
  115. end
  116.  
  117. RegisterUnitEvent(96110, 18, "ScourgesAmbush.RisenAbberationOnSpawn")
  118.  
  119. -- Risen Aberration on Death.
  120.  
  121. function ScourgesAmbush.RisenAbberationOnDeath(pUnit, event)
  122.     if (pUnit:GetPhase() == 2) then
  123.         ScourgesAmbush.ScourgesKilled = ScourgesAmbush.ScourgesKilled + 1
  124.     end
  125. end
  126.  
  127. RegisterUnitEvent(96110, 4, "ScourgesAmbush.RisenAbberationOnDeath")
  128.  
  129. -- Creatures (Scourges) Functions - Scholomance Necromancer.
  130.  
  131. function ScourgesAmbush.ScholomanceNecromancerOnSpawn(pUnit, event)
  132.     if (pUnit:GetPhase() == 2) then
  133.         ScourgesAmbush.ScholomanceNecromancer = tostring(pUnit)
  134.         ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer] = {}
  135.         ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer] = pUnit
  136.         ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer]:SetFaction(14)
  137.         ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer]:SetMovementFlags(1)
  138.         ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer]:MoveTo(1262.197876, -2561.500732, 110.228584, 3.629264)
  139.         ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer]:RegisterEvent("ScourgesAmbush.ScholomanceNecromancerMoveTwo", 3200, 1)
  140.     end
  141. end
  142.  
  143. function ScourgesAmbush.ScholomanceNecromancerMoveTwo(pUnit, event)
  144.         ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer]:MoveTo(1264.366333, -2569.398193, 110.228584, 5.192202)
  145.         ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer]:RegisterEvent("ScourgesAmbush.RunThereOrNoThree", 3200, 1)
  146. end
  147.  
  148. function ScourgesAmbush.RunThereOrNoThree(pUnit, event)
  149.     ScourgesAmbush.RunOrNoThree = math.random(1, 4)
  150.         if (ScourgesAmbush.RunOrNoThree == 1) then
  151.             ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer]:MoveTo(1271.808838, -2571.046631, 110.228996, 5.988852)
  152.         end
  153.         if (ScourgesAmbush.RunOrNoThree == 2) then
  154.             ScourgesAmbush[ScourgesAmbush.ScholomanceNecromancer]:MoveTo(1265.707764, -2575.237549, 110.228996, 5.069932)
  155.         end
  156. end
  157.  
  158. RegisterUnitEvent(95850, 18, "ScourgesAmbush.ScholomanceNecromancerOnSpawn")
  159.  
  160. -- Scholomance Necromancer on Death.
  161.  
  162. function ScourgesAmbush.ScholomanceNecromancerOnDeath(pUnit, event)
  163.     if (pUnit:GetPhase() == 2) then
  164.         ScourgesAmbush.ScourgesKilled = ScourgesAmbush.ScourgesKilled + 1
  165.     end
  166. end
  167.  
  168. RegisterUnitEvent(95850, 4, "ScourgesAmbush.ScholomanceNecromancerOnDeath")
  169.  
  170. -- Creatures (Scourges) Functions - Haunted Servitor.
  171.  
  172. function ScourgesAmbush.HauntedServitorOnSpawn(pUnit, event)
  173.     if (pUnit:GetPhase() == 2) then
  174.         ScourgesAmbush.HauntedServitor = tostring(pUnit)
  175.         ScourgesAmbush[ScourgesAmbush.HauntedServitor] = {}
  176.         ScourgesAmbush[ScourgesAmbush.HauntedServitor] = pUnit
  177.         ScourgesAmbush[ScourgesAmbush.HauntedServitor]:SetFaction(14)
  178.         ScourgesAmbush[ScourgesAmbush.HauntedServitor]:SetMovementFlags(1)
  179.         ScourgesAmbush[ScourgesAmbush.HauntedServitor]:MoveTo(1262.197876, -2561.500732, 110.228584, 3.629264)
  180.         ScourgesAmbush[ScourgesAmbush.HauntedServitor]:RegisterEvent("ScourgesAmbush.HauntedServitorMoveTwo", 3200, 1)
  181.     end
  182. end
  183.  
  184. function ScourgesAmbush.HauntedServitorMoveTwo(pUnit, event)
  185.         ScourgesAmbush[ScourgesAmbush.HauntedServitor]:MoveTo(1264.366333, -2569.398193, 110.228584, 5.192202)
  186.         ScourgesAmbush[ScourgesAmbush.HauntedServitor]:RegisterEvent("ScourgesAmbush.RunThereOrNoFour", 3200, 1)
  187. end
  188.  
  189. function ScourgesAmbush.RunThereOrNoFour(pUnit, event)
  190.     ScourgesAmbush.RunOrNoFour = math.random(1, 4)
  191.         if (ScourgesAmbush.RunOrNoFour == 1) then
  192.             ScourgesAmbush[ScourgesAmbush.HauntedServitor]:MoveTo(1271.808838, -2571.046631, 110.228996, 5.988852)
  193.         end
  194.         if (ScourgesAmbush.RunOrNoFour == 2) then
  195.             ScourgesAmbush[ScourgesAmbush.HauntedServitor]:MoveTo(1265.707764, -2575.237549, 110.228996, 5.069932)
  196.         end
  197. end
  198.  
  199. RegisterUnitEvent(3875, 18, "ScourgesAmbush.HauntedServitorOnSpawn")
  200.  
  201. -- Haunted Servitor on Death.
  202.  
  203. function ScourgesAmbush.HauntedServitorOnDeath(pUnit, event)
  204.     if (pUnit:GetPhase() == 2) then
  205.         ScourgesAmbush.ScourgesKilled = ScourgesAmbush.ScourgesKilled + 1
  206.     end
  207. end
  208.  
  209. RegisterUnitEvent(3875, 4, "ScourgesAmbush.HauntedServitorOnDeath")
  210.  
  211. -- Creatures (Scourges) Functions - Cannibal Ghoul.
  212.  
  213. function ScourgesAmbush.CannibalGhoulOnSpawn(pUnit, event)
  214.     if (pUnit:GetPhase() == 2) then
  215.         ScourgesAmbush.CannibalGhoul = tostring(pUnit)
  216.         ScourgesAmbush[ScourgesAmbush.CannibalGhoul] = {}
  217.         ScourgesAmbush[ScourgesAmbush.CannibalGhoul] = pUnit
  218.         ScourgesAmbush[ScourgesAmbush.CannibalGhoul]:SetFaction(14)
  219.         ScourgesAmbush[ScourgesAmbush.CannibalGhoul]:SetMovementFlags(1)
  220.         ScourgesAmbush[ScourgesAmbush.CannibalGhoul]:MoveTo(1262.197876, -2561.500732, 110.228584, 3.629264)
  221.         ScourgesAmbush[ScourgesAmbush.CannibalGhoul]:RegisterEvent("ScourgesAmbush.CannibalGhoulMoveTwo", 3200, 1)
  222.     end
  223. end
  224.  
  225. function ScourgesAmbush.CannibalGhoulMoveTwo(pUnit, event)
  226.         ScourgesAmbush[ScourgesAmbush.CannibalGhoul]:MoveTo(1264.366333, -2569.398193, 110.228584, 5.192202)
  227.         ScourgesAmbush[ScourgesAmbush.CannibalGhoul]:RegisterEvent("ScourgesAmbush.RunThereOrNoFive", 3200, 1)
  228. end
  229.  
  230. function ScourgesAmbush.RunThereOrNoFive(pUnit, event)
  231.     ScourgesAmbush.RunOrNoFive = math.random(1, 4)
  232.         if (ScourgesAmbush.RunOrNoFive == 1) then
  233.             ScourgesAmbush[ScourgesAmbush.CannibalGhoul]:MoveTo(1271.808838, -2571.046631, 110.228996, 5.988852)
  234.         end
  235.         if (ScourgesAmbush.RunOrNoFive == 2) then
  236.             ScourgesAmbush[ScourgesAmbush.CannibalGhoul]:MoveTo(1265.707764, -2575.237549, 110.228996, 5.069932)
  237.         end
  238. end
  239.  
  240. RegisterUnitEvent(95780, 18, "ScourgesAmbush.HauntedServitorOnSpawn")
  241.  
  242. -- Cannibal Ghoul on Death.
  243.  
  244. function ScourgesAmbush.CannibalGhoulOnDeath(pUnit, event)
  245.     if (pUnit:GetPhase() == 2) then
  246.         ScourgesAmbush.ScourgesKilled = ScourgesAmbush.ScourgesKilled + 1
  247.     end
  248. end
  249.  
  250. RegisterUnitEvent(95780, 4, "ScourgesAmbush.CannibalGhoulOnDeath")
  251.  
  252. -- Creatures (Scourges) Functions - Lord Alexei Barov.
  253.  
  254. function ScourgesAmbush.LordAlexeiBarovOnSpawn(pUnit, event)
  255.     if (pUnit:GetPhase() == 2) then
  256.         ScourgesAmbush.LordAlexeiBarov = tostring(pUnit)
  257.         ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov] = {}
  258.         ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov] = pUnit
  259.         ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov]:EquipWeapons(14541, 0, 0)
  260.         ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov]:SetFaction(14)
  261.         ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov]:SetMovementFlags(1)
  262.         ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov]:MoveTo(1262.197876, -2561.500732, 110.228584, 3.629264)
  263.         ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov]:RegisterEvent("ScourgesAmbush.LordAlexeiBarovMoveTwo", 3200, 1)
  264.     end
  265. end
  266.  
  267. function ScourgesAmbush.LordAlexeiBarovMoveTwo(pUnit, event)
  268.         ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov]:MoveTo(1264.366333, -2569.398193, 110.228584, 5.192202)
  269.         ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov]:RegisterEvent("ScourgesAmbush.RunThereOrNoLord", 3200, 1)
  270. end
  271.  
  272. function ScourgesAmbush.RunThereOrNoLord(pUnit, event)
  273.     ScourgesAmbush.RunOrNoLord = math.random(1, 4)
  274.         if (ScourgesAmbush.RunOrNoLord == 1) then
  275.             ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov]:MoveTo(1271.808838, -2571.046631, 110.228996, 5.988852)
  276.         end
  277.         if (ScourgesAmbush.RunOrNoLord == 2) then
  278.             ScourgesAmbush[ScourgesAmbush.LordAlexeiBarov]:MoveTo(1265.707764, -2575.237549, 110.228996, 5.069932)
  279.         end
  280. end
  281.  
  282. RegisterUnitEvent(10504, 18, "ScourgesAmbush.LordAlexeiBarovOnSpawn")
  283.  
  284. -- Lord Alexei Barov on Death.
  285.  
  286. function ScourgesAmbush.LordAlexeiBarovOnDeath(pUnit, event)
  287.     pUnit:SendChatMessage(14, 0, "I promise I will return!")
  288.     pUnit:SetPhase(6)
  289.         if (ScourgesAmbush.MarshalThery ~= nil) then
  290.             ScourgesAmbush.MarshalThery:RegisterEvent("ScourgesAmbush.EndOfAmbush", 1800, 1)
  291.         end
  292. end
  293.  
  294. RegisterUnitEvent(10504, 4, "ScourgesAmbush.LordAlexeiBarovOnDeath")
  295.  
  296. -- Players on the same Quest.
  297.  
  298. ScourgesAmbush.PlayerOne = nil
  299. ScourgesAmbush.PlayerTwo = nil
  300. ScourgesAmbush.PlayerThree = nil
  301. ScourgesAmbush.PlayerFour = nil
  302. ScourgesAmbush.PlayerFive = nil
  303.  
  304. -- On Script Load.
  305.  
  306. ScourgesAmbush.EventInProgress = 0
  307.  
  308. -- We have to register the second Marshal Thery from Phase 2.
  309.  
  310. function ScourgesAmbush.MarshalTheryOnSpawn(pUnit, event)
  311.     ScourgesAmbush.MarshalThery = pUnit
  312.     ScourgesAmbush.MarshalThery:CastSpell(7294)
  313. end
  314.  
  315. -- Register Unit Event of Marshal Thery.
  316.  
  317. RegisterUnitEvent(96065, 18, "ScourgesAmbush.MarshalTheryOnSpawn")
  318.  
  319. -- Now, we will start the event on Quest Accept.
  320. -- Once you get the "Scourges Ambush" quest, you will go to Phase 2.
  321. -- If there is already an Ambush started, you will take part of it.
  322.  
  323. function ScourgesAmbush.ScourgesAmbushOnQuestAccept(Event, Player, QuestID, QuestGiver)
  324.    
  325.     -- We first gonna check for Quest ID.
  326.    
  327.         if (QuestID == 96100) then
  328.        
  329.             -- Teleport the player to Phase 2 and QuestGiver start the Event.
  330.            
  331.                 Player:SetPhase(2)
  332.                
  333.                 -- Players.
  334.                
  335.                 if (ScourgesAmbush.PlayerOne == nil) then
  336.                     ScourgesAmbush.PlayerOne = Player
  337.                 else
  338.                     if (ScourgesAmbush.PlayerTwo == nil) then
  339.                         ScourgesAmbush.PlayerTwo = Player
  340.                     else
  341.                         if (ScourgesAmbush.PlayerThree == nil) then
  342.                             ScourgesAmbush.PlayerThree = Player
  343.                         else
  344.                             if (ScourgesAmbush.PlayerFour == nil) then
  345.                                 ScourgesAmbush.PlayerFour = Player
  346.                             else
  347.                                 if (ScourgesAmbush.PlayerFive == nil) then
  348.                                     ScourgesAmbush.PlayerFive = Player
  349.                                 end
  350.                             end
  351.                         end
  352.                     end
  353.                 end
  354.                
  355.                     -- Check for Event Progress.
  356.                    
  357.                         --if (ScourgesAmbush.EventInProgress == 0) then
  358.                             if (ScourgesAmbush.MarshalThery ~= nil) then
  359.                                 ScourgesAmbush.ScourgesWaveyTwo = 0
  360.                                 ScourgesAmbush.ScourgesWaveyThree = 0
  361.                                 ScourgesAmbush.ScourgesLordWave = 0
  362.                                 ScourgesAmbush.MarshalThery:RegisterEvent("ScourgesAmbush.StartTheAmbush", 1800, 1)
  363.                             end
  364.                         --end
  365.                    
  366.                     -- Ends.
  367.                    
  368.         end
  369.  
  370.     -- Even more Ends!
  371.  
  372. end
  373.  
  374. -- Latest End.
  375.  
  376. -- Here we gonna Register Server Hook.
  377.  
  378. RegisterServerHook(14, "ScourgesAmbush.ScourgesAmbushOnQuestAccept")
  379.  
  380. -- Scourges Ambush Starts!
  381.  
  382. function ScourgesAmbush.StartTheAmbush(pUnit, event)
  383.     ScourgesAmbush.EventInProgress = 1
  384.  
  385.         ScourgesAmbush.MarshalThery:SendChatMessage(12, 0, "Stand ready, they are approaching!")
  386.            
  387.         -- Emote Roar!
  388.        
  389.             ScourgesAmbush.MarshalThery:CastSpell(34999)
  390.             ScourgesAmbush.MarshalThery:PlaySoundToSet(6077)
  391.            
  392.         -- Thery Function to Spawn Creatures!
  393.        
  394.             ScourgesAmbush.MarshalThery:RegisterEvent("ScourgesAmbush.ScourgesWaveOne", 3400, 1)
  395.             ScourgesAmbush.MarshalThery:RegisterEvent("ScourgesAmbush.CheckForScourgesKills", 3000, 0)
  396. end
  397.  
  398. -- Check for Scourges Kills.
  399.  
  400. function ScourgesAmbush.CheckForScourgesKills(pUnit, event)
  401.     if (ScourgesAmbush.ScourgesKilled >= 3) then
  402.         if (ScourgesAmbush.ScourgesWaveyTwo == 0) then
  403.             pUnit:RegisterEvent("ScourgesAmbush.ScourgesWaveTwo", 2200, 1)
  404.         end
  405.     end
  406.     if (ScourgesAmbush.ScourgesKilled >= 8) then
  407.         if (ScourgesAmbush.ScourgesWaveyThree == 0) then
  408.             pUnit:RegisterEvent("ScourgesAmbush.ScourgesWaveThree", 2200, 1)
  409.         end
  410.     end
  411.     if (ScourgesAmbush.ScourgesKilled >= 9) then
  412.         if (ScourgesAmbush.ScourgesLordWave == 0) then
  413.             pUnit:RegisterEvent("ScourgesAmbush.ScourgesLordAlexeiBarovWave", 3000, 1)
  414.         end
  415.     end
  416. end
  417.  
  418. -- Creatures List:
  419.  
  420. -- Animated Bone Warrior - 95710.
  421. -- Risen Aberration - 96110.
  422. -- Scholomance Necromancer - 95850.
  423. -- Haunted Servitor - 3875.
  424. -- Cannibal Ghoul - 95780.
  425.  
  426. -- Lord Alexei Barov (Boss) - 10504.
  427.  
  428. -- Wave One.
  429.  
  430. function ScourgesAmbush.ScourgesWaveOne(pUnit, event)
  431.     ScourgesAmbush.MarshalThery:SpawnCreature(95710, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 120000, 0, 0, 0, 2, 0)
  432.     ScourgesAmbush.MarshalThery:SpawnCreature(96110, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 120000, 0, 0, 0, 2, 0)
  433.     ScourgesAmbush.MarshalThery:SpawnCreature(95780, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 120000, 0, 0, 0, 2, 0)
  434. end
  435.  
  436. -- Wave Two.
  437.  
  438. function ScourgesAmbush.ScourgesWaveTwo(pUnit, event)
  439.     ScourgesAmbush.ScourgesWaveyTwo = 1
  440.     ScourgesAmbush.MarshalThery:SendChatMessage(14, 0, "More scourges are coming, take care!")
  441.     ScourgesAmbush.MarshalThery:SpawnCreature(95710, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 120000, 0, 0, 0, 2, 0)
  442.     ScourgesAmbush.MarshalThery:SpawnCreature(96110, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 120000, 0, 0, 0, 2, 0)
  443.     ScourgesAmbush.MarshalThery:RegisterEvent("ScourgesAmbush.ThreeMoreScourges", 4800, 1)
  444. end
  445.  
  446. function ScourgesAmbush.ThreeMoreScourges(pUnit, event)
  447.     ScourgesAmbush.MarshalThery:SpawnCreature(95850, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 120000, 0, 0, 0, 2, 0)
  448.     ScourgesAmbush.MarshalThery:SpawnCreature(95710, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 120000, 0, 0, 0, 2, 0)
  449.     ScourgesAmbush.MarshalThery:SpawnCreature(96110, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 120000, 0, 0, 0, 2, 0)
  450. end
  451.  
  452. -- Wave Three.
  453.  
  454. function ScourgesAmbush.ScourgesWaveThree(pUnit, event)
  455.     ScourgesAmbush.ScourgesWaveyThree = 1
  456.     ScourgesAmbush.MarshalThery:SendChatMessage(14, 0, "We shall triumph! Keep fighting!")
  457.     ScourgesAmbush.MarshalThery:SpawnCreature(3875, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 220000, 0, 0, 0, 2, 0)
  458. end
  459.  
  460. -- Scourges Lord Alexei Barov Wave.
  461.  
  462. function ScourgesAmbush.ScourgesLordAlexeiBarovWave(pUnit, event)
  463.     ScourgesAmbush.ScourgesLordWave = 1
  464.         if (ScourgesAmbush.CaptainJustinBarlett ~= nil) then
  465.             ScourgesAmbush.CaptainJustinBarlett:SendChatMessage(14, 0, "How is that possible?")
  466.         end
  467.         ScourgesAmbush.MarshalThery:RemoveEvents()
  468.     ScourgesAmbush.MarshalThery:SpawnCreature(10504, 1277.598022, -2553.204590, 102.947639, 3.617483, 14, 420000, 0, 0, 0, 2, 0)
  469. end
  470.  
  471. -- End of the Ambush!
  472.  
  473. function ScourgesAmbush.EndOfAmbush(pUnit, event)
  474.     ScourgesAmbush.MarshalThery:SendChatMessage(14, 0, "You have proven yourself today, champions!")
  475.     ScourgesAmbush.MarshalThery:RegisterEvent("ScourgesAmbush.MarshalTheryGiveReward", 4400, 1)
  476. end
  477.  
  478. function ScourgesAmbush.MarshalTheryGiveReward(pUnit, event)
  479.             if (ScourgesAmbush.PlayerOne ~= nil) then
  480.                     ScourgesAmbush.PlayerOne:AdvanceQuestObjective(96100, 0)
  481.                     ScourgesAmbush.PlayerOne:SetPhase(4)
  482.             end
  483.                     if (ScourgesAmbush.PlayerTwo ~= nil) then
  484.                         ScourgesAmbush.PlayerTwo:AdvanceQuestObjective(96100, 0)
  485.                         ScourgesAmbush.PlayerTwo:SetPhase(4)
  486.                     end
  487.                         if (ScourgesAmbush.PlayerThree ~= nil) then
  488.                             ScourgesAmbush.PlayerThree:AdvanceQuestObjective(96100, 0)
  489.                             ScourgesAmbush.PlayerThree:SetPhase(4)
  490.                         end
  491.                             if (ScourgesAmbush.PlayerFour ~= nil) then
  492.                                 ScourgesAmbush.PlayerFour:AdvanceQuestObjective(96100, 0)
  493.                                 ScourgesAmbush.PlayerFour:SetPhase(4)
  494.                             end
  495.                                 if (ScourgesAmbush.PlayerFive ~= nil) then
  496.                                     ScourgesAmbush.PlayerFive:AdvanceQuestObjective(96100, 0)
  497.                                     ScourgesAmbush.PlayerFive:SetPhase(4)
  498.                                 end
  499.     ScourgesAmbush.MarshalThery:RegisterEvent("ScourgesAmbush.ResetEverything", 1000, 1)
  500. end
  501.  
  502. function ScourgesAmbush.ResetEverything(pUnit, event)
  503.     ScourgesAmbush.ScourgesWaveyTwo = 0
  504.     ScourgesAmbush.ScourgesWaveyThree = 0
  505.     ScourgesAmbush.ScourgesLordWave = 0
  506.     ScourgesAmbush.ScourgesKilled = 0
  507.     ScourgesAmbush.PlayerOne = nil
  508.     ScourgesAmbush.PlayerTwo = nil
  509.     ScourgesAmbush.PlayerThree = nil
  510.     ScourgesAmbush.PlayerFour = nil
  511.     ScourgesAmbush.PlayerFive = nil
  512. end
  513.  
  514. -- End of the Scourges Ambush Script!
Advertisement
Add Comment
Please, Sign In to add comment