From 2010026a4e24213a14a6311d2dda86c5141e8f03 Mon Sep 17 00:00:00 2001 From: Taracque Date: Sat, 16 May 2015 17:07:53 +0200 Subject: [PATCH] Tweaked elemental priority --- modules/elemental.lua | 57 ++++++++++++++++++++++++++++--------------------- 1 file changed, 33 insertions(+), 24 deletions(-) diff --git a/modules/elemental.lua b/modules/elemental.lua index 666dd68..4784f96 100755 --- a/modules/elemental.lua +++ b/modules/elemental.lua @@ -129,7 +129,8 @@ Elementarist.elemental = { if (Elementarist.tier7Talent == 21200) and (not ElementaristDB.DisableLM) then if (Elementarist:Count(Elementarist.SpellList["Liquid Magma"],spellInCast,exspell1,exspell2) == 0) then local haveFireTotem,fireTotemName,fireTotemStart,fireTotemDuration = GetTotemInfo(1); - if (fireTotemName ~= "") and (fireTotemDuration and (fireTotemStart + fireTotemDuration - GetTime() ) >= timeshift + 10) then + if ((fireTotemName ~= "") and (fireTotemDuration and (fireTotemStart + fireTotemDuration - GetTime() ) >= timeshift + 15)) or + (Elementarist:Count(Elementarist.SpellList["Searing Totem"],spellInCast,exspell1,exspell2) ~= 0) then d = Elementarist:GetSpellCooldownRemaining(Elementarist.SpellList["Liquid Magma"]) if (d-timeshift <= 0) then return Elementarist.SpellList["Liquid Magma"] @@ -144,16 +145,6 @@ Elementarist.elemental = { end end - -- if Tier6 talent is Unleashed Fury Unleash Flame - if (Elementarist.tier6Talent == 21773) then - if (Elementarist:Count(Elementarist.SpellList["Unleash Flame"],spellInCast,exspell1,exspell2) == 0) then - e = Elementarist:GetSpellCooldownRemaining(Elementarist.SpellList["Unleash Flame"]) - if (e-timeshift <= 0) then - return Elementarist.SpellList["Unleash Flame"]; - end - end - end - -- check if Flame shock applied on target first name, _, _, _, _, _, fsExpiration, unitCaster = Elementarist:hasDeBuff("target", Elementarist.SpellList["Flame Shock"], "player"); if (not fsExpiration) then @@ -186,6 +177,14 @@ Elementarist.elemental = { end end + -- Earth shock if Lightning Shield count >=20 + if (Elementarist:Count(Elementarist.SpellList["Flame Shock"],spellInCast,exspell1,exspell2) == 0 and Elementarist:Count(Elementarist.SpellList["Earth Shock"],spellInCast,exspell1,exspell2) == 0) then + d = Elementarist:GetSpellCooldownRemaining(Elementarist.SpellList["Earth Shock"]) + if ( (d) and ((d-timeshift) <= 0) and (lscount) and (lscount>=20)) then + return Elementarist.SpellList["Earth Shock"] + end + end + -- Lava Burst if not on Cooldown local ascendance, _, _, _, _, _, ascendanceExp = Elementarist:hasBuff("player",Elementarist.SpellList["AscendanceElementalBuff"]); if (ascendance == nil) then @@ -214,19 +213,6 @@ Elementarist.elemental = { end end - -- if Tier6 talent is Elemental Blast use it - if (Elementarist.tier6Talent == 19267) then - if ( - (Elementarist:Count(Elementarist.SpellList["Elemental Blast"],spellInCast,exspell1,exspell2) == 0) and - (IsSpellInRange(Elementarist.SpellList["Elemental Blast"], "target") == 1) - ) then - d = Elementarist:GetSpellCooldownRemaining(Elementarist.SpellList["Elemental Blast"]) - if ((d - timeshift) <= 0) then - return Elementarist.SpellList["Elemental Blast"] - end - end - end - -- Earth shock if Lightning Shield count >=17 and not on cd, and FS debuff remaining > FS cooldown, or FS debuff remaining between FS and FS cd + 2sec and LS count>=13, or has T17 4pcs and LS Count >= 12 if (Elementarist:Count(Elementarist.SpellList["Flame Shock"],spellInCast,exspell1,exspell2) == 0 and Elementarist:Count(Elementarist.SpellList["Earth Shock"],spellInCast,exspell1,exspell2) == 0) then if ( (fsExpiration - GetTime() - timeshift) > Elementarist.lastShockCD ) then @@ -252,6 +238,29 @@ Elementarist.elemental = { end end + -- if Tier6 talent is Elemental Blast use it + if (Elementarist.tier6Talent == 19267) then + if ( + (Elementarist:Count(Elementarist.SpellList["Elemental Blast"],spellInCast,exspell1,exspell2) == 0) and + (IsSpellInRange(Elementarist.SpellList["Elemental Blast"], "target") == 1) + ) then + d = Elementarist:GetSpellCooldownRemaining(Elementarist.SpellList["Elemental Blast"]) + if ((d - timeshift) <= 0) then + return Elementarist.SpellList["Elemental Blast"] + end + end + end + + -- if Tier6 talent is Unleashed Fury Unleash Flame + if (Elementarist.tier6Talent == 21773) then + if (Elementarist:Count(Elementarist.SpellList["Unleash Flame"],spellInCast,exspell1,exspell2) == 0) then + e = Elementarist:GetSpellCooldownRemaining(Elementarist.SpellList["Unleash Flame"]) + if (e-timeshift <= 0) then + return Elementarist.SpellList["Unleash Flame"]; + end + end + end + -- refresh FS if (Elementarist:Count(Elementarist.SpellList["Flame Shock"],spellInCast,exspell1,exspell2) == 0) then if (doFS) and ((fsExpiration - GetTime() - timeshift) < 9) then -- 1.7.9.5