|
|
|
@ -19,70 +19,78 @@ function MythicPlusUtils:New() |
|
|
|
|
self.random = math.random(1000000, 9999999) |
|
|
|
|
self.kickList = { |
|
|
|
|
-- Algeth'ar Academy |
|
|
|
|
[396812] = true, -- https://www.wowhead.com/spell=396812/mystic-blast |
|
|
|
|
[388392] = true, -- https://www.wowhead.com/spell=388392/monotonous-lecture |
|
|
|
|
[388863] = true, -- https://www.wowhead.com/spell=388863/mana-void |
|
|
|
|
[388862] = true, -- https://www.wowhead.com/spell=388862/surge |
|
|
|
|
[377389] = true, -- https://www.wowhead.com/spell=377389/call-of-the-flock |
|
|
|
|
[388623] = true, -- https://www.wowhead.com/spell=388623/branch-out |
|
|
|
|
[396640] = true, -- https://www.wowhead.com/spell=396640/healing-touch |
|
|
|
|
[387975] = true, -- https://www.wowhead.com/spell=387975/arcane-missiles |
|
|
|
|
[387843] = true, -- https://www.wowhead.com/spell=387843/astral-bomb |
|
|
|
|
|
|
|
|
|
[396812] = { true, true }, -- https://www.wowhead.com/spell=396812/mystic-blast |
|
|
|
|
[388392] = { true, true }, -- https://www.wowhead.com/spell=388392/monotonous-lecture |
|
|
|
|
[388863] = { true, true }, -- https://www.wowhead.com/spell=388863/mana-void |
|
|
|
|
[388862] = { true, true }, -- https://www.wowhead.com/spell=388862/surge |
|
|
|
|
[377389] = { true, true }, -- https://www.wowhead.com/spell=377389/call-of-the-flock |
|
|
|
|
[388623] = { true, true }, -- https://www.wowhead.com/spell=388623/branch-out |
|
|
|
|
[396640] = { true, true }, -- https://www.wowhead.com/spell=396640/healing-touch |
|
|
|
|
[387975] = { true, true }, -- https://www.wowhead.com/spell=387975/arcane-missiles |
|
|
|
|
[387843] = { true, true }, -- https://www.wowhead.com/spell=387843/astral-bomb |
|
|
|
|
-- Court of Stars |
|
|
|
|
[211401] = true, -- https://wowhead.com/spell=211401 |
|
|
|
|
[207980] = true, -- https://wowhead.com/spell=207980 |
|
|
|
|
[208165] = true, -- https://wowhead.com/spell=208165 |
|
|
|
|
[207881] = true, -- https://wowhead.com/spell=207881 |
|
|
|
|
[209413] = true, -- https://wowhead.com/spell=209413 |
|
|
|
|
|
|
|
|
|
[211401] = { true, true }, -- https://www.wowhead.com/spell=211401/drifting-embers |
|
|
|
|
[207980] = { true, true }, -- https://www.wowhead.com/spell=207980/disintegration-beam |
|
|
|
|
[208165] = { true, true }, -- https://www.wowhead.com/spell=208165/withering-soul |
|
|
|
|
[207881] = { true, true }, -- https://www.wowhead.com/spell=207881/infernal-eruption |
|
|
|
|
[209413] = { true, false }, -- https://www.wowhead.com/spell=209413/suppress |
|
|
|
|
[209485] = { true, true }, -- https://www.wowhead.com/spell=209485/drain-magic |
|
|
|
|
[209410] = { true, true }, -- https://www.wowhead.com/spell=209410/nightfall-orb |
|
|
|
|
[211470] = { true, true }, -- https://www.wowhead.com/spell=211470/bewitch |
|
|
|
|
[225100] = { true, false }, -- https://www.wowhead.com/spell=225100/charging-station |
|
|
|
|
[211299] = { true, false }, -- https://www.wowhead.com/spell=211299/searing-glare |
|
|
|
|
-- Halls of Valor |
|
|
|
|
[198595] = true, -- https://wowhead.com/spell=198595 |
|
|
|
|
[198959] = true, -- https://wowhead.com/spell=198959 |
|
|
|
|
[215433] = true, -- https://wowhead.com/spell=215433 |
|
|
|
|
[192288] = true, -- https://wowhead.com/spell=192288 |
|
|
|
|
[199726] = true, -- https://wowhead.com/spell=199726 |
|
|
|
|
[198750] = true, -- https://wowhead.com/spell=198750 |
|
|
|
|
|
|
|
|
|
[198595] = { true, true }, -- https://www.wowhead.com/spell=198595/thunderous-bolt |
|
|
|
|
[198959] = { true, true }, -- https://www.wowhead.com/spell=198959/etch |
|
|
|
|
[215433] = { true, true }, -- https://www.wowhead.com/spell=215433/holy-radiance |
|
|
|
|
[192288] = { true, true }, -- https://www.wowhead.com/spell=192288/searing-light |
|
|
|
|
[199726] = { true, true }, -- https://www.wowhead.com/spell=199726/unruly-yell |
|
|
|
|
[198750] = { true, true }, -- https://www.wowhead.com/spell=198750/surge |
|
|
|
|
[198934] = { true, true }, -- https://www.wowhead.com/spell=198934/rune-of-healing |
|
|
|
|
[192563] = { true, true }, -- https://www.wowhead.com/spell=192563/cleansing-flames |
|
|
|
|
-- Ruby Life Pools |
|
|
|
|
[372749] = true, -- https://wowhead.com/spell=372749 |
|
|
|
|
[373803] = true, -- https://wowhead.com/spell=373803 |
|
|
|
|
[373017] = true, -- https://wowhead.com/spell=373017 |
|
|
|
|
[392398] = true, -- https://wowhead.com/spell=392398 |
|
|
|
|
[392451] = true, -- https://wowhead.com/spell=392451 |
|
|
|
|
[385310] = true, -- https://wowhead.com/spell=385310 |
|
|
|
|
|
|
|
|
|
[372749] = { true, true }, -- https://www.wowhead.com/spell=372749/ice-shield |
|
|
|
|
-- [373803] = { true, true }, -- https://www.wowhead.com/spell=373803/cold-claws |
|
|
|
|
[373017] = { true, true }, -- https://www.wowhead.com/spell=373017/roaring-blaze |
|
|
|
|
[392398] = { true, true }, -- https://www.wowhead.com/spell=392398/crackling-detonation |
|
|
|
|
[392451] = { true, true }, -- https://www.wowhead.com/spell=392451/flashfire |
|
|
|
|
[385310] = { true, true }, -- https://www.wowhead.com/spell=385310/lightning-bolt |
|
|
|
|
[384194] = { true, true }, -- https://www.wowhead.com/spell=384194/cinderbolt |
|
|
|
|
[373680] = { true, false }, -- https://www.wowhead.com/spell=373680/frost-overload |
|
|
|
|
-- Shadowmoon Burial Grounds |
|
|
|
|
[152818] = true, -- https://wowhead.com/spell=152818 |
|
|
|
|
[156776] = true, -- https://wowhead.com/spell=156776 |
|
|
|
|
[156722] = true, -- https://wowhead.com/spell=156722 |
|
|
|
|
[398206] = true, -- https://wowhead.com/spell=398206 |
|
|
|
|
[153524] = true, -- https://wowhead.com/spell=153524 |
|
|
|
|
[156718] = true, -- https://wowhead.com/spell=156718 |
|
|
|
|
|
|
|
|
|
[152818] = { true, true }, -- https://www.wowhead.com/spell=152818/shadow-mend |
|
|
|
|
[156776] = { true, true }, -- https://www.wowhead.com/spell=156776/rending-voidlash |
|
|
|
|
[156722] = { true, true }, -- https://www.wowhead.com/spell=156722/void-bolt |
|
|
|
|
[398206] = { true, true }, -- https://www.wowhead.com/spell=398206/death-blast |
|
|
|
|
[153524] = { true, true }, -- https://www.wowhead.com/spell=153524/plague-spit |
|
|
|
|
[156718] = { true, true }, -- https://www.wowhead.com/spell=156718/necrotic-burst |
|
|
|
|
-- Temple of the Jade Serpent |
|
|
|
|
[397888] = true, -- https://wowhead.com/spell=397888 |
|
|
|
|
[395859] = true, -- https://wowhead.com/spell=395859 |
|
|
|
|
[396073] = true, -- https://wowhead.com/spell=396073 |
|
|
|
|
[397914] = true, -- https://wowhead.com/spell=397914 |
|
|
|
|
|
|
|
|
|
[397888] = { true, false }, -- https://www.wowhead.com/spell=397888/hydrolance |
|
|
|
|
[395859] = { true, true }, -- https://www.wowhead.com/spell=395859/haunting-scream |
|
|
|
|
[396073] = { true, true }, -- https://www.wowhead.com/spell=396073/cat-nap |
|
|
|
|
[397914] = { true, true }, -- https://www.wowhead.com/spell=397914/defiling-mist |
|
|
|
|
[397899] = { false, true }, -- https://www.wowhead.com/spell=397899/leg-sweep |
|
|
|
|
[397801] = { true, false }, -- https://www.wowhead.com/spell=397801/hydrolance |
|
|
|
|
[395872] = { true, true }, -- https://www.wowhead.com/spell=395872/sleepy-soliloquy |
|
|
|
|
-- The Azure Vault |
|
|
|
|
[375602] = true, -- https://wowhead.com/spell=375602 |
|
|
|
|
[387564] = true, -- https://wowhead.com/spell=387564 |
|
|
|
|
[373932] = true, -- https://wowhead.com/spell=373932 |
|
|
|
|
[386546] = true, -- https://wowhead.com/spell=386546 |
|
|
|
|
[389804] = true, -- https://wowhead.com/spell=389804 |
|
|
|
|
[377488] = true, -- https://wowhead.com/spell=377488 |
|
|
|
|
[377503] = true, -- https://wowhead.com/spell=377503 |
|
|
|
|
|
|
|
|
|
[375602] = { true, true }, -- https://www.wowhead.com/spell=375602/erratic-growth |
|
|
|
|
[387564] = { true, true }, -- https://www.wowhead.com/spell=387564/mystic-vapors |
|
|
|
|
[373932] = { true, true }, -- https://www.wowhead.com/spell=373932/illusionary-bolt |
|
|
|
|
[386546] = { true, true }, -- https://www.wowhead.com/spell=386546/waking-bane |
|
|
|
|
[389804] = { true, true }, -- https://www.wowhead.com/spell=389804/heavy-tome |
|
|
|
|
[377488] = { true, true }, -- https://www.wowhead.com/spell=377488/icy-bindings |
|
|
|
|
[377503] = { true, true }, -- https://www.wowhead.com/spell=377503/condensed-frost |
|
|
|
|
[375596] = { true, true }, -- https://www.wowhead.com/spell=375596/erratic-growth |
|
|
|
|
-- NO |
|
|
|
|
[384365] = true, -- https://wowhead.com/spell=384365 |
|
|
|
|
[386012] = true, -- https://wowhead.com/spell=386012 |
|
|
|
|
[386024] = true, -- https://wowhead.com/spell=386024 |
|
|
|
|
[387411] = true, -- https://wowhead.com/spell=387411 |
|
|
|
|
[387606] = true, -- https://wowhead.com/spell=387606 |
|
|
|
|
[373395] = true, -- https://wowhead.com/spell=373395 |
|
|
|
|
[376725] = true, -- https://wowhead.com/spell=376725 |
|
|
|
|
[384365] = { true, true }, -- https://www.wowhead.com/spell=384365/disruptive-shout |
|
|
|
|
[386012] = { true, false }, -- https://www.wowhead.com/spell=386012/stormbolt |
|
|
|
|
[386024] = { true, true }, -- https://www.wowhead.com/spell=386024/tempest |
|
|
|
|
[387411] = { true, true }, -- https://www.wowhead.com/spell=387411/death-bolt-volley |
|
|
|
|
[387606] = { true, true }, -- https://www.wowhead.com/spell=387606/dominate |
|
|
|
|
[373395] = { true, true }, -- https://www.wowhead.com/spell=373395/bloodcurdling-shout |
|
|
|
|
[376725] = { true, true }, -- https://www.wowhead.com/spell=376725/storm-bolt |
|
|
|
|
[384808] = { true, true }, -- https://www.wowhead.com/spell=384808/guardian-wind |
|
|
|
|
-- [363607] = {true, true}, -- https://www.wowhead.com/spell=363607/domination-bolt |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Bastion.EventManager:RegisterWoWEvent('UNIT_AURA', function(unit, auras) |
|
|
|
@ -167,7 +175,26 @@ function MythicPlusUtils:CastingCriticalKick(unit, percent) |
|
|
|
|
|
|
|
|
|
if castingSpell then |
|
|
|
|
local spellID = castingSpell:GetID() |
|
|
|
|
if self.kickList[spellID] and unit:IsInterruptibleAt(percent) then |
|
|
|
|
local isKick = unpack(self.kickList[spellID] or { false, false }) |
|
|
|
|
|
|
|
|
|
if isKick and unit:IsInterruptibleAt(percent) then |
|
|
|
|
return true |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
return false |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
---@param unit Unit |
|
|
|
|
---@param percent number |
|
|
|
|
---@return boolean |
|
|
|
|
function MythicPlusUtils:CastingCriticalStun(unit, percent) |
|
|
|
|
local castingSpell = unit:GetCastingOrChannelingSpell() |
|
|
|
|
|
|
|
|
|
if castingSpell then |
|
|
|
|
local spellID = castingSpell:GetID() |
|
|
|
|
local _, isStun = unpack(self.kickList[spellID] or { false, false }) |
|
|
|
|
if isStun and unit:IsInterruptibleAt(percent, true) then |
|
|
|
|
return true |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|