Quantcast

Warlock: Fixes to destruction script for Immolate and Rain of Fire.

Johnny C. Lam [09-02-13 - 15:41]
Warlock: Fixes to destruction script for Immolate and Rain of Fire.

- Use the correct spell ID for the instant-cast Rain of Fire gained by
  destruction warlocks after level 54 (Aftermath).

- Also check for the Immolate debuff applied to targets near an Immolate
  target when determining whether a fresh Immolate must be cast on the
  current target.

Fixes from @ShmooDude in ticket 284.

git-svn-id: svn://svn.curseforge.net/wow/ovale/mainline/trunk@1014 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Filename
defaut/Demoniste.lua
diff --git a/defaut/Demoniste.lua b/defaut/Demoniste.lua
index 37588b2..6f426d1 100644
--- a/defaut/Demoniste.lua
+++ b/defaut/Demoniste.lua
@@ -63,6 +63,9 @@ Define(hellfire 1949)
 Define(immolate 348)
   SpellInfo(immolate duration=15 tick=3 haste=spell )
   SpellAddTargetDebuff(immolate immolate=1)
+Define(immolate_aoe 108686)
+  SpellInfo(immolate_aoe duration=15 tick=3 haste=spell )
+SpellList(immolate_debuff immolate immolate_aoe)
 Define(immolation_aura 104025)
   SpellInfo(immolation_aura duration=10 demonicfury=0 stance=1)
   SpellAddBuff(immolation_aura immolation_aura=1)
@@ -84,6 +87,7 @@ Define(molten_core 122355)
 Define(rain_of_fire 5740)
   SpellInfo(rain_of_fire duration=6 )
   SpellAddBuff(rain_of_fire rain_of_fire=1)
+Define(rain_of_fire_aftermath 104232)
 Define(seed_of_corruption 27243)
   SpellInfo(seed_of_corruption duration=18 tick=3 haste=spell )
   SpellAddTargetDebuff(seed_of_corruption seed_of_corruption=1)
@@ -261,9 +265,9 @@ AddIcon mastery=3 help=main
 	if target.DebuffExpires(magic_vulnerability any=1) Spell(curse_of_the_elements)
 	if TalentPoints(grimoire_of_service_talent) Spell(service_felhunter)
 	if BurningEmbers() if target.HealthPercent(less 20) Spell(shadowburn)
-	if {target.TicksRemain(immolate) <Ticks(immolate) /2 or target.DebuffExpires(immolate) } and target.DeadIn() >=5 Spell(immolate)
+	if {target.TicksRemain(immolate_debuff) <Ticks(immolate-debuff) /2 or target.DebuffExpires(immolate_debuff) } and target.DeadIn() >=5 Spell(immolate)
 	if Charges(conflagrate) ==2 Spell(conflagrate)
-	if not target.DebuffPresent(rain_of_fire) and not InFlightToTarget(rain_of_fire) Spell(rain_of_fire)
+	if not target.DebuffPresent(rain_of_fire_aftermath) and not InFlightToTarget(rain_of_fire_aftermath) Spell(rain_of_fire_aftermath)
 	if BurningEmbers() and {BuffStacks(backdraft) <3 or Level() <86 } and {{BurningEmbers() / 10} >3.5 or BuffRemains(dark_soul_instability) >CastTime(chaos_bolt) or BuffRemains(skull_banner) >CastTime(chaos_bolt) } Spell(chaos_bolt)
 	Spell(conflagrate)
 	Spell(incinerate)
@@ -278,16 +282,16 @@ AddIcon mastery=3 help=offgcd
 AddIcon mastery=3 help=aoe
 {

-	if not target.DebuffPresent(rain_of_fire) and not InFlightToTarget(rain_of_fire) Spell(rain_of_fire)
+	if not target.DebuffPresent(rain_of_fire_aftermath) and not InFlightToTarget(rain_of_fire_aftermath) Spell(rain_of_fire_aftermath)
 	if {BurningEmbers() / 10} >=3.5 and BurningEmbers() and target.HealthPercent() <=20 focus.Spell(havoc)
 	if {BurningEmbers() / 10} >=3.5 and BurningEmbers() and BuffStacks(havoc) >=1 if target.HealthPercent(less 20) Spell(shadowburn)
 	if BurningEmbers() and BuffExpires(fire_and_brimstone) Spell(fire_and_brimstone)
-	if BuffPresent(fire_and_brimstone) and not target.DebuffPresent(immolate) Spell(immolate)
+	if BuffPresent(fire_and_brimstone) and not target.DebuffPresent(immolate_debuff) Spell(immolate)
 	if BuffPresent(fire_and_brimstone) Spell(conflagrate)
 	if BuffPresent(fire_and_brimstone) Spell(incinerate)
-	if not target.DebuffPresent(immolate) Spell(immolate)
+	if not target.DebuffPresent(immolate_debuff) Spell(immolate)

-	if not target.DebuffPresent(rain_of_fire) and not InFlightToTarget(rain_of_fire) Spell(rain_of_fire)
+	if not target.DebuffPresent(rain_of_fire_aftermath) and not InFlightToTarget(rain_of_fire_aftermath) Spell(rain_of_fire_aftermath)
 	focus.Spell(havoc)
 }
 AddIcon mastery=3 help=cd