Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function(t)
- --if frost:
- --t1: Cold Heart==20, t2: Cold Heart>=10, t3: Pillar Of Frost<=3
- --t4: Unholy Strength
- --t7: POF CD > 6, t8: CH >16, t9: POF running, t10: POF off cd
- --t11: Obliteration not up
- --t12: CH >= 13
- --t13: Razorice == 5
- --The path to the sound clip that will play
- local sound_clip = "Interface\AddOns\WeakAuras\PowerAurasMedia\Sounds\ESPARK1.ogg"
- --Set this flag to 'false' if we don't want the sound to play
- local sound_on = true
- --This method plays the sound clip
- function playSoundClip ()
- PlaySoundFile(sound_clip, "master")
- end
- --Local variable for GCD
- local gcd = UnitPowerType'player' == 3 and (UnitBuff("player",GetSpellInfo(13750)) and .8 or 1) or max(1.5/(1 + .01 * UnitSpellHaste'player'), UnitBuff('player', GetSpellInfo(194249)) and .67 or .75)
- local aura_env = aura_env
- if GetSpecialization() == 2 and t[11] and t[13] then
- --if frost, Oblit not up, razorice == 5
- if t[1] then
- --20 stacks CH
- if t[7] and t[4] then
- --if POF on CD for > 6 and UNH STR is up
- if sound_on then playSoundClip() end
- return true
- end
- if t[9] or t[10] then
- --if POF ready, or POF running, (removed t[6] timer condition)
- if sound_on then playSoundClip() end
- return true
- else --need to wait
- -- CH at 20 stacks and need to wait 5 seconds rechecking to see if theres a proc otherwise tell to cast
- --C_Timer.After(5,function() WeakAuras.ScanEvents("CHAINS_TIMEOUT") end)
- end
- elseif t[8] and t[7] then
- -- print("CH>16")
- if t[4] then --if UH is up
- --print("UH up")
- -- CH>16, UH < GCD, POF on CD
- --UH (53365) Remaining < GCD
- local _, _, _, _, _, _, expirationTime = UnitBuff("player", (GetSpellInfo(53365)), nil, "PLAYER")
- local remaining = expirationTime - GetTime()
- --print("CH>16, UH UP, GCD=", gcd, " remaining=", remaining )
- if remaining < gcd then
- if sound_on then playSoundClip() end
- return true
- end
- end
- elseif t[12] and t[4] and IsPlayerSpell(207057) then
- --CH>13, Unholy Str is up, Shattering Strikes chosen
- if sound_on then playSoundClip() end
- return true
- elseif t[2] then
- --print("CH>10")
- -->10 stacks and
- if t[9] then
- --print("POF up")
- --POF (51271) remaining < GCD
- local _, _, _, _, _, _, expirationTime = UnitBuff("player", (GetSpellInfo(51271)), nil, "PLAYER")
- local remaining = expirationTime - GetTime()
- -- print("CH>10, POF up, GCD=", gcd, " remaining=", remaining )
- if remaining < gcd then
- if sound_on then playSoundClip() end
- return true
- end
- end
- end
- elseif GetSpecialization() == 3 then
- --print("UNHOLY")
- --if unholy:
- --t4: Unholy Strength, t5: master of ghouls
- --if t1==20 and (t4 or t5) playsoundfile and return true
- if t[1] then --if CH == 20
- if sound_on then playSoundClip() end
- return true
- elseif t[8] then --CH > 16
- if t[4] then --if unholy strength is up (53365)
- local _, _, _, _, _, _, expirationTime = UnitBuff("player", (GetSpellInfo(53365)), nil, "PLAYER")
- local remaining = expirationTime - GetTime()
- -- print("CH>16, UH UP, GCD=", gcd, " remaining=", remaining )
- if remaining < gcd then --if remaining time on buff is less than GCD
- if sound_on then playSoundClip() end
- return true
- end
- elseif t[5] then --if master of ghouls is up (246995)
- local _, _, _, _, _, _, expirationTime = UnitBuff("player", (GetSpellInfo(246995)), nil, "PLAYER")
- local remaining = expirationTime - GetTime()
- -- print("CH>16, MoG UP, GCD=", gcd, " remaining=", remaining )
- if remaining < gcd then --if remaining time on buff is less than GCD
- if sound_on then playSoundClip() end
- return true
- end
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement