[Warlock][Demonology]Demonic Consumption + Implosion
Eluziv3 opened this issue ยท 2 comments
Taking the talent Demonic Consumption causes the rotation to get stuck as it says to Summon Demonic Tyrant and then to cast Implosion straight after. This doesn't work as the Tyrant absorbs all the imps so there's no imps to implode thus the add-on stays on cast Implosion.
looking at Events.lua
HL:RegisterForCombatEvent(
function (...)
local SourceGUID,_,_,_,UnitPetGUID,_,_,_,SpellID = select(4, ...);
-- Check for imp bolt casts
if SpellID == 104318 then
for key, petTable in pairs(HL.GuardiansTable.Pets) do
if SourceGUID == petTable.ID then
petTable.ImpCasts = petTable.ImpCasts - 1
end
end
end
-- Clear the imp table upon Implosion cast
if SpellID == 196277 then
for key, petTable in pairs(HL.GuardiansTable.Pets) do
if petTable.name == "Wild Imp" then
HL.GuardiansTable.Pets[key] = nil
end
end
HL.GuardiansTable.ImpCount = 0
end
-- Update the imp table
UpdatePetTable()
end
, "SPELL_CAST_SUCCESS"
);
because it is registered to RegisterForCombatEvent table that holds Wild Imps info will be wiped on any Implosion cast even from other Warlocks
that if SpellID == 196277 then
should be changed to
if SourceGUID == Player:GUID() and ( SpellID == 196277 or SpellID == 265187 and Spell(267215):IsAvailable() ) then
or move Events.lua in loading order in HeroRotation_Warlock.toc so that Spell.Warlock.Demonology is available and use
local SpellDemonology = Spell.Warlock.Demonology
if SourceGUID == Player:GUID() and ( SpellID == SpellDemonology.Implosion:ID() or SpellID == SpellDemonology.SummonDemonicTyrant:ID() and SpellDemonology.DemonicConsumption:IsAvailable() ) then
Fixed in commit: 738af19