diff --git a/Ovale.toc b/Ovale.toc index 401e46f..19323dc 100644 --- a/Ovale.toc +++ b/Ovale.toc @@ -4,7 +4,7 @@ ## Notes: Show the icon of the next spell to cast ## Notes-frFR: Affiche l'icône du prochain sort à lancer ## Author: Sidoine -## Version: 5.0.0 +## Version: 5.0.1 ## OptionalDeps: Ace3, Masque, Recount, Skada, LibBabble-CreatureType-3.0, LibRangeCheck-2.0 ## SavedVariables: OvaleDB ## SavedVariablesPerCharacter: OvaleDBPC diff --git a/OvaleCondition.lua b/OvaleCondition.lua index 155431a..dba6044 100644 --- a/OvaleCondition.lua +++ b/OvaleCondition.lua @@ -1147,8 +1147,10 @@ OvaleCondition.conditions= return compare(GetUnitSpeed(getTarget(condition.target))*100/7, condition[1], condition[2]) end, -- Check if the spell is usable + -- 1: spell Id + -- return: bool spellusable = function(condition) - return testbool(IsUsableSpell(spellId), condition[1], condition[2]) + return testbool(IsUsableSpell(condition[1]), condition[2], condition[3]) end, -- Get the spell cooldown -- 1: spell ID @@ -1157,7 +1159,7 @@ OvaleCondition.conditions= if type(condition[1]) == "string" then local sharedCd = OvaleState.state.cd[condition[1]] if sharedCd then - return 0, nil, sharedCD.duration, sharedCD.start, -1 + return 0, nil, sharedCd.duration, sharedCd.start, -1 else return nil end @@ -1346,7 +1348,7 @@ OvaleCondition.conditions= if ((condition[2] or 0) >= mainHandExpiration) then return 0 else - return OvaleState.maintenant + mainHandExpiration - condition[2] + return OvaleState.maintenant + mainHandExpiration - (condition[2] or 60) end else if (not hasOffHandEnchant) then @@ -1356,7 +1358,7 @@ OvaleCondition.conditions= if ((condition[2] or 0) >= offHandExpiration) then return 0 else - return OvaleState.maintenant + offHandExpiration - condition[2] + return OvaleState.maintenant + offHandExpiration - (condition[2] or 60) end end end, diff --git a/defaut/Chaman.lua b/defaut/Chaman.lua index 181e888..5faf105 100644 --- a/defaut/Chaman.lua +++ b/defaut/Chaman.lua @@ -78,15 +78,16 @@ AddIcon mastery=1 help=main { if not InCombat() { - main.Spell(flametongue_weapon) + if WeaponEnchantExpires(mainhand) main.Spell(flametongue_weapon) } { - if TalentPoints(elemental_blast_talent) and not BuffPresent(ascendance) Spell(elemental_blast) if TalentPoints(unleashed_fury_talent) and not BuffPresent(ascendance) Spell(unleash_elements) if not BuffPresent(ascendance) and {not target.DebuffPresent(flame_shock) or TicksRemain(flame_shock) <2 or {{BuffPresent(bloodlust) or BuffPresent(elemental_mastery) } and TicksRemain(flame_shock) <3 } } Spell(flame_shock) if target.DebuffRemains(flame_shock) >CastTime(lava_burst) and {BuffPresent(ascendance) or SpellCooldown(lava_burst) } Spell(lava_burst) + if TalentPoints(elemental_blast_talent) and not BuffPresent(ascendance) Spell(elemental_blast) if BuffPresent(lightning_shield) ==0 Spell(earth_shock) + if BuffPresent(lightning_shield) >3 and target.DebuffRemains(flame_shock) >SpellCooldown(earth_shock) and target.DebuffRemains(flame_shock) <SpellCooldown(earth_shock) +TickTime(flame_shock) Spell(earth_shock) if not TotemPresent(fire) Spell(searing_totem) Spell(lightning_bolt) } @@ -130,7 +131,7 @@ AddIcon mastery=1 help=cd if target.HealthPercent() <25 or TimeInCombat() >5 Spell(bloodlust) { - if {{SpellCooldown(ascendance) >10 or Level() <87 } and SpellCooldown(fire_elemental_totem) >10 } or BuffPresent(ascendance) or BuffPresent(bloodlust) or TotemPresent(fire_elemental_totem) { Item(Trinket0Slot usable=1) Item(Trinket1Slot usable=1) } + if {{SpellCooldown(ascendance) >10 or Level() <87 } and SpellCooldown(fire_elemental_totem) >10 } or BuffPresent(ascendance) or BuffPresent(bloodlust) or TotemPresent(fire) { Item(Trinket0Slot usable=1) Item(Trinket1Slot usable=1) } if BuffPresent(bloodlust) or BuffPresent(ascendance) or {{SpellCooldown(ascendance) >10 or Level() <87 } and SpellCooldown(fire_elemental_totem) >10 } Spell(blood_fury) if TalentPoints(elemental_mastery_talent) and TimeInCombat() >15 and {{not BuffPresent(bloodlust) and TimeInCombat() <120 } or {not BuffPresent(berserking) and not BuffPresent(bloodlust) and BuffPresent(ascendance) } or {TimeInCombat() >=200 and {SpellCooldown(ascendance) >30 or Level() <87 } } } Spell(elemental_mastery) if not TotemPresent(fire) Spell(fire_elemental_totem) @@ -148,7 +149,7 @@ AddIcon mastery=2 help=main if not InCombat() { main.Spell(windfury_weapon) - off.Spell(flametongue_weapon) + if WeaponEnchantExpires(offhand) off.Spell(flametongue_weapon) } { @@ -174,6 +175,7 @@ AddIcon mastery=2 help=main if Enemies() >2 and BuffPresent(maelstrom_weapon) >=3 Spell(chain_lightning) Spell(unleash_elements) if not target.DebuffPresent(flame_shock) Spell(flame_shock) + Spell(stormblast) Spell(stormstrike) if BuffPresent(maelstrom_weapon) ==5 and SpellCooldown(chain_lightning) >=2 Spell(lightning_bolt) if Enemies() >2 and BuffPresent(maelstrom_weapon) >1 Spell(chain_lightning) @@ -214,8 +216,8 @@ AddIcon mastery=2 help=cd if Enemies() >1 { Spell(blood_fury) - Spell(ascendance) - if not TotemPresent(fire) Spell(fire_elemental_totem) + if SpellCooldown(strike) >=3 Spell(ascendance) + if not TotemPresent(fire) and {BuffPresent(bloodlust) or BuffPresent(elemental_mastery) or target.DeadIn() <=0 +10 or {TalentPoints(elemental_mastery_talent) and {SpellCooldown(elemental_mastery) ==0 or SpellCooldown(elemental_mastery) >80 } or TimeInCombat() >=60 } } Spell(fire_elemental_totem) Spell(feral_spirit) } } diff --git a/defaut/Chevalier.lua b/defaut/Chevalier.lua index 0870b01..f161b50 100644 --- a/defaut/Chevalier.lua +++ b/defaut/Chevalier.lua @@ -11,6 +11,9 @@ Define(blood_tap 45529) Define(dark_transformation 63560) SpellInfo(dark_transformation duration=30 unholy=1 runicpower=-100 xxx=0 ) SpellAddBuff(dark_transformation dark_transformation=1) +Define(death_and_decay 43265) + SpellInfo(death_and_decay duration=10 unholy=1 runicpower=-100 xxx=0 cd=30 ) + SpellAddBuff(death_and_decay death_and_decay=1) Define(death_coil 47541) SpellInfo(death_coil runicpower=400 ) Define(empower_rune_weapon 47568) @@ -31,6 +34,7 @@ Define(howling_blast 49184) SpellInfo(howling_blast frost=1 runicpower=-100 xxx=0 ) Define(icy_touch 45477) SpellInfo(icy_touch frost=1 runicpower=-100 xxx=0 ) +Define(killing_machine 51128) Define(mogu_power_potion_aura 105706) SpellInfo(mogu_power_potion_aura duration=25 cd=1 ) SpellAddBuff(mogu_power_potion_aura mogu_power_potion_aura=1) @@ -56,6 +60,9 @@ Define(sudden_doom 49530) Define(summon_gargoyle 49206) SpellInfo(summon_gargoyle duration=40 runicpower=600 cd=180 ) SpellAddBuff(summon_gargoyle summon_gargoyle=1) +Define(unholy_blight 115989) + SpellInfo(unholy_blight duration=10 cd=90 ) + SpellAddBuff(unholy_blight unholy_blight=1) Define(unholy_frenzy 49016) SpellInfo(unholy_frenzy duration=30 cd=180 ) SpellAddBuff(unholy_frenzy unholy_frenzy=1) @@ -63,29 +70,33 @@ Define(unholy_presence 48265) SpellAddBuff(unholy_presence unholy_presence=1) Define(blood_tap_talent 13) Define(plague_leech_talent 2) +Define(unholy_blight_talent 3) AddIcon mastery=2 help=main { if not InCombat() { - Spell(horn_of_winter) unless Stance(2) Spell(frost_presence) + Spell(horn_of_winter) } - if target.DebuffRemains(frost_fever) <=0 or target.DebuffRemains(blood_plague) <=0 Spell(outbreak) + if target.DebuffRemains(frost_fever) <3 or target.DebuffRemains(blood_plague) <3 Spell(outbreak) if not target.DebuffPresent(frost_fever) Spell(howling_blast) if not target.DebuffPresent(blood_plague) Spell(plague_strike) - if TalentPoints(plague_leech_talent) and {{SpellCooldown(outbreak) <1 } or {BuffPresent(rime) and target.DebuffRemains(blood_plague) <3 and {RuneCount(unholy) >=1 or RuneCount(death) >=1 } } } Spell(plague_leech) + if TalentPoints(plague_leech_talent) and not {{BuffPresent(killing_machine) and RunicPower() <10 } or {RuneCount(unholy) ==2 or RuneCount(frost) ==2 or RuneCount(death) ==2 } } Spell(plague_leech) if BuffPresent(rime) Spell(howling_blast) - if RunicPower() >=76 Spell(frost_strike) - if RuneCount(unholy) >=1 Spell(obliterate) + if RunicPower() >=88 Spell(frost_strike) + if BuffPresent(killing_machine) Spell(frost_strike) + if BuffPresent(killing_machine) and RunicPower() <10 Spell(obliterate) + if {RuneCount(unholy) ==2 or RuneCount(frost) ==2 or RuneCount(death) ==2 } Spell(obliterate) Spell(howling_blast) Spell(frost_strike) - Spell(obliterate) + Spell(death_and_decay) + Spell(plague_strike) Spell(horn_of_winter) } AddIcon mastery=2 help=offgcd { Spell(pillar_of_frost) - if target.HealthPercent() <=35 Spell(soul_reaper) + if target.HealthPercent() <=35 or {{target.HealthPercent() -3 *{target.HealthPercent() /target.DeadIn() } } <=35 } Spell(soul_reaper) if TalentPoints(blood_tap_talent) Spell(blood_tap) } AddIcon mastery=2 help=cd @@ -95,8 +106,9 @@ AddIcon mastery=2 help=cd Spell(army_of_the_dead) } if TimeInCombat() >=10 Spell(blood_fury) - { Item(Trinket0Slot usable=1) Item(Trinket1Slot usable=1) } + if {RuneCount(frost) >=1 or RuneCount(death) >=1 } { Item(Trinket0Slot usable=1) Item(Trinket1Slot usable=1) } Spell(raise_dead) + if TalentPoints(unholy_blight_talent) and {target.DebuffRemains(frost_fever) <3 or target.DebuffRemains(blood_plague) <3 } Spell(unholy_blight) if target.DeadIn() <=60 and BuffPresent(mogu_power_potion_aura) Spell(empower_rune_weapon) Spell(empower_rune_weapon) } @@ -104,8 +116,8 @@ AddIcon mastery=3 help=main { if not InCombat() { - Spell(horn_of_winter) unless Stance(3) Spell(unholy_presence) + Spell(horn_of_winter) } if target.DebuffRemains(frost_fever) <3 or target.DebuffRemains(blood_plague) <3 Spell(outbreak) if not target.DebuffPresent(frost_fever) Spell(icy_touch) @@ -123,7 +135,7 @@ AddIcon mastery=3 help=main } AddIcon mastery=3 help=offgcd { - if target.HealthPercent() <=35.5 Spell(soul_reaper) + if target.HealthPercent() <=35 or {{target.HealthPercent() -3 *{target.HealthPercent() /target.DeadIn() } } <=35 } Spell(soul_reaper) if TalentPoints(blood_tap_talent) Spell(blood_tap) } AddIcon mastery=3 help=cd @@ -136,6 +148,7 @@ AddIcon mastery=3 help=cd if TimeInCombat() >=2 Spell(blood_fury) if TimeInCombat() >=4 Spell(unholy_frenzy) if TimeInCombat() >=4 { Item(Trinket0Slot usable=1) Item(Trinket1Slot usable=1) } + if TalentPoints(unholy_blight_talent) and {target.DebuffRemains(frost_fever) <3 or target.DebuffRemains(blood_plague) <3 } Spell(unholy_blight) Spell(summon_gargoyle) if target.DeadIn() <=60 and BuffPresent(mogu_power_potion_aura) Spell(empower_rune_weapon) Spell(empower_rune_weapon) diff --git a/defaut/Demoniste.lua b/defaut/Demoniste.lua index 8571eb4..d7e19d5 100644 --- a/defaut/Demoniste.lua +++ b/defaut/Demoniste.lua @@ -75,8 +75,8 @@ Define(seed_of_corruption 27243) SpellAddTargetDebuff(seed_of_corruption seed_of_corruption=1) Define(service_felguard 111898) SpellInfo(service_felguard cd=120 ) -Define(service_succubus 111896) - SpellInfo(service_succubus cd=120 ) +Define(service_felhunter 111897) + SpellInfo(service_felhunter cd=120 ) Define(shadow_bolt 686) SpellInfo(shadow_bolt demonicfury=40 ) Define(shadowburn 17877) @@ -95,10 +95,10 @@ Define(summon_doomguard 18540) SpellInfo(summon_doomguard cd=600 ) Define(summon_felguard 30146) SpellInfo(summon_felguard demonicfury=0 ) +Define(summon_felhunter 691) + SpellInfo(summon_felhunter demonicfury=0 ) Define(summon_infernal 1122) SpellInfo(summon_infernal cd=600 ) -Define(summon_succubus 712) - SpellInfo(summon_succubus demonicfury=0 ) Define(touch_of_chaos 103964) SpellInfo(touch_of_chaos demonicfury=40 stance=1) Define(unstable_affliction 30108) @@ -117,11 +117,11 @@ AddIcon mastery=1 help=main if not InCombat() { if not BuffPresent(spell_power_multiplier) Spell(dark_intent) - unless pet.CreatureFamily(Succubus) Spell(summon_succubus) + unless pet.CreatureFamily(Felhunter) Spell(summon_felhunter) } if target.DebuffExpires(magic_vulnerability any=1) Spell(curse_of_the_elements) - if TalentPoints(grimoire_of_service_talent) Spell(service_succubus) - if TalentPoints(grimoire_of_sacrifice_talent) and BuffExpires(grimoire_of_sacrifice) unless pet.CreatureFamily(Succubus) Spell(summon_succubus) + if TalentPoints(grimoire_of_service_talent) Spell(service_felhunter) + if TalentPoints(grimoire_of_sacrifice_talent) and BuffExpires(grimoire_of_sacrifice) unless pet.CreatureFamily(Felhunter) Spell(summon_felhunter) if Enemies() >3 { if {BuffExpires(soulburn) and not InFlightToTarget(seed_of_corruption) and not target.DebuffPresent(seed_of_corruption) } or {BuffPresent(soulburn) and not target.DebuffPresent(soulburn_seed_of_corruption) and not InFlightToTarget(soulburn_seed_of_corruption) } Spell(seed_of_corruption) @@ -130,12 +130,12 @@ AddIcon mastery=1 help=main if not InFlightToTarget(fel_flame) Spell(fel_flame) } if BuffPresent(soulburn) Spell(soul_swap) - if not InFlightToTarget(haunt) and target.DebuffRemains(haunt) <target.NextTick(haunt) +1 +CastTime(haunt) and SoulShards() Spell(haunt) - if Enemies() >1 and TimeInCombat() <10 Spell(soul_swap) - if not InFlightToTarget(haunt) and target.DebuffRemains(haunt) <target.NextTick(haunt) +1 +CastTime(haunt) and SoulShards() >1 Spell(haunt) + if not InFlightToTarget(haunt) and target.DebuffRemains(haunt) <TickTime(haunt) +1 +CastTime(haunt) and SoulShards() Spell(haunt) + if Enemies() >1 and TimeInCombat() <10 and Glyph(56226) Spell(soul_swap) + if not InFlightToTarget(haunt) and target.DebuffRemains(haunt) <TickTime(haunt) +1 +CastTime(haunt) and SoulShards() >1 Spell(haunt) if {not target.DebuffPresent(agony) or target.DebuffRemains(agony) <=TickTime(drain_soul) *2 } and target.DeadIn() >=8 Spell(agony) - if {not target.DebuffPresent(corruption) or target.DebuffRemains(corruption) <target.NextTick(corruption) } and target.DeadIn() >=6 Spell(corruption) - if {not target.DebuffPresent(unstable_affliction) or target.DebuffRemains(unstable_affliction) <{CastTime(unstable_affliction) +target.NextTick(unstable_affliction) } } and target.DeadIn() >=5 Spell(unstable_affliction) + if {not target.DebuffPresent(corruption) or target.DebuffRemains(corruption) <TickTime(corruption) } and target.DeadIn() >=6 Spell(corruption) + if {not target.DebuffPresent(unstable_affliction) or target.DebuffRemains(unstable_affliction) <{CastTime(unstable_affliction) +TickTime(unstable_affliction) } } and target.DeadIn() >=5 Spell(unstable_affliction) if TicksRemain(agony) <Ticks(agony) /2 and target.DeadIn() >=8 Spell(agony) if TicksRemain(corruption) <Ticks(corruption) /2 and target.DeadIn() >=6 Spell(corruption) if TicksRemain(unstable_affliction) <Ticks(unstable_affliction) /2 +1 and target.DeadIn() >=5 Spell(unstable_affliction) @@ -150,7 +150,8 @@ AddIcon mastery=1 help=offgcd { if BuffExpires(soulburn) and not target.DebuffPresent(soulburn_seed_of_corruption) and not InFlightToTarget(soulburn_seed_of_corruption) and SoulShards() Spell(soulburn) } - if BuffPresent(dark_soul) and {BuffRemains(dark_soul) >=18.5 or BuffRemains(dark_soul) <=1.5 } and SoulShards() Spell(soulburn) + if BuffPresent(dark_soul) and SoulShards() Spell(soulburn) + if {target.TicksRemain(unstable_affliction) <Ticks(unstable_affliction) /2 or target.TicksRemain(corruption) <Ticks(corruption) /2 or target.TicksRemain(agony) <Ticks(agony) /2 } and target.HealthPercent() <=20 and SoulShards() Spell(soulburn) } AddIcon mastery=1 help=moving { @@ -188,14 +189,14 @@ AddIcon mastery=2 help=main if TalentPoints(grimoire_of_sacrifice_talent) and BuffExpires(grimoire_of_sacrifice) unless pet.CreatureFamily(Felguard) Spell(summon_felguard) if Enemies() >5 { - if {not target.DebuffPresent(corruption) or target.DebuffRemains(corruption) <target.NextTick(corruption) } and target.DeadIn() >=6 Spell(corruption) + if {not target.DebuffPresent(corruption) or target.DebuffRemains(corruption) <TickTime(corruption) } and target.DeadIn() >=6 Spell(corruption) Spell(hand_of_guldan) if {not target.DebuffPresent(doom) or target.DebuffRemains(doom) <40 } and target.DeadIn() >30 Spell(doom) if TalentPoints(harvest_life_talent) Spell(harvest_life) Spell(life_tap) } - if {not target.DebuffPresent(corruption) or target.DebuffRemains(corruption) <target.NextTick(corruption) } and target.DeadIn() >=6 Spell(corruption) - if {not target.DebuffPresent(doom) or target.DebuffRemains(doom) <target.NextTick(doom) or {TicksRemain(doom) +1 <{target.TicksRemain(doom) + Ticks(doom) } and BuffPresent(dark_soul) } } and target.DeadIn() >=30 Spell(doom) + if {not target.DebuffPresent(corruption) or target.DebuffRemains(corruption) <TickTime(corruption) } and target.DeadIn() >=6 Spell(corruption) + if {not target.DebuffPresent(doom) or target.DebuffRemains(doom) <TickTime(doom) or {TicksRemain(doom) +1 <{target.TicksRemain(doom) + Ticks(doom) } and BuffPresent(dark_soul) } } and target.DeadIn() >=30 Spell(doom) if target.DebuffRemains(corruption) >20 and BuffExpires(dark_soul) and DemonicFury() <=750 and target.DeadIn() >30 if Stance(1) cancel.Texture(Spell_shadow_demonform) if not InFlightToTarget(hand_of_guldan) and target.DebuffRemains(shadowflame) <1 +CastTime(shadow_bolt) Spell(hand_of_guldan) if target.DebuffRemains(corruption) <20 Spell(touch_of_chaos) @@ -248,11 +249,11 @@ AddIcon mastery=3 help=main if not InCombat() { if not BuffPresent(spell_power_multiplier) Spell(dark_intent) - unless pet.CreatureFamily(Succubus) Spell(summon_succubus) + unless pet.CreatureFamily(Felhunter) Spell(summon_felhunter) } if target.DebuffExpires(magic_vulnerability any=1) Spell(curse_of_the_elements) - if TalentPoints(grimoire_of_service_talent) Spell(service_succubus) - if TalentPoints(grimoire_of_sacrifice_talent) and BuffExpires(grimoire_of_sacrifice) unless pet.CreatureFamily(Succubus) Spell(summon_succubus) + if TalentPoints(grimoire_of_service_talent) Spell(service_felhunter) + if TalentPoints(grimoire_of_sacrifice_talent) and BuffExpires(grimoire_of_sacrifice) unless pet.CreatureFamily(Felhunter) Spell(summon_felhunter) if Enemies() >2 { if BuffPresent(fire_and_brimstone) and not target.DebuffPresent(immolate) Spell(immolate) @@ -262,10 +263,11 @@ AddIcon mastery=3 help=main } if Enemies() >1 focus.Spell(havoc) if BurningEmbers() if target.HealthPercent(less 20) Spell(shadowburn) - if BurningEmbers() and {BuffStacks(backdraft) <3 or Level() <86 } Spell(chaos_bolt) - if BuffExpires(backdraft) Spell(conflagrate) if TicksRemain(immolate) <Ticks(immolate) /2 and target.DeadIn() >=5 Spell(immolate) + if BurningEmbers() and {BuffStacks(backdraft) <3 or Level() <86 } and {BurningEmbers() >3.5 or BuffRemains(dark_soul) >CastTime(chaos_bolt) } and ManaPercent() <=80 Spell(chaos_bolt) + Spell(conflagrate) Spell(incinerate) + if BurningEmbers() >2 and ManaPercent() <10 Spell(chaos_bolt) } AddIcon mastery=3 help=offgcd { diff --git a/defaut/Druide.lua b/defaut/Druide.lua index 33e4e2c..91f6a72 100644 --- a/defaut/Druide.lua +++ b/defaut/Druide.lua @@ -158,16 +158,17 @@ AddIcon mastery=2 help=main if ComboPoints() >=5 and target.DeadIn() >=6 and target.DebuffRemains(rip) <2.0 and {BuffPresent(berserk) or target.DebuffRemains(rip) <=SpellCooldown(tigers_fury) } Spell(rip) if BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {{{ComboPoints() >=5 and target.DebuffRemains(rip) >{5 +SpellCooldown(healing_touch) } and BuffRemains(savage_roar) >={1 +SpellCooldown(healing_touch) } and BuffRemains(berserk) >SpellCooldown(healing_touch) } } } Spell(healing_touch) if ComboPoints() >=5 and target.DebuffRemains(rip) >5.0 and BuffRemains(savage_roar) >=1.0 and BuffPresent(berserk) Spell(ferocious_bite) - if BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {target.HealthPercent() <=25 or {target.DebuffRemains(rip) >4 and ArmorSetParts(T14 more 4) } } and {{{target.DeadIn() >={8.5 +SpellCooldown(healing_touch) } and SpellCooldown(tigers_fury) >21 and target.DebuffRemains(rake) <{12.0 +SpellCooldown(healing_touch) } } } } Spell(healing_touch) - if BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {target.HealthPercent() <=25 or {target.DebuffRemains(rip) >4 and ArmorSetParts(T14 more 4) } } and {{{target.DeadIn() >={8.5 +SpellCooldown(healing_touch) } and target.DebuffRemains(rake) <{3.0 +SpellCooldown(healing_touch) } and {BuffRemains(berserk) >SpellCooldown(healing_touch) or {SpellCooldown(tigers_fury) +0.8 } >=target.DebuffRemains(rake) } } } } Spell(healing_touch) - if target.DeadIn() >=8.5 and BuffPresent(dream_of_cenarius_damage) and {{LastSpellDamageMultiplier(rake) <DamageMultiplier(rake) } or {target.DebuffRemains(rake) <12.0 and {LastSpellDamageMultiplier(rake) <=DamageMultiplier(rake) } and not PreviousSpell(rake) } } Spell(rake) + if ComboPoints() >=5 and target.DeadIn() >=8.5 and target.DebuffRemains(rip) <=12 and BuffRemains(savage_roar) <={target.DebuffRemains(rip) +4 } Spell(savage_roar) + if BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {target.HealthPercent() <=25 or target.DebuffRemains(rip) >4 } and {{{target.DeadIn() >={8.5 +SpellCooldown(healing_touch) } and {BuffRemains(tigers_fury) >=SpellCooldown(healing_touch) or {SpellCooldown(tigers_fury) >21 and target.DebuffRemains(rake) <{12.0 +SpellCooldown(healing_touch) } } } } } } Spell(healing_touch) + if BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {target.HealthPercent() <=25 or target.DebuffRemains(rip) >4 } and {{{target.DeadIn() >={8.5 +SpellCooldown(healing_touch) } and target.DebuffRemains(rake) <{3.0 +SpellCooldown(healing_touch) } and {BuffRemains(berserk) >SpellCooldown(healing_touch) or {SpellCooldown(tigers_fury) +0.8 } >=target.DebuffRemains(rake) } } } } Spell(healing_touch) + if target.DeadIn() >=8.5 and BuffPresent(dream_of_cenarius_damage) and {LastSpellDamageMultiplier(rake) <=DamageMultiplier(rake) } and not PreviousSpell(rake) Spell(rake) if target.DeadIn() >=8.5 and target.DebuffRemains(rake) <9.0 and not TalentPoints(dream_of_cenarius_talent) and BuffPresent(tigers_fury) and {LastSpellDamageMultiplier(rake) <DamageMultiplier(rake) } Spell(rake) if target.DeadIn() >=8.5 and target.DebuffRemains(rake) <3.0 and {BuffPresent(berserk) or {SpellCooldown(tigers_fury) +0.8 } >=target.DebuffRemains(rake) } Spell(rake) if BuffPresent(omen_of_clarity) Spell(ravage usable=1) if BuffPresent(omen_of_clarity) Spell(shred) if {target.DeadIn() <=4 and ComboPoints() >=5 } or target.DeadIn() <=1 Spell(ferocious_bite) - if BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {{{ComboPoints() >=5 and target.DebuffRemains(rip) >=6.0 and BuffPresent(savage_roar) } } } Spell(healing_touch) - if ComboPoints() >=5 and target.DebuffRemains(rip) >=6.0 and BuffPresent(savage_roar) Spell(ferocious_bite) + if BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {{{ComboPoints() >=5 and target.DebuffRemains(rip) >={8.0 +SpellCooldown(healing_touch) } and BuffRemains(savage_roar) >={SpellCooldown(healing_touch) } } } } Spell(healing_touch) + if ComboPoints() >=5 and target.DebuffRemains(rip) >=8.0 and BuffPresent(savage_roar) Spell(ferocious_bite) if {BuffPresent(tigers_fury) or BuffPresent(berserk) } Spell(ravage usable=1) if {{ComboPoints() <5 and target.DebuffRemains(rip) <3.0 } or {ComboPoints() ==0 and BuffRemains(savage_roar) <2 } } Spell(ravage usable=1) if SpellCooldown(tigers_fury) <=3.0 Spell(ravage usable=1) @@ -184,7 +185,7 @@ AddIcon mastery=2 help=offgcd if Energy() <=35 and not BuffPresent(omen_of_clarity) Spell(tigers_fury) if not BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and TalentPoints(natures_swiftness_talent) and {{{ComboPoints() >=5 and target.DebuffRemains(rip) >SpellCooldown(healing_touch) and target.HealthPercent() <=25 } } } Spell(natures_swiftness) if not BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and TalentPoints(natures_swiftness_talent) and target.HealthPercent() >25 and {{{ComboPoints() >=5 and target.DeadIn() >={6 +SpellCooldown(healing_touch) } and target.DebuffRemains(rip) <{2 +SpellCooldown(healing_touch) } and {BuffPresent(berserk) or target.DebuffRemains(rip) <=SpellCooldown(tigers_fury) } } } } Spell(natures_swiftness) - if not BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {target.HealthPercent() <=25 or {target.DebuffRemains(rip) >4 and ArmorSetParts(T14 more 4) } } and {{{target.DeadIn() >={8.5 +SpellCooldown(healing_touch) } and BuffPresent(tigers_fury) and target.DebuffRemains(rake) <{12.0 +SpellCooldown(healing_touch) } } } } Spell(natures_swiftness) + if not BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {target.HealthPercent() <=25 or {target.DebuffRemains(rip) >4 and ArmorSetParts(T14 more 4) } } and {{{target.DeadIn() >={8.5 +SpellCooldown(healing_touch) } and BuffPresent(tigers_fury) } } } Spell(natures_swiftness) if not BuffPresent(predatory_swiftness) and TalentPoints(dream_of_cenarius_talent) and BuffExpires(dream_of_cenarius_damage) and {target.HealthPercent() <=25 or {target.DebuffRemains(rip) >4 and ArmorSetParts(T14 more 4) } } and {{{target.DeadIn() >={8.5 +SpellCooldown(healing_touch) } and target.DebuffRemains(rake) <{3.0 +SpellCooldown(healing_touch) } and {BuffRemains(berserk) >SpellCooldown(healing_touch) or {SpellCooldown(tigers_fury) +0.8 } >=target.DebuffRemains(rake) } } } } Spell(natures_swiftness) } AddIcon mastery=2 help=cd diff --git a/defaut/Guerrier.lua b/defaut/Guerrier.lua index c0bea7a..dc62237 100644 --- a/defaut/Guerrier.lua +++ b/defaut/Guerrier.lua @@ -94,7 +94,7 @@ AddIcon mastery=1 help=offgcd if not BuffPresent(enrage) Spell(berserker_rage) if target.DebuffPresent(colossus_smash) if CheckBoxOn(heroic_leap_check) Spell(heroic_leap) if Rage() >=40 Spell(deadly_calm) - if {{BuffPresent(taste_for_blood) and BuffRemains(taste_for_blood) <=2 } or {BuffStacks(taste_for_blood) ==5 and BuffPresent(overpower) } or {BuffPresent(taste_for_blood) and target.DebuffRemains(colossus_smash) <=2 and not SpellCooldown(colossus_smash) ==0 } or BuffPresent(deadly_calm) or Rage() >110 } and target.HealthPercent() >=20 Spell(heroic_strike) + if {{BuffPresent(taste_for_blood) and BuffRemains(taste_for_blood) <=2 } or {BuffStacks(taste_for_blood) ==5 and BuffPresent(overpower) } or {BuffPresent(taste_for_blood) and target.DebuffRemains(colossus_smash) <=2 and not SpellCooldown(colossus_smash) ==0 } or BuffPresent(deadly_calm) or Rage() >110 } and target.HealthPercent() >=20 and target.DebuffPresent(colossus_smash) Spell(heroic_strike) } AddIcon mastery=1 help=aoe { diff --git a/defaut/Mage.lua b/defaut/Mage.lua index f0bad6b..cdc8870 100644 --- a/defaut/Mage.lua +++ b/defaut/Mage.lua @@ -107,12 +107,11 @@ AddIcon mastery=1 help=main } if ItemCharges(36799) <3 and False() Spell(conjure_mana_gem) if BuffPresent(alter_time) and BuffPresent(presence_of_mind) Spell(arcane_blast) - if not target.DebuffPresent(nether_tempest) Spell(nether_tempest) if BuffExpires(rune_of_power) and BuffExpires(alter_time) Spell(rune_of_power) if not target.DebuffPresent(nether_tempest) Spell(nether_tempest) if ManaPercent() >92 Spell(arcane_blast) - if BuffPresent(arcane_charge) and BuffExpires(arcane_power) and BuffExpires(alter_time) and target.DeadIn() >25 and {ManaPercent() <92 or SpellCooldown(mana_gem) >10 or ItemCharges(36799) ==0 } Spell(arcane_barrage) - if BuffStacks(arcane_charge) ==6 and BuffExpires(arcane_missiles_aura) and target.DeadIn() >25 Spell(arcane_barrage) + if BuffPresent(arcane_charge) and BuffExpires(arcane_power) and BuffExpires(alter_time) and target.DeadIn() >25 and {SpellCooldown(mana_gem) >10 or ItemCharges(36799) ==0 } Spell(arcane_barrage) + if BuffStacks(arcane_charge) >=4 and BuffExpires(arcane_missiles_aura) and target.DeadIn() >25 Spell(arcane_barrage) Spell(arcane_blast) } AddIcon mastery=1 help=offgcd @@ -195,6 +194,7 @@ AddIcon mastery=3 help=main if BuffPresent(fingers_of_frost_aura) and BuffRemains(fingers_of_frost_aura) <5 Spell(ice_lance) if target.DeadIn() >=4 and BuffStacks(fingers_of_frost_aura) <2 and SpellCooldown(icy_veins) <GCD() and BuffRemains(invocation) >20 and BuffExpires(alter_time) Spell(frozen_orb) if BuffPresent(fingers_of_frost_aura) and BuffRemains(fingers_of_frost_aura) <2 Spell(ice_lance) + if target.DebuffStacks(frostbolt) <3 Spell(frostbolt) if BuffPresent(brain_freeze) and {BuffPresent(alter_time) or SpellCooldown(alter_time_activate) >4 } Spell(frostfire_bolt) if BuffPresent(brain_freeze) and {BuffPresent(alter_time) or SpellCooldown(alter_time_activate) >4 } Spell(ice_lance) if BuffPresent(fingers_of_frost_aura) Spell(ice_lance) diff --git a/defaut/Paladin.lua b/defaut/Paladin.lua index a2cb015..12a6103 100644 --- a/defaut/Paladin.lua +++ b/defaut/Paladin.lua @@ -14,15 +14,11 @@ Define(execution_sentence 114916) SpellAddTargetDebuff(execution_sentence execution_sentence=1) Define(exorcism 879) SpellInfo(exorcism holy=-1 cd=15 ) -Define(glyph_word_of_glory 115522) - SpellInfo(glyph_word_of_glory duration=6 ) - SpellAddBuff(glyph_word_of_glory glyph_word_of_glory=1) Define(guardian_of_ancient_kings 86659) SpellInfo(guardian_of_ancient_kings duration=12 cd=180 ) SpellAddBuff(guardian_of_ancient_kings guardian_of_ancient_kings=1) Define(hammer_of_wrath 24275) SpellInfo(hammer_of_wrath holy=-0 cd=6 ) -Define(harsh_word 130552) Define(inquisition 84963) SpellInfo(inquisition duration=10 holy=1 ) SpellAddBuff(inquisition inquisition=1) @@ -49,6 +45,7 @@ AddIcon mastery=3 help=main if {BuffExpires(inquisition) or BuffRemains(inquisition) <=2 } and {HolyPower() >=3 } Spell(inquisition) if HolyPower() ==5 Spell(templars_verdict) Spell(hammer_of_wrath usable=1) + if SpellCooldown(hammer_of_wrath) >0 and SpellCooldown(hammer_of_wrath) <=0.2 Texture(Spell_nature_timestop) Spell(exorcism) Spell(crusader_strike) Spell(judgment) @@ -57,13 +54,12 @@ AddIcon mastery=3 help=main AddIcon mastery=3 help=offgcd { if target.IsInterruptible() Spell(rebuke) - if {BuffExpires(glyph_word_of_glory) } and {HolyPower() >=3 } Spell(harsh_word) if BuffPresent(inquisition) Spell(execution_sentence) } AddIcon mastery=3 help=cd { - if BuffPresent(inquisition) Spell(avenging_wrath) if BuffPresent(inquisition) and BuffPresent(avenging_wrath) Spell(guardian_of_ancient_kings) + if BuffPresent(inquisition) Spell(avenging_wrath) if BuffPresent(inquisition) { Item(Trinket0Slot usable=1) Item(Trinket1Slot usable=1) } } ]] \ No newline at end of file diff --git a/defaut/Pretre.lua b/defaut/Pretre.lua index 7ac280d..528e83d 100644 --- a/defaut/Pretre.lua +++ b/defaut/Pretre.lua @@ -53,13 +53,12 @@ AddIcon mastery=3 help=main Spell(shadowform) } Spell(shadowform) - if BuffPresent(surge_of_darkness) and PreviousSpell(mind_blast) >=1 Spell(mind_spike) if ShadowOrbs() ==3 Spell(devouring_plague) if SpellCooldown(mind_blast) Spell(mind_blast) if BuffPresent(surge_of_darkness) Spell(mind_spike) - if {not target.DebuffPresent(shadow_word_pain) or target.DebuffRemains(shadow_word_pain) <target.NextTick(shadow_word_pain) } Spell(shadow_word_pain) + if {not target.DebuffPresent(shadow_word_pain) or target.DebuffRemains(shadow_word_pain) <TickTime(shadow_word_pain) } Spell(shadow_word_pain) if target.HealthPercent(less 20) Spell(shadow_word_death) - if {not target.DebuffPresent(vampiric_touch) or target.DebuffRemains(vampiric_touch) <CastTime(vampiric_touch) +target.NextTick(vampiric_touch) } Spell(vampiric_touch) + if {not target.DebuffPresent(vampiric_touch) or target.DebuffRemains(vampiric_touch) <CastTime(vampiric_touch) +TickTime(vampiric_touch) } Spell(vampiric_touch) Spell(halo_damage) Spell(mind_flay) } diff --git a/defaut/Voleur.lua b/defaut/Voleur.lua index 9548aeb..ff119e4 100644 --- a/defaut/Voleur.lua +++ b/defaut/Voleur.lua @@ -99,7 +99,7 @@ AddIcon mastery=1 help=cd if TalentPoints(preparation_talent) and not BuffPresent(vanish) and SpellCooldown(vanish) >60 Spell(preparation) { Item(Trinket0Slot usable=1) Item(Trinket1Slot usable=1) } Spell(berserking) - if TimeInCombat() >10 and not BuffPresent(stealthed) Spell(vanish) + if TimeInCombat() >10 and not BuffPresent(stealthed) and not BuffPresent(shadow_blades) Spell(vanish) if {BuffPresent(bloodlust) or TimeInCombat() >60 } and BuffRemains(slice_and_dice) >=12000 Spell(shadow_blades) Spell(vendetta) } @@ -113,10 +113,9 @@ AddIcon mastery=2 help=main if BuffRemains(slice_and_dice) <2 Spell(slice_and_dice) if TicksRemain(rupture) <2 and ComboPoints() ==5 and BuffPresent(deep_insight) and target.DeadIn() >10 Spell(rupture) if ComboPoints() ==5 and BuffPresent(deep_insight) Spell(eviscerate) - if TicksRemain(rupture) <2 and ComboPoints() ==5 and target.DeadIn() >10 Spell(rupture) - if ComboPoints() ==5 Spell(eviscerate) - if ComboPoints() <5 and TicksRemain(revealing_strike) <2 Spell(revealing_strike) - if ComboPoints() <5 Spell(sinister_strike) + if BuffStacks(anticipation) ==5 Spell(eviscerate) + if BuffStacks(anticipation) <5 and TicksRemain(revealing_strike) <2 Spell(revealing_strike) + if {not BuffPresent(shadow_blades) and BuffStacks(anticipation) <4 } or BuffStacks(anticipation) <5 Spell(sinister_strike) } AddIcon mastery=2 help=offgcd { @@ -132,7 +131,7 @@ AddIcon mastery=2 help=cd if TalentPoints(preparation_talent) and not BuffPresent(vanish) and SpellCooldown(vanish) >60 Spell(preparation) { Item(Trinket0Slot usable=1) Item(Trinket1Slot usable=1) } Spell(berserking) - if TimeInCombat() >10 and not BuffPresent(stealthed) Spell(vanish) + if TimeInCombat() >10 and not BuffPresent(stealthed) and not BuffPresent(shadow_blades) Spell(vanish) if {BuffPresent(bloodlust) or TimeInCombat() >60 } and BuffRemains(slice_and_dice) >=12000 Spell(shadow_blades) if Energy() <35 and BuffRemains(slice_and_dice) >4 and BuffExpires(adrenaline_rush) Spell(killing_spree) if Energy() <35 Spell(adrenaline_rush)