Initial dump of BfA compatibility

Updated for:
- SPELL_POWER_* constants becoming Enum.PowerType.*
- Rank no longer existing in return values for UnitAura, UnitBuff, UnitDebuff, UnitCastingInfo, UnitChannelInfo
- UNIT_POWER event becoming UNIT_POWER_UPDATE
- UnitPopupFrames no longer existing
- Removed events: PLAYER_PET_CHANGED, UNIT_MAXPOWER, PET_BAR_CHANGED, UNIT_DYNAMIC_FLAGS
- Texture return value from UnitAura type changing (name -> id)
- All Warlock specializations using soul shards
- Death Knight rune changes

Haven't tested all classes/specializations yet, so I'm sure I missed some stuff.
Probably need to add support for the new circular cooldown wipe flourish added in the base client.
Saw a problem with cooldown flashes being delayed on DK runes becoming available that probably need to be fixed.
This commit is contained in:
Parnic
2018-06-06 22:57:35 -05:00
parent 0f7a2ff4f1
commit 89ef91b9b3
31 changed files with 353 additions and 83 deletions

View File

@ -7,6 +7,11 @@ local AnticipationSpellId = 114015
ComboPoints.prototype.comboSize = 20
local SPELL_POWER_COMBO_POINTS = SPELL_POWER_COMBO_POINTS
if IceHUD.WowVer >= 80000 then
SPELL_POWER_COMBO_POINTS = Enum.PowerType.ComboPoints
end
-- Constructor --
function ComboPoints.prototype:init()
ComboPoints.super.prototype.init(self, "ComboPoints")
@ -252,8 +257,10 @@ function ComboPoints.prototype:Enable(core)
if IceHUD.WowVer < 70000 then
self:RegisterEvent("UNIT_COMBO_POINTS", "UpdateComboPoints")
else
self:RegisterEvent("UNIT_POWER", "UpdateComboPoints")
self:RegisterEvent("UNIT_MAXPOWER", "UpdateMaxComboPoints")
self:RegisterEvent(IceHUD.UnitPowerEvent, "UpdateComboPoints")
if IceHUD.WowVer < 80000 then
self:RegisterEvent("UNIT_MAXPOWER", "UpdateMaxComboPoints")
end
end
self:RegisterEvent("UNIT_ENTERED_VEHICLE", "UpdateComboPoints")
self:RegisterEvent("UNIT_EXITED_VEHICLE", "UpdateComboPoints")
@ -436,7 +443,7 @@ function ComboPoints.prototype:CreateComboFrame(forceTextureUpdate)
end
function ComboPoints.prototype:UpdateComboPoints(...)
if select('#', ...) >= 3 and select(1, ...) == "UNIT_POWER" and select(3, ...) ~= "COMBO_POINTS" then
if select('#', ...) >= 3 and select(1, ...) == IceHUD.UnitPowerEvent and select(3, ...) ~= "COMBO_POINTS" then
return
end
@ -454,7 +461,11 @@ function ComboPoints.prototype:UpdateComboPoints(...)
end
if IceHUD.WowVer < 70000 then
_, _, _, anticipate = UnitAura("player", GetSpellInfo(AnticipationSpellId))
if IceHUD.WowVer < 80000 then
_, _, _, anticipate = UnitAura("player", GetSpellInfo(AnticipationSpellId))
else
_, _, anticipate = UnitAura("player", GetSpellInfo(AnticipationSpellId))
end
else
anticipate = 0
end
@ -520,7 +531,12 @@ do
function ComboPoints.prototype:CheckAnticipation(e, unit) -- UNIT_AURA handler
if UnitIsUnit(unit, "player") then
local _, _, _, newAntStacks = UnitAura("player", GetSpellInfo(AnticipationSpellId))
local _, _, _, newAntStacks
if IceHUD.WowVer < 80000 then
_, _, _, newAntStacks = UnitAura("player", GetSpellInfo(AnticipationSpellId))
else
_, _, newAntStacks = UnitAura("player", GetSpellInfo(AnticipationSpellId))
end
if newAntStacks ~= antStacks then
antStacks = newAntStacks
self:UpdateComboPoints()