diff --git a/Core/Defaults.lua b/Core/Defaults.lua index 496e6e7..0d045d5 100755 --- a/Core/Defaults.lua +++ b/Core/Defaults.lua @@ -56,6 +56,7 @@ local Defaults = { [Enum.PowerType.SoulShards] = { 0.58, 0.51, 0.79, 1.0 }, [Enum.PowerType.Runes] = { 0.77, 0.12, 0.23, 1.0 }, [Enum.PowerType.Maelstrom] = { 0.25, 0.50, 0.80, 1.0}, + ICICLES = { 0.25, 0.78, 0.92, 1.0}, SOUL_FRAGMENTS = { 0.5, 0.25, 1.00, 1.0}, SOUL = { 0.29, 0.42, 1.00, 1.0}, STAGGER = { 0.00, 1.00, 0.59, 1.0 }, diff --git a/Core/GUI.lua b/Core/GUI.lua index 760d68e..f92956e 100755 --- a/Core/GUI.lua +++ b/Core/GUI.lua @@ -37,6 +37,7 @@ local PowerNames = { [19] = LL("Essence"), [20] = LL("Maelstrom"), ["STAGGER"] = LL("Stagger"), + ["ICICLES"] = LL("Icicles"), ["SOUL_FRAGMENTS"] = LL("Soul Fragments"), ["SOUL"] = LL("Soul"), ["RUNE_RECHARGE"] = LL("Rune on Cooldown"), @@ -1119,10 +1120,11 @@ local function CreateGeneralSettings(parentContainer) [Enum.PowerType.SoulShards] = { 0.58, 0.51, 0.79, 1.0 }, STAGGER = { 0.00, 1.00, 0.59, 1.0 }, [Enum.PowerType.Runes] = { 0.77, 0.12, 0.23, 1.0 }, + Icicles = { 0.29, 0.42, 1.00, 1.0}, SOUL_FRAGMENTS = { 0.29, 0.42, 1.00, 1.0}, SOUL = { 0.29, 0.42, 1.00, 1.0}, [Enum.PowerType.Maelstrom] = { 0.25, 0.50, 0.80, 1.0}, - RUNE_RECHARGE = { 0.5, 0.5, 0.5, 1.0 }, + RUNE_RECHARGE = { 0.5, 0.5, 0.5, 1.0 }, CHARGED_COMBO_POINTS = { 0.25, 0.5, 1.00, 1.0} } } @@ -1152,7 +1154,7 @@ local function CreateGeneralSettings(parentContainer) SecondaryColoursContainer:SetLayout("Flow") CustomColoursContainer:AddChild(SecondaryColoursContainer) - local SecondaryPowerOrder = {Enum.PowerType.Chi, Enum.PowerType.ComboPoints, Enum.PowerType.HolyPower, Enum.PowerType.ArcaneCharges, Enum.PowerType.Essence, Enum.PowerType.SoulShards, "STAGGER", Enum.PowerType.Runes, "RUNE_RECHARGE", "SOUL_FRAGMENTS", "SOUL", Enum.PowerType.Maelstrom, "CHARGED_COMBO_POINTS", "ESSENCE_RECHARGE" } + local SecondaryPowerOrder = {Enum.PowerType.Chi, Enum.PowerType.ComboPoints, Enum.PowerType.HolyPower, Enum.PowerType.ArcaneCharges, Enum.PowerType.Essence, Enum.PowerType.SoulShards, "STAGGER", Enum.PowerType.Runes, "RUNE_RECHARGE", "ICICLES", "SOUL_FRAGMENTS", "SOUL", Enum.PowerType.Maelstrom, "CHARGED_COMBO_POINTS", "ESSENCE_RECHARGE" } for _, powerType in ipairs(SecondaryPowerOrder) do local powerColour = BCDM.db.profile.General.Colours.SecondaryPower[powerType] local PowerColour = AG:Create("ColorPicker") diff --git a/Modules/PowerBar.lua b/Modules/PowerBar.lua index af6af6a..6330581 100755 --- a/Modules/PowerBar.lua +++ b/Modules/PowerBar.lua @@ -39,6 +39,7 @@ local function DetectSecondaryPower() return true elseif class == "MAGE" then if specID == 62 then return true end + if specID == 64 then return true end elseif class == "EVOKER" then return true elseif class == "DEATHKNIGHT" then @@ -49,7 +50,7 @@ local function DetectSecondaryPower() if specID == 262 and showMana then return true end if specID == 263 then return true end elseif class == "PRIEST" then - if specID == 258 and showMana then return true end + if specID == 258 and showMana then return true end end return false end @@ -69,11 +70,11 @@ local function UpdatePowerValues() local powerType = UnitPowerType("player") if class == "DRUID" then local spec = GetSpecialization() - local form = GetShapeshiftFormID() or 0 + local form = GetShapeshiftFormID() or 0 local isHybridMoonkin = (spec == 2 or spec == 3 or spec == 4) and form == 31 or form == 32 or form == 33 or form == 34 or form == 35 local isBalanceHumanoid = (spec == 1 and form == 0) if isHybridMoonkin or isBalanceHumanoid then - powerType = 0 + powerType = 0 end end local powerCurrent = UnitPower("player", powerType) diff --git a/Modules/SecondaryPowerBar.lua b/Modules/SecondaryPowerBar.lua index c57c0e8..6c0a3cb 100755 --- a/Modules/SecondaryPowerBar.lua +++ b/Modules/SecondaryPowerBar.lua @@ -8,6 +8,7 @@ local resizeTimer = nil local isDestruction local SPEC_ARCANE = 62 +local SPEC_FROST = 64 local SPEC_SHADOW = 258 local SPEC_ELEMENTAL = 262 local SPEC_ENHANCEMENT = 263 @@ -55,6 +56,7 @@ local function DetectSecondaryPower() return Enum.PowerType.SoulShards elseif class == "MAGE" then if specID == SPEC_ARCANE then return Enum.PowerType.ArcaneCharges end + if specID == SPEC_FROST then return "ICICLES" end elseif class == "EVOKER" then return Enum.PowerType.Essence elseif class == "DEATHKNIGHT" then @@ -510,6 +512,12 @@ local function UpdatePowerValues() secondaryPowerBar.Status:SetValue(powerCurrent) secondaryPowerBar.Text:SetText(tostring(powerCurrent)) secondaryPowerBar.Status:Show() + elseif powerType == "ICICLES" then + powerCurrent = GetAuraStacks(205473) + secondaryPowerBar.Status:SetMinMaxValues(0, 5) + secondaryPowerBar.Status:SetValue(powerCurrent) + secondaryPowerBar.Text:SetText(tostring(powerCurrent)) + secondaryPowerBar.Status:Show() elseif powerType == "SOUL_FRAGMENTS" then powerCurrent = GetSpellCharges(228477) secondaryPowerBar.Status:SetMinMaxValues(0, 6) @@ -619,6 +627,11 @@ local function CreateTicksBasedOnPowerType() return end + if secondaryPowerResource == "ICICLES" then + BCDM:CreateTicks(5) + return + end + if secondaryPowerResource == "SOUL_FRAGMENTS" then BCDM:CreateTicks(6) return