diff --git a/Condition.lua b/Condition.lua index f890154..85bbe09 100644 --- a/Condition.lua +++ b/Condition.lua @@ -865,7 +865,7 @@ Ovale.conditions= local actionCooldownStart, actionCooldownDuration, actionEnable = Ovale:GetComputedSpellCD(condition[1]) return actionCooldownDuration, actionCooldownStart, -1 end, --- Test if the player is in a given stance + -- Test if the player is in a given stance -- 1 : the stance Stance = function(condition) if (GetShapeshiftForm(true) == condition[1]) then @@ -909,6 +909,9 @@ Ovale.conditions= timeToDie = function(condition) return 0, getTargetDead(getTarget(condition.target)), -1 end, + timeWithHaste = function(condition) + return avecHate(condition[1], "spell") + end, TotemExpires = function(condition) local haveTotem, totemName, startTime, duration = GetTotemInfo(totemType[condition[1]]) if not startTime then diff --git a/defaut/Chaman.lua b/defaut/Chaman.lua index 1af4889..48c5a9f 100644 --- a/defaut/Chaman.lua +++ b/defaut/Chaman.lua @@ -34,6 +34,7 @@ Define(STORMSTRIKE 17364) SpellInfo(STORMSTRIKE cd=8) Define(THUNDERSTORM 51490) Define(UNLEASHELEMENTS 73680) +Define(UNLEASHFLAME 73683) Define(WATERSHIELD 52127) SpellAddBuff(WATERSHIELD WATERSHIELD=600) Define(WINDSHEAR 57994) @@ -66,7 +67,7 @@ Define(STRENGTHOFEARTHTOTEM 8075) Define(TREMORTOTEM 8143) ScoreSpells(LIGHTNINGSHIELD CHAINLIGHTNING FLAMESHOCK LAVABURST EARTHSHOCK LIGHTNINGBOLT - STORMSTRIKE LAVALASH) + STORMSTRIKE LAVALASH UNLEASHELEMENTS) AddCheckBox(aoe L(AOE)) AddCheckBox(chain SpellName(CHAINLIGHTNING) default mastery=1) @@ -75,25 +76,30 @@ AddIcon help=main mastery=1 { unless InCombat() { + #/flametongue_weapon,weapon=main if WeaponEnchantExpires(mainhand 400) Spell(FLAMETHONG) } + #/lightning_shield if BuffExpires(LIGHTNINGSHIELD 2) Spell(LIGHTNINGSHIELD) -# if CheckBoxOn(aoe) -# { -# if TotemExpires(fire) Spell(MAGMATOTEM) -# unless TotemExpires(fire) Spell(FIRENOVA) -# if ManaPercent(less 90) Spell(THUNDERSTORM) -# } - if TargetDebuffExpires(FLAMESHOCK 0 mine=1) Spell(FLAMESHOCK) - unless TargetDebuffExpires(FLAMESHOCK 1.6 haste=spell mine=1) Spell(LAVABURST) + + #/unleash_elements,moving=1 + if Speed(more 0) Spell(UNLEASHELEMENTS) + + #/flame_shock,if=!ticking|ticks_remain<3 + if TargetDebuffExpires(FLAMESHOCK 3 mine=1) Spell(FLAMESHOCK) + #/lava_burst,if=(dot.flame_shock.remains-cast_time)>=0.05 + if target.debuffExpires(FLAMESHOCK mine=1) - castTime(LAVABURST) > 0.05 Spell(LAVABURST) + #/earth_shock,if=buff.lightning_shield.stack=9 if BuffPresent(LIGHTNINGSHIELD stacks=9) Spell(EARTHSHOCK) + #/earth_shock,if=buff.lightning_shield.stack>6&dot.flame_shock.remains>cooldown&dot.flame_shock.remains<cooldown+action.flame_shock.tick_time + if BuffPresent(LIGHTNINGSHIELD stacks=7) and { target.debuffExpires(FLAMESHOCK mine=1) > spell(LAVABURST) } + and { target.debuffExpires(FLAMESHOCK mine=1) < spell(LAVABURST) + timeWithHaste(3) } Spell(LAVABURST) + if TotemExpires(fire) Spell(SEARINGTOTEM) + #/spiritwalkers_grace,moving=1 + #/chain_lightning,if=target.adds>2 if CheckBoxOn(aoe) Spell(CHAINLIGHTNING) -# Spell(UNLEASHELEMENTS) - -# if CheckBoxOn(chain) and CastTime(LIGHTNINGBOLT more 1.5) and at least 0s from Spell(LAVABURST) until EndCastTime(CHAINLIGHTNING) -# Spell(CHAINLIGHTNING) - + #/lightning_bolt Spell(LIGHTNINGBOLT) } @@ -101,10 +107,13 @@ AddIcon help=main mastery=2 { unless InCombat() { + #/windfury_weapon,weapon=main if WeaponEnchantExpires(mainhand 400) Spell(WINDFURYWEAPON) + #/flametongue_weapon,weapon=off if WeaponEnchantExpires(offhand 400) Spell(FLAMETHONGWEAPON) } + #/lightning_shield if BuffExpires(LIGHTNINGSHIELD) Spell(LIGHTNINGSHIELD) if CheckBoxOn(aoe) @@ -125,17 +134,26 @@ AddIcon help=main mastery=2 if CheckBoxOff(aoe) { - if BuffPresent(MAELSTROMWEAPON stacks=5) Spell(LIGHTNINGBOLT) + #/searing_totem if TotemExpires(fire) Spell(SEARINGTOTEM) + #/lava_lash Spell(LAVALASH) - if BuffPresent(MAELSTROMWEAPON stacks=4) Spell(LIGHTNINGBOLT) + #/lightning_bolt,if=buff.maelstrom_weapon.stack=5&buff.maelstrom_weapon.react + if BuffPresent(MAELSTROMWEAPON stacks=5) Spell(LIGHTNINGBOLT) + #/unleash_elements Spell(UNLEASHELEMENTS) - if TargetDebuffExpires(FLAMESHOCK 0 mine=1) Spell(FLAMESHOCK) + #/flame_shock,if=!ticking|(buff.unleash_flame.up&ticks_remain<=2) + if TargetDebuffExpires(FLAMESHOCK 0 mine=1) or {BuffPresent(UNLEASHFLAME) and TargetDebuffExpires(FLAMESHOCK 2 mine=1)} + Spell(FLAMESHOCK) + #/earth_shock Spell(EARTHSHOCK) + #/stormstrike Spell(STORMSTRIKE) - Spell(FIRENOVA) - if BuffPresent(MAELSTROMWEAPON stacks=2) Spell(LIGHTNINGBOLT) - Spell(LAVABURST) + #/fire_nova + if TotemPresent(fire totem=MAGMATOTEM) or TotemPresent(fire totem=FIREELEMENTALTOTEM) or TotemPresent(fire totem=FLAMETHONGTOTEM) + Spell(FIRENOVA) + #/lightning_bolt,if=buff.maelstrom_weapon.stack=4&buff.maelstrom_weapon.react + if BuffPresent(MAELSTROMWEAPON stacks=4) Spell(LIGHTNINGBOLT) } Spell(SHAMANISTICRAGE priority=2) diff --git a/defaut/Chasseur.lua b/defaut/Chasseur.lua index de25303..2a0b77f 100644 --- a/defaut/Chasseur.lua +++ b/defaut/Chasseur.lua @@ -59,24 +59,59 @@ ScoreSpells(FOCUSFIRE KILLCOMMAND ARCANESHOT KILLSHOT STEADYSHOT SERPENTSTING AddIcon help=main mastery=1 { + if CheckBoxOn(multi) + { + #/multi_shot,if=target.adds>5 + if Mana(more 56) Spell(MULTISHOT) + #/cobra_shot,if=target.adds>5 + Spell(COBRASHOT) + Spell(STEADYSHOT) + } + #/serpent_sting,if=!ticking if Mana(more 24) and TargetDebuffExpires(SERPENTSTING 0 mine=1) and TargetDeadIn(more 8) Spell(SERPENTSTING) + #/kill_shot if TargetLifePercent(less 20) Spell(KILLSHOT) - if Mana(less 20) Spell(FERVOR) - if pet.BuffPresent(FRENZYEFFECT stacks=5) and BuffExpires(BEASTWITHIN 0) Spell(FOCUSFIRE) + #/kill_command if TargetInRange(GROWL) Spell(KILLCOMMAND) - if Mana(more 56) - { - if CheckBoxOn(multi) Spell(MULTISHOT) - Spell(ARCANESHOT) - } + #/fervor,if=focus<=20 + if Mana(less 20) Spell(FERVOR) + #/arcane_shot,if=focus>=90|buff.beast_within.up + if Mana(more 90) or BuffPresent(BEASTWITHIN) Spell(ARCANESHOT) + #/cobra_shot Spell(COBRASHOT) Spell(STEADYSHOT) } +AddIcon help=offgcd mastery=1 +{ + #/focus_fire,five_stacks=1,if=!buff.beast_within.up + if pet.BuffPresent(FRENZYEFFECT stacks=5) and BuffExpires(BEASTWITHIN 0) Spell(FOCUSFIRE) +} + +AddIcon help=cd mastery=1 +{ + unless BuffPresent(ASPECTOFTHEHAWK) or BuffPresent(ASPECTOFTHEFOX) Spell(ASPECTOFTHEHAWK) + #/bestial_wrath,if=focus>60 + if Mana(more 60) Spell(BESTIALWRATH usable=1) + #/rapid_fire,if=!buff.bloodlust.up&!buff.beast_within.up + if BuffExpires(heroism 0) and BuffExpires(BEASTWITHIN 0) Spell(RAPIDFIRE) + Item(Trinket0Slot usable=1) + Item(Trinket1Slot usable=1) +} + AddIcon help=main mastery=2 { - if Mana(more 24) and TargetDebuffExpires(SERPENTSTING 0 mine=1) and TargetDeadIn(more 8) Spell(SERPENTSTING) - if TargetDebuffPresent(SERPENTSTING) and Mana(more 49) Spell(CHIMERASHOT) + if CheckBoxOn(multi) + { + #/multi_shot,if=target.adds>5 + if Mana(more 56) Spell(MULTISHOT) + #/cobra_shot,if=target.adds>5 + Spell(STEADYSHOT) + } + + #/serpent_sting,if=!ticking&target.health_pct<=80 + if Mana(more 24) and TargetDebuffExpires(SERPENTSTING 0 mine=1) and TargetDeadIn(more 8) and TargetLifePercent(less 90) Spell(SERPENTSTING) + if TargetDebuffPresent(SERPENTSTING) and Mana(more 49) Spell(CHIMERASHOT) if TargetLifePercent(less 20) Spell(KILLSHOT) if BuffPresent(FIRE) Spell(AIMEDSHOT) if Mana(less 40) or Counter(ss equal 1) Spell(STEADYSHOT) @@ -86,6 +121,15 @@ AddIcon help=main mastery=2 unless 0.25s before Spell(CHIMERASHOT) Spell(STEADYSHOT) } +AddIcon help=cd mastery=1 +{ + unless BuffPresent(ASPECTOFTHEHAWK) or BuffPresent(ASPECTOFTHEFOX) Spell(ASPECTOFTHEHAWK) + #/rapid_fire + Spell(RAPIDFIRE) + Item(Trinket0Slot usable=1) + Item(Trinket1Slot usable=1) +} + AddIcon help=main mastery=3 { if Mana(more 24) and TargetDebuffExpires(SERPENTSTING 0 mine=1) and TargetDeadIn(more 8) Spell(SERPENTSTING) @@ -102,11 +146,10 @@ AddIcon help=main mastery=3 } -AddIcon help=cd +AddIcon help=cd mastery=3 { unless BuffPresent(ASPECTOFTHEHAWK) or BuffPresent(ASPECTOFTHEFOX) Spell(ASPECTOFTHEHAWK) if TargetDebuffExpires(HUNTERSMARK 2) and TargetDebuffExpires(MARKEDFORDEATH 0) and TargetDeadIn(more 20) Spell(HUNTERSMARK nored=1) - Spell(BESTIALWRATH usable=1) Item(Trinket0Slot usable=1) Item(Trinket1Slot usable=1) Spell(CALLOFTHEWILD usable=1)