I have an idea for something to add to this profile.
Nilrems Affliction/demo profiles have the Windlord Spear thing in them. It will re-cc your add as long as you have it on focus and cc'd before the pull. Also has Amber shaper interupts in it. When in construct form, all u have to do is target the amber monster and it will interupt it, and your own explosion...
Please tell me you have a way of adding that into this profile!?
Edit:
Ok so i just created 2 new abilities into your profile. They are identical to nilrems profiles. Is it as easy as this?
Created an ability called [Misc] Boss Checks
and here is the code:
Code:
--Implement PQR_resumeAttack.. this is used to prevent
--abilities lower in the rotation from being cast.
if PQR_resumeAttack == nil then
PQR_resumeAttack = 0
elseif PQR_resumeAttack > GetTime() then
return true
else
PQR_resumeAttack = 0
end
-- Heroic Protectors Minion of Fear slowing, target/mouseover. by Kinkeh --
local CurseofExhaustCD = select(2,GetSpellCooldown(18223))
local TCoE = UnitDebuffID("target", 18223, "player")
local MCoE = UnitDebuffID("mouseover", 18223, "player")
if UnitExists("target") and UnitName("target") == "Minion of Fear"
and CurseofExhaustCD == 0 then
if not TCoE then
CastSpellByName(GetSpellInfo(18223),nil)
return true
end
end
if UnitExists("mouseover") and UnitName("mouseover") == "Minion of Fear"
and CurseofExhaustCD == 0 then
if not MCoE then
CastSpellByName(GetSpellInfo(18223),"mouseover")
return true
end
end
-- Heroic Protectors Minion of Fear slowing, target/mouseover. by Kinkeh --
--IMPORTANT: Change this if you have any cleaves that would do damage to a secondary target
--as part of your single target rotation. Better to be safe than sorry!
--Used for : Spirit Kings
local cleaveClass = false
local isAOE = strmatch(strupper(PQR_RotationName), "AOE") --checks if we are in AOE mode.
for i=1,4 do
local bossCheck = "boss"..i
if UnitExists(bossCheck) then
--------Wind Lord Checks--------
local BossName = UnitName(bossCheck)
if BossName == "Wind Lord Mel'jarak" then
if UnitIsDead(bossCheck) then
focuscast = true
spearcheck = false
mortalcoil = true
else
focuscast = false
spearcheck = true
mortalcoil = false
end
end
--------Wind Lord Checks--------
local npcID = tonumber(UnitGUID(bossCheck):sub(6,10), 16)
local bossCasting,_,_,_,_,castEnd = UnitCastingInfo(bossCheck)
if npcID == 62511 or npcID == 62711 then --Amber-Shaper Un'sok or Amber Monstrosity
local reshapeName = GetSpellInfo(122370)
local reshapeLife = UnitDebuff("player", reshapeName)
if reshapeLife ~= nil then
local playerCasting = UnitCastingInfo("vehicle")
local playerCasting2 = UnitCastingInfo("player")
--grab spell names for abilities:
local amberExplosion = GetSpellInfo(122402)
--interrupt self if casting amber explosion
if playerCasting == amberExplosion then
--Press the 2nd button (Struggle for Control)
RunMacroText("/click OverrideActionBarButton2")
return true
end
--interrupt self if casting amber explosion
if playerCasting2 == amberExplosion then
--Press the 2nd button (Struggle for Control)
RunMacroText("/click OverrideActionBarButton2")
return true
end
--interrupt the target if casting amber explosion
if bossCasting and bossCasting == amberExplosion then
TargetUnit(bossCheck)
--Press the 1st button (Amber Strike)
RunMacroText("/click OverrideActionBarButton1")
return true
end
if UnitExists("boss2") then
if bossCheck == "boss2" then
return true --prevent the rotation from executing while reshaped
end
else
return true
end
end
elseif npcID == 60709 then --Spirit Kings: Qiang. (Impervious Shield)
--Stop all attacks until 0.2 seconds after cast time ends and until buff (Impervious Shield) is gone.
--only continue checking if we are targetting the boss or have no target.
if (not UnitExists("target")) or (UnitIsUnit("target", bossCheck)) or (cleaveClass or isAOE) then
local impName = GetSpellInfo(117961)
local impShieldBuff = UnitBuffID(bossCheck, 117961)
if (bossCasting and bossCasting == impName) then
StopAttack()
SpellStopCasting()
RunMacroText("/petfollow")
local delayAdd = (castEnd/1000) - GetTime() --the number of seconds remaining on the cast.
PQR_resumeAttack = GetTime() + delayAdd + 0.2
return true
end
if impShieldBuff then
StopAttack()
SpellStopCasting()
RunMacroText("/petfollow")
return true
end
end
elseif npcID == 60710 then --Spirit Kings: Subetai. (Sleight of Hand)
--Stop all attacks when casting Sleight of Hand, and until 0.2 seconds after cast time ends.
--Also stop attacks if not stunned.
--only continue checking if we are targetting the boss or have no target.
if (not UnitExists("target")) or (UnitIsUnit("target", bossCheck)) or (cleaveClass or isAOE) then
local sleightName = GetSpellInfo(118162)
local sleightBuff = UnitBuffID(bossCheck, 118162)
-- HoJ, FoJ, Kidney
local stunList = { 853, 105593, 408 }
local isStunned = nil
for _,v in ipairs(stunList) do
local debuffCheck = UnitDebuffID(bossCheck, v)
if debuffCheck then
isStunned = true
end
end
if (bossCasting and bossCasting == sleightName) then
StopAttack()
SpellStopCasting()
RunMacroText("/petfollow")
local delayAdd = (castEnd/1000) - GetTime() --the number of seconds remaining on the cast.
PQR_resumeAttack = GetTime() + delayAdd + 0.2
return true
end
if sleightBuff and not isStunned then
StopAttack()
SpellStopCasting()
RunMacroText("/petfollow")
return true
end
end
elseif npcID == 60701 then --Spirit Kings: Zian. (Shield of Darkness)
--Stop all attacks until 0.5 seconds after cast time ends and until buff (Shield of Darkness) is gone.
if (not UnitExists("target")) or (UnitIsUnit("target", bossCheck)) or (cleaveClass or isAOE) then
local sodName = GetSpellInfo(117697)
local sodBuff = UnitBuffID(bossCheck, 117697)
if (bossCasting and bossCasting == sodName) then
StopAttack()
SpellStopCasting()
RunMacroText("/petfollow")
local delayAdd = (castEnd/1000) - GetTime() --the number of seconds remaining on the cast.
PQR_resumeAttack = GetTime() + delayAdd + 0.5 --0.5 to account for lag... REALLY do not want to set this off.
return true
end
if sodBuff then
StopAttack()
SpellStopCasting()
RunMacroText("/petfollow")
return true
end
end
end
end
end
--click button to leave.
--Gara'jal isn't a boss while in the Spirit Realm.
local returnSoul = select(7,UnitDebuffID("player",116161))
if returnSoul and returnSoul - GetTime() < 2 then
RunMacroText("/click ExtraActionButton1")
end
Then created an ability called [Misc] Wind lord Spear
Code:
if spearcheck then
if UnitCastingInfo("player") == "Impaling Spear" then return true end
if UnitExists ("focus") then
local FocusHealth = UnitHealth("focus") / UnitHealthMax("focus") * 100
if FocusHealth > 1 then
local SpearDebuff, _, _, _, _, _, SpearDebuffEndTime = UnitDebuffID("focus", 122224)
if not SpearDebuff or SpearDebuffEndTime - GetTime() <= 8 then
RunMacroText("/target focus")
RunMacroText("/click ExtraActionButton1")
RunMacroText("/targetlasttarget")
return true
end
end
end
end
I then placed those 2 abilities into the "Current Abilities" list in your profile. Will this work? Or is this code not going to be called correctly?