Code:
local IrisEntryID = 96743
local ThrallAEntryID = 91442
local GarroshAEntryID = 91441
local KorkronWarriorEntryID = 96724
local KorkronEliteEntryID = 96747
local KorkronCasterEntryID = 96746
local JainaAEntryID = 96748
function IRS(pUnit, event)
Iris = pUnit
end
function THA(pUnit, event)
ThrallA = pUnit
end
function GRA(pUnit, event)
GarroshA = pUnit
end
function IFC(pUnit, event)
KorkronWarrior = pUnit
end
function VFG(pUnit, event)
KorkronElite = pUnit
end
function VFP(pUnit, event)
KorkronCaster = pUnit
end
function JNA(pUnit, event)
JainaA = pUnit
end
RegisterUnitEvent(IrisEntryID, 18, "IRS")
RegisterUnitEvent(ThrallAEntryID, 18, "THA")
RegisterUnitEvent(GarroshAEntryID, 18, "GRA")
RegisterUnitEvent(KorkronWarriorEntryID, 18, "IFC")
RegisterUnitEvent(KorkronEliteEntryID, 18, "VFG")
RegisterUnitEvent(KorkronCasterEntryID, 18, "VFP")
RegisterUnitEvent(JainaAEntryID, 18, "JNA")
function Iris_OnGossip(pUnit, Event, player)
Iris:GossipCreateMenu(99, player, 0)
Iris:GossipMenuAddItem(0, "Garrosh must pay for what he has done. Activate the focusing Iris!", 1, 0)
Iris:GossipSendMenu(player)
end
function Iris_GossipSelect(pUnit, Event, player, id, intid, code)
if (intid == 1) then
Iris:RegisterEvent("Iris1", 5000, 1)
player:GossipComplete(player)
end
if (intid == 2) then
player:GossipComplete(player)
end
end
RegisterUnitGossipEvent(IrisEntryID, 1, "Iris_OnGossip")
RegisterUnitGossipEvent(IrisEntryID, 2, "Iris_GossipSelect")
function Iris1(pUnit, event)
Iris:Despawn(1600, 0)
GarroshA:SendChatMessage(12, 0, "Ha, a pitiful skirmish! The alliance fight without conviction.")
GarroshA:SpawnCreature(KorkronCasterEntryID, 726.322449, 1275.041382, 267.234863, 0.768883, 35, 0)
GarroshA:SpawnCreature(KorkronWarriorEntryID, 782.028381, 1326.973633, 267.234711, 3.863352, 35, 0)
GarroshA:SpawnCreature(KorkronEliteEntryID, 783.380066, 1271.379639, 267.234711, 2.347538, 35, 0)
GarroshA:MoveTo(754.366333, 1301.582886, 266.171021, 2.304476)
GarroshA:RegisterEvent("Iris2", 9000, 1)
end
function Iris2(pUnit, event)
GarroshA:SendChatMessage(14, 0, "Do you see whelps there is little my orcs can not acomplish with the sha energy!")
GarroshA:Emote(1, 2500)
GarroshA:SendChatMessage(42, 0, "The Corrupted Warrior Becomes Attackable!")
KorkronWarrior:CastSpell(46242)
KorkronWarrior:SetFaction(14)
GarroshA:RegisterEvent("Iris3", 30000, 1)
end
function Iris3(pUnit, event)
GarroshA:SendChatMessage(12, 0, "I will stop at nothing - NOTHING - to ensure a proud and glorious future for the orcs!")
GarroshA:Emote(1, 2500)
GarroshA:SendChatMessage(42, 0, "The Corrupted Elite Becomes Attackable!")
KorkronElite:CastSpell(46242)
KorkronElite:SetFaction(14)
GarroshA:RegisterEvent("Iris4", 30000, 1)
end
function Iris4(pUnit, event)
GarroshA:SendChatMessage(12, 0, "We are the HORDE. We are slaves to nothing and no one!")
GarroshA:Emote(1, 2500)
GarroshA:SendChatMessage(42, 0, "The Corrupted Caster Becomes Attackable!")
KorkronCaster:CastSpell(46242)
KorkronCaster:SetFaction(14)
GarroshA:RegisterEvent("IrisComing", 30000, 1)
end
function IrisComing(pUnit, event)
GarroshA:SpawnCreature(JainaAEntryID, 730.590149, 1326.625488, 267.234802, 5.481413, 35, 0)
GarroshA:RegisterEvent("Garrosh1", 1000, 1)
end
function Garrosh1(pUnit, event)
JainaA:EquipWeapons(873,0,0)
JainaA:SendChatMessage(12, 0, "Your people are despicable cowards, Orc! You will be a slave to the Alliance.")
JainaA:Emote(5, 2500)
JainaA:CastSpell(21649)
JainaA:MoveTo(742.116577, 1314.535034, 266.170746, 5.466067)
GarroshA:RegisterEvent("Garrosh2", 8000, 1)
end
function Garrosh2(pUnit, event)
GarroshA:SendChatMessage(14, 0, "Ahahahahaha...so in the end, it is not Varian, but Jaina who comes to face me. You run bravely to your death, Human.")
GarroshA:Emote(1, 2500)
GarroshA:RegisterEvent("Garrosh3", 6000, 1)
end
function Garrosh3(pUnit, event)
GarroshA:SendChatMessage(14, 0, "Your interference has cost me great warriors, Proudmoore bitch. You'll pay with your life.")
GarroshA:Emote(1, 2500)
GarroshA:RegisterEvent("Garrosh4", 4000, 1)
end
function Garrosh4(pUnit, event)
GarroshA:RegisterEvent("IrisEnd1", 5000, 1)
JainaA:SendChatMessage(12, 0, "That is where your wrong, Garrosh.")
JainaA:Emote(1, 2500)
end
function IrisEnd1(pUnit, event)
JainaA:SendChatMessage(14, 0, "The Alliance will come down so hard on the orcs that your ancestors will reel! Blood. Will pay. For Blood.")
JainaA:Emote(5, 2500)
JainaA:RegisterEvent("IrisEnd2", 5000, 1)
end
function IrisEnd2(pUnit, event)
GarroshA:SendChatMessage(14, 0, "Die, whelp!!")
GarroshA:CastSpell(63982)
JainaA:CastSpell(64393)
JainaA:RegisterEvent("IrisEnd3", 5000, 1)
end
function IrisEnd3(pUnit, event)
GarroshA:SendChatMessage(14, 0, "Come then Champions, Feed me your rage!")
GarroshA:SetFaction(14)
GarroshA:CastSpell(16244)
end
function GarroshA_onCombat(pUnit, event)
GarroshA:RegisterEvent("GarroshPhase1", 1000, 0)
GarroshA:SendChatMessage(14, 0, "When this war is won our people will see prosperity at last!")
end
function GarroshA_onLeaveCombat(pUnit, event)
GarroshA:RemoveEvents()
GarroshA:SpawnCreature(IrisEntryID, 754.366333, 1301.582886, 266.171021, 2.304476, 35, 0)
GarroshA:SetFaction(35)
GarroshA:Despawn(1000, 10000)
JainaA:Despawn(1000, 0)
KorkronWarrior:Despawn(1000, 0)
KorkronElite:Despawn(1000, 0)
KorkronCaster:Despawn(1000, 0)
end
function GarroshA_onKillPlayer(pUnit, event)
GarroshA:SendChatMessage(14, 0, "Weekling...")
end
function GarroshA_onDeath(pUnit, event)
local x, y, z, o = GarroshA:GetX(), GarroshA:GetY(), GarroshA:GetZ(), GarroshA:GetO()
JainaA:RegisterEvent("JainaTheBattle", 5000, 1)
GarroshA:Despawn(50000, 0)
GarroshA:RemoveEvents()
end
RegisterUnitEvent(GarroshAEntryID, 1, "GarroshA_onCombat")
RegisterUnitEvent(GarroshAEntryID, 2, "GarroshA_onLeaveCombat")
RegisterUnitEvent(GarroshAEntryID, 3, "GarroshA_onKillPlayer")
RegisterUnitEvent(GarroshAEntryID, 4, "GarroshA_onDeath")
function GarroshPhase1(pUnit, event)
if GarroshA:GetHealthPct() <= 99 then
GarroshA:RemoveEvents()
GarroshA:SendChatMessage(42, 0, "Garrosh Hellscream Engaged - Berserk In 6 Minutes!")
GarroshA:RegisterEvent("GarroshRepellingWave", 8000, 1)
GarroshA:RegisterEvent("GarroshEnervatingBrand", 5000, 1)
GarroshA:RegisterEvent("GarroshBladeTempest", 10000, 0)
GarroshA:RegisterEvent("GarroshDefilingHorror", 15000, 1)
GarroshA:RegisterEvent("GarroshHopelessness", 10000, 0)
GarroshA:RegisterEvent("GarroshSharedSuffering", 15000, 1)
GarroshA:RegisterEvent("GarroshPhaseBreak", 1000, 0)
end
end
function GarroshPhaseBreak(pUnit, event)
if GarroshA:GetHealthPct() <= 72 then
GarroshA:RemoveEvents()
GarroshA:SendChatMessage(42, 0, "Garrosh Begins To Harvest Sha Energy!")
GarroshA:SendChatMessage(12, 0, "When this war is won our people will see prosperity atlast!")
GarroshA:MoveTo(754.366333, 1301.582886, 266.171021, 2.304476)
GarroshA:SetMovementFlags(1)
GarroshA:SetCombatCapable(1)
GarroshA:RegisterEvent("GarroshTrans", 5000, 1)
end
function GarroshTrans(pUnit, event)
GarroshA:RemoveEvents()
GarroshA:SendChatMessage(14, 0, "Your lights will go out. The darkness will envelop you. And you will fear the shadows that move within it.")
GarroshA:Root()
GarroshA:CastSpell(58842)
JainaA:RegisterEvent("GarroshPhase2", 5000, 1)
end
function GarroshPhase2(pUnit, event)
GarroshA:Unroot()
GarroshA:SetCombatCapable(0)
GarroshA:RemoveEvents()
GarroshA:SendChatMessage(42, 0, "Garrosh Has Morphed Into Sha Energy!")
GarroshA:SetModel(45065)
GarroshA:SendChatMessage(12, 0, "You will know fear!")
GarroshA:RegisterEvent("GarroshCarrionSwarm", 25000, 0)
GarroshA:RegisterEvent("GarroshShadowBoltVolley", 28000, 1)
GarroshA:RegisterEvent("GarroshDarkShell", 30000, 0)
GarroshA:RegisterEvent("GarroshFiend", 34000, 0)
GarroshA:RegisterEvent("Garroshshadowfiend", 60000, 0)
GarroshA:RegisterEvent("GarroshPhase3", 1000, 0)
end
end
function GarroshPhase3(pUnit, event)
if GarroshA:GetHealthPct() <= 32 then
GarroshA:SetCombatCapable(1)
GarroshA:RemoveEvents()
GarroshA:SetModel(32904)
GarroshA:SendChatMessage(42, 0, "The Sha Energy Fades!")
GarroshA:RegisterEvent("GarroshTrans2", 1000, 0)
end
end
function GarroshTrans2(pUnit, event)
GarroshA:RemoveEvents()
GarroshA:CastSpell(59084)
GarroshA:CastSpell(40647)
GarroshA:SpawnGameObject(519377, 754.666077, 1302.155396, 266.170898, 3.961851, 0, 100)
GarroshA:SendChatMessage(14, 0, "With the power of my HORDE, I will burn away any remnants of weakness within us. Fear... despair... hatred... doubt. The lesser races are buried beneath their weight. But WE will control their power...")
JainaA:RegisterEvent("GarroshTrans3", 7000, 1)
end
function GarroshTrans3(pUnit, event)
GarroshA:SendChatMessage(14, 0, "...And we will drive our eneimes into the ground!")
JainaA:RegisterEvent("GarroshTrans4", 7000, 1)
end
function GarroshTrans4(pUnit, event)
GarroshA:SendChatMessage(14, 0, "Hahahaha...My victory is all but assured. With the power of the Focusing Iris on my side, I will be unstoppable.")
JainaA:RegisterEvent("GarroshTrans5", 7000, 1)
end
function GarroshTrans5(pUnit, event)
GarroshA:SendChatMessage(14, 0, "Do you Feel the power within me? Fight your fears. Conquer your hatred! DO IT!")
JainaA:RegisterEvent("GarroshTrans6", 7000, 1)
end
function GarroshTrans6(pUnit, event)
GarroshA:SendChatMessage(14, 0, "Use your fear, Champions! Turn it on me. When death arrives, will you stand and face it or kneel in defeat?")
JainaA:RegisterEvent("GarroshPhase4", 5000, 1)
end
function GarroshPhase4(pUnit, event)
GarroshA:SetCombatCapable(0)
GarroshA:Unroot()
GarroshA:RemoveEvents()
GarroshA:CastSpell(44779)
local PlayersAllAround = GarroshA:GetInRangePlayers()
for a, players in pairs(PlayersAllAround) do
players:CastSpell(7383)
GarroshA:SendChatMessage(42, 0, "Garrosh Goes Into A Frenzy!")
GarroshA:SendChatMessage(42, 0, "Jaina protects her allys with a Water Shield!")
GarroshA:RegisterEvent("GarroshRepellingWave", 8000, 1)
GarroshA:RegisterEvent("GarroshEnervatingBrand", 5000, 1)
GarroshA:RegisterEvent("GarroshBladeTempest", 10000, 0)
GarroshA:RegisterEvent("GarroshDefilingHorror", 15000, 1)
GarroshA:RegisterEvent("GarroshHopelessness", 10000, 0)
GarroshA:RegisterEvent("GarroshSharedSuffering", 15000, 1)
GarroshA:RegisterEvent("GarroshPhase5", 1000, 0)
end
end
function GarroshPhase5(pUnit, event)
if GarroshA:GetHealthPct() <= 10 then
GarroshA:RemoveEvents()
GarroshA:SetMovementFlags(1)
GarroshA:SetCombatCapable(1)
GarroshA:CastSpell(40647)
GarroshA:SendChatMessage(14, 0, "You gnats actually hurt me! Perhaps I've toyed with you long enough!")
GarroshA:RegisterEvent("GarroshTrans7", 5000, 1)
end
end
function GarroshTrans7(pUnit, event)
GarroshA:SendChatMessage(14, 0, "It's time for you to witness the power of a GOD!")
GarroshA:MoveTo(754.366333, 1301.582886, 266.171021, 2.304476)
GarroshA:RegisterEvent("GarroshTrans8", 6000, 1)
end
function GarroshTrans8(pUnit, event)
GarroshA:SendChatMessage(14,0,"Watch as I corrupt your champions Proudmoore. They will play a great role in taking over your Allaince Empire and reclaiming Orgrimmar for the orcs.")
GarroshA:Root()
GarroshA:SetScale(5)
JainaA:CastSpell(57772)
JainaA:Despawn(1600, 0)
local plr = GarroshA:GetRandomPlayer(0)
if plr ~= nil then
GarroshA:ChannelSpell(71769, plr)
GarroshA:RegisterEvent("GarroshTrans9", 7000, 1)
end
end
function GarroshTrans9(pUnit, event)
GarroshA:SpawnCreature(JainaAEntryID, 742.116577, 1314.535034, 266.170746, 5.466067, 35, 0)
GarroshA:RegisterEvent("GarroshTrans10", 1000, 1)
end
function GarroshTrans10(pUnit, event)
JainaA:SendChatMessage(14, 0, "You...Are...NOTHING!")
JainaA:EquipWeapons(873,0,0)
JainaA:CastSpell(71773)
GarroshA:RegisterEvent("GarroshTrans11", 5000, 1)
end
function GarroshTrans11(pUnit, event)
JainaA:SendChatMessage(14, 0, "Quickly Heros! I...Cannot hold him alone!")
JainaA:CastSpell(51361)
GarroshA:StopChannel()
GarroshA:CastSpell(72523)
GarroshA:Emote(473, 120000)
GarroshA:RegisterEvent("GarroshTrans12", 5000, 1)
end
function GarroshTrans12(pUnit, event)
JainaA:SpawnCreature(ThrallAEntryID, 726.608459, 1298.765747, 266.170868, 0.231472, 35, 0)
GarroshA:RegisterEvent("GarroshTrans13", 1000, 1)
end
function GarroshTrans13(pUnit, event)
ThrallA:SendChatMessage(14, 0, "You are not alone.")
ThrallA:MoveTo(739.550171, 1300.533447, 266.170868, 0.117219)
GarroshA:RegisterEvent("GarroshTrans14", 4000, 1)
end
function GarroshTrans14(pUnit, event)
ThrallA:CastSpell(51361)
JainaA:SendChatMessage(12, 0, "Thrall!")
GarroshA:RegisterEvent("GarroshTrans15", 5000, 1)
end
function GarroshTrans15(pUnit, event)
JainaA:SendChatMessage(14, 0, "Garrosh must fall!")
JainaA:SendChatMessage(42, 0, "Jaina Removes The Shadow Prison Affect!")
GarroshA:Emote(473, 120000)
end
function GarroshBladeTempest(pUnit, event)
local tank = GarroshA:GetMainTank()
if (tank ~= nil) then
GarroshA:CastSpell(75125, tank)
end
end
function GarroshRepellingWave(pUnit, event)
local plr = GarroshA:GetRandomPlayer(0)
if (plr ~= nil) then
GarroshA:FullCastSpell(74509, plr)
end
end
function GarroshEnervatingBrand(pUnit, event)
local plr = GarroshA:GetRandomPlayer(0)
if (plr ~= nil) then
GarroshA:FullCastSpellOnTarget(74502, plr)
end
end
function GarroshDefilingHorror(pUnit, event)
local tank = GarroshA:GetMainTank()
if (tank ~= nil) then
GarroshA:CastSpell(72435, tank)
end
end
function GarroshSharedSuffering(pUnit, event)
local plr = GarroshA:GetRandomPlayer(0)
if (plr ~= nil) then
GarroshA:FullCastSpellOnTarget(72368, plr)
end
end
function GarroshShadowBoltVolley(pUnit, event)
local plr = GarroshA:GetRandomPlayer(0)
if (plr ~= nil) then
GarroshA:FullCastSpell(64122, plr)
end
end
function GarroshHopelessness(pUnit, event)
local plr = GarroshA:GetRandomPlayer(0)
if (plr ~= nil) then
GarroshA:FullCastSpellOnTarget(72426, tank)
end
end
function GarroshDarkShell(pUnit, event)
local tank = GarroshA:GetMainTank()
if (tank ~= nil) then
GarroshA:FullCastSpell(38759, tank)
end
end
function GarroshCarrionSwarm(pUnit, event)
local tank = GarroshA:GetMainTank()
if (tank ~= nil) then
GarroshA:FullCastSpellOnTarget(59434, tank)
end
end
function Garroshshadowfiend(pUnit, event)
local plr = GarroshA:GetRandomPlayer(0)
if (plr ~= nil) then
GarroshA:FullCastSpellOnTarget(41917, plr)
end
end
function GarroshFiend(pUnit, event)
local plr = GarroshA:GetRandomPlayer(0)
if (plr ~= nil) then
GarroshA:FullCastSpellOnTarget(24910, plr)
GarroshA:RegisterEvent("GarroshSharedSuffering", 15000, 1)
end
end
function GarroshEnrage(pUnit, event)
GarroshA:FullCastSpellOnTarget(48193, GarroshA)
end
function JainaTheBattle(pUnit, event)
ThrallA:SendChatMessage(12, 0, "So, it is done.")
ThrallA:Emote(1, 2500)
ThrallA:RegisterEvent("JainaTheBattle2", 4000, 1)
end
function JainaTheBattle2(pUnit, event)
JainaA:SendChatMessage(12, 0, "Thrall, How did you -")
JainaA:Emote(6, 2500)
ThrallA:RegisterEvent("JainaTheBattle3", 3000, 1)
end
function JainaTheBattle3(pUnit, event)
ThrallA:SendChatMessage(12, 0, "I senced a disturbance Jaina. Now that this is done our people can move back into Orgrimmar.")
ThrallA:Emote(1, 2500)
ThrallA:RegisterEvent("JainaTheBattle4", 8000, 1)
end
function JainaTheBattle4(pUnit, event)
JainaA:SendChatMessage(12, 0, "Garrosh has payed the price for his actions. I just hope the Alliance and Horde can live in peace now as one.")
JainaA:Emote(1, 2500)
ThrallA:RegisterEvent("JainaTheBattle5", 6000, 1)
end
function JainaTheBattle5(pUnit, event)
ThrallA:SendChatMessage(12, 0, "I wish for the same, Lady Proudmoore.")
ThrallA:Emote(1, 2500)
ThrallA:RegisterEvent("JainaTheBattle6", 6000, 1)
end
function JainaTheBattle6(pUnit, event)
JainaA:SendChatMessage(12, 0, "I don't feel that the peace is restored...It is almost like there is another evil on the air. I feel Thunder coming Thrall and it's closing in fast.")
JainaA:Emote(1, 2500)
end