mirror of
https://github.com/parnic/ice-hud.git
synced 2025-06-16 22:51:53 -05:00
Compare commits
17 Commits
Author | SHA1 | Date | |
---|---|---|---|
d43555b7c4
|
|||
90e0dd1597
|
|||
6282dfb256
|
|||
4de8cb0d27
|
|||
ea28a05051
|
|||
ca80ca3f75
|
|||
fe22f7e658
|
|||
354fb483bb
|
|||
f6c737c654
|
|||
9a38c4b3ea
|
|||
ab6b662ac4
|
|||
a2addcb627
|
|||
7f84c28538
|
|||
924bd4a6ef
|
|||
0f753448d7
|
|||
891ddc230c
|
|||
06353d4974
|
7
.github/workflows/release.yml
vendored
7
.github/workflows/release.yml
vendored
@ -42,4 +42,9 @@ jobs:
|
|||||||
- name: Package and release for Classic
|
- name: Package and release for Classic
|
||||||
uses: BigWigsMods/packager@master
|
uses: BigWigsMods/packager@master
|
||||||
with:
|
with:
|
||||||
args: -g 1.13.5 -w 0
|
args: -g classic -w 0
|
||||||
|
|
||||||
|
- name: Package and release for TBC
|
||||||
|
uses: BigWigsMods/packager@master
|
||||||
|
with:
|
||||||
|
args: -g bc -w 0
|
||||||
|
@ -18,6 +18,7 @@ IceHUD.debugging = false
|
|||||||
|
|
||||||
IceHUD.WowVer = select(4, GetBuildInfo())
|
IceHUD.WowVer = select(4, GetBuildInfo())
|
||||||
IceHUD.WowClassic = WOW_PROJECT_ID and WOW_PROJECT_ID == WOW_PROJECT_CLASSIC
|
IceHUD.WowClassic = WOW_PROJECT_ID and WOW_PROJECT_ID == WOW_PROJECT_CLASSIC
|
||||||
|
IceHUD.WowClassicBC = WOW_PROJECT_ID and WOW_PROJECT_ID == WOW_PROJECT_BURNING_CRUSADE_CLASSIC
|
||||||
|
|
||||||
IceHUD.UnitPowerEvent = "UNIT_POWER_UPDATE"
|
IceHUD.UnitPowerEvent = "UNIT_POWER_UPDATE"
|
||||||
|
|
||||||
|
10
IceHUD.toc
10
IceHUD.toc
@ -1,9 +1,7 @@
|
|||||||
#@retail@
|
## Interface: 90005
|
||||||
## Interface: 90001
|
## Interface-Retail: 90005
|
||||||
#@end-retail@
|
## Interface-Classic: 11306
|
||||||
#@non-retail@
|
## Interface-BC: 20501
|
||||||
# ## Interface: 11305
|
|
||||||
#@end-non-retail@
|
|
||||||
## Author: Parnic, originally created by Iceroth
|
## Author: Parnic, originally created by Iceroth
|
||||||
## Name: IceHUD
|
## Name: IceHUD
|
||||||
## Title: IceHUD |cff7fff7f-Ace3-|r
|
## Title: IceHUD |cff7fff7f-Ace3-|r
|
||||||
|
@ -1,9 +1,7 @@
|
|||||||
#@retail@
|
## Interface: 90005
|
||||||
## Interface: 90001
|
## Interface-Retail: 90005
|
||||||
#@end-retail@
|
## Interface-Classic: 11306
|
||||||
#@non-retail@
|
## Interface-BC: 20501
|
||||||
# ## Interface: 11305
|
|
||||||
#@end-non-retail@
|
|
||||||
## Title: IceHUD |cff7fff7f-Options-|r
|
## Title: IceHUD |cff7fff7f-Options-|r
|
||||||
## Author: Parnic
|
## Author: Parnic
|
||||||
## Version: @project-version@
|
## Version: @project-version@
|
||||||
|
@ -243,7 +243,14 @@ function IceUnitBar.prototype:Update()
|
|||||||
self.mana = IceHUD:MathRound(self.mana / 100)
|
self.mana = IceHUD:MathRound(self.mana / 100)
|
||||||
self.maxMana = IceHUD:MathRound(self.maxMana / 100)
|
self.maxMana = IceHUD:MathRound(self.maxMana / 100)
|
||||||
end
|
end
|
||||||
self.manaPercentage = self.maxMana ~= 0 and (self.mana/self.maxMana) or 0
|
|
||||||
|
-- account for cases where maxMana is 0, perhaps briefly (during certain spells, for example)
|
||||||
|
-- and properly handle it as full. this allows for proper alpha handling during these times.
|
||||||
|
if self.maxMana == self.mana then
|
||||||
|
self.manaPercentage = 1
|
||||||
|
else
|
||||||
|
self.manaPercentage = self.maxMana ~= 0 and (self.mana/self.maxMana) or 0
|
||||||
|
end
|
||||||
|
|
||||||
local locClass
|
local locClass
|
||||||
locClass, self.unitClass = UnitClass(self.unit)
|
locClass, self.unitClass = UnitClass(self.unit)
|
||||||
|
20
changelog.md
20
changelog.md
@ -1,5 +1,25 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
v1.13.4:
|
||||||
|
|
||||||
|
- Show Demon Hunter Fury top text as the raw Fury amount instead of a 0-100 scale with DogTags off. (ticket #301)
|
||||||
|
- Package newer LibDogTag to fix upgrade bug in that library.
|
||||||
|
|
||||||
|
v1.13.3:
|
||||||
|
|
||||||
|
- Activated Totems module for all classes in Shadowlands. Some class abilities spawn units that live for a specific amount of time, and the game handles these as Totems.
|
||||||
|
- Fixed an issue where mana bars could use the wrong alpha settings if the player's maximum mana was 0 (such as during the use of Soulshape).
|
||||||
|
- Update TOC for 9.0.5
|
||||||
|
|
||||||
|
v1.13.2:
|
||||||
|
|
||||||
|
- Fixed which version of LibDogTag was being packaged. The previous version did not have 9.0 compatibility and was generating errors (ticket #293).
|
||||||
|
|
||||||
|
v1.13.1:
|
||||||
|
|
||||||
|
- Added support for Anima-charged combo points for Kyrian covenant (ticket #291).
|
||||||
|
- Updated TOC for 9.0.2
|
||||||
|
|
||||||
v1.13.0:
|
v1.13.0:
|
||||||
|
|
||||||
- Made compatible with 9.0
|
- Made compatible with 9.0
|
||||||
|
@ -12,12 +12,20 @@ if IceHUD.WowVer >= 80000 or IceHUD.WowClassic then
|
|||||||
SPELL_POWER_COMBO_POINTS = Enum.PowerType.ComboPoints
|
SPELL_POWER_COMBO_POINTS = Enum.PowerType.ComboPoints
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local GetUnitChargedPowerPoints = GetUnitChargedPowerPoints
|
||||||
|
if not GetUnitChargedPowerPoints then
|
||||||
|
GetUnitChargedPowerPoints = function()
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
-- Constructor --
|
-- Constructor --
|
||||||
function ComboPoints.prototype:init()
|
function ComboPoints.prototype:init()
|
||||||
ComboPoints.super.prototype.init(self, "ComboPoints")
|
ComboPoints.super.prototype.init(self, "ComboPoints")
|
||||||
|
|
||||||
self:SetDefaultColor("ComboPoints", 1, 1, 0)
|
self:SetDefaultColor("ComboPoints", 1, 1, 0)
|
||||||
self:SetDefaultColor("AnticipationPoints", 1, 0, 1)
|
self:SetDefaultColor("AnticipationPoints", 1, 0, 1)
|
||||||
|
self:SetDefaultColor("KyrianAnimaComboPoint", 0.3137254901960784, 0.3725490196078432, 1)
|
||||||
self.scalingEnabled = true
|
self.scalingEnabled = true
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -215,8 +223,29 @@ function ComboPoints.prototype:GetOptions()
|
|||||||
disabled = function()
|
disabled = function()
|
||||||
return not self.moduleSettings.enabled
|
return not self.moduleSettings.enabled
|
||||||
end,
|
end,
|
||||||
|
order = 35
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if IceHUD.WowVer >= 90000 then
|
||||||
|
opts["bShowAnimaCharged"] = {
|
||||||
|
type = 'toggle',
|
||||||
|
width = 'double',
|
||||||
|
name = L["Show Anima-charged points"],
|
||||||
|
desc = L["Whether or not to color an anima-charged combo point a separate color. Set the KyrianAnimaComboPoint color to the color you would like it to be."],
|
||||||
|
get = function()
|
||||||
|
return self.moduleSettings.bShowAnimaCharged
|
||||||
|
end,
|
||||||
|
set = function(info, v)
|
||||||
|
self.moduleSettings.bShowAnimaCharged = v
|
||||||
|
self:UpdateChargedComboPoints()
|
||||||
|
end,
|
||||||
|
disabled = function()
|
||||||
|
return not self.moduleSettings.enabled
|
||||||
|
end,
|
||||||
|
order = 36
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
return opts
|
return opts
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -235,6 +264,7 @@ function ComboPoints.prototype:GetDefaultSettings()
|
|||||||
defaults["comboGap"] = 0
|
defaults["comboGap"] = 0
|
||||||
defaults["showAnticipation"] = true
|
defaults["showAnticipation"] = true
|
||||||
defaults["bShowWithNoTarget"] = true
|
defaults["bShowWithNoTarget"] = true
|
||||||
|
defaults["bShowAnimaCharged"] = true
|
||||||
return defaults
|
return defaults
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -274,11 +304,16 @@ function ComboPoints.prototype:Enable(core)
|
|||||||
self:RegisterEvent("PLAYER_COMBO_POINTS", "UpdateComboPoints")
|
self:RegisterEvent("PLAYER_COMBO_POINTS", "UpdateComboPoints")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if IceHUD.WowVer >= 90000 then
|
||||||
|
self:RegisterEvent("UNIT_POWER_POINT_CHARGE", "UpdateChargedComboPoints")
|
||||||
|
end
|
||||||
|
|
||||||
if self.moduleSettings.comboMode == "Graphical" then
|
if self.moduleSettings.comboMode == "Graphical" then
|
||||||
self.moduleSettings.comboMode = "Graphical Bar"
|
self.moduleSettings.comboMode = "Graphical Bar"
|
||||||
end
|
end
|
||||||
|
|
||||||
self:CreateComboFrame(true)
|
self:CreateComboFrame(true)
|
||||||
|
self:UpdateChargedComboPoints()
|
||||||
end
|
end
|
||||||
|
|
||||||
function ComboPoints.prototype:UpdateMaxComboPoints(event, unit, powerType)
|
function ComboPoints.prototype:UpdateMaxComboPoints(event, unit, powerType)
|
||||||
@ -291,6 +326,13 @@ function ComboPoints.prototype:UpdateMaxComboPoints(event, unit, powerType)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function ComboPoints.prototype:UpdateChargedComboPoints()
|
||||||
|
local chargedPowerPoints = GetUnitChargedPowerPoints("player")
|
||||||
|
self.chargedPowerPointIndex = chargedPowerPoints and chargedPowerPoints[1]
|
||||||
|
self:CreateComboFrame()
|
||||||
|
self:UpdateComboPoints()
|
||||||
|
end
|
||||||
|
|
||||||
-- 'Protected' methods --------------------------------------------------------
|
-- 'Protected' methods --------------------------------------------------------
|
||||||
|
|
||||||
-- OVERRIDE
|
-- OVERRIDE
|
||||||
@ -399,7 +441,12 @@ function ComboPoints.prototype:CreateComboFrame(forceTextureUpdate)
|
|||||||
if (self.moduleSettings.gradient) then
|
if (self.moduleSettings.gradient) then
|
||||||
g = g - ((1 / maxComboPoints)*i)
|
g = g - ((1 / maxComboPoints)*i)
|
||||||
end
|
end
|
||||||
self.frame.graphical[i].texture:SetVertexColor(r, g, b)
|
|
||||||
|
if i == self.chargedPowerPointIndex and self.moduleSettings.bShowAnimaCharged then
|
||||||
|
self.frame.graphical[i].texture:SetVertexColor(self:GetColor("KyrianAnimaComboPoint"))
|
||||||
|
else
|
||||||
|
self.frame.graphical[i].texture:SetVertexColor(r, g, b)
|
||||||
|
end
|
||||||
|
|
||||||
self.frame.graphical[i]:Hide()
|
self.frame.graphical[i]:Hide()
|
||||||
end
|
end
|
||||||
|
@ -6,6 +6,13 @@ if IceHUD.WowVer >= 80000 or IceHUD.WowClassic then
|
|||||||
SPELL_POWER_COMBO_POINTS = Enum.PowerType.ComboPoints
|
SPELL_POWER_COMBO_POINTS = Enum.PowerType.ComboPoints
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local GetUnitChargedPowerPoints = GetUnitChargedPowerPoints
|
||||||
|
if not GetUnitChargedPowerPoints then
|
||||||
|
GetUnitChargedPowerPoints = function()
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function ComboPointsBar.prototype:init()
|
function ComboPointsBar.prototype:init()
|
||||||
ComboPointsBar.super.prototype.init(self, "ComboPointsBar")
|
ComboPointsBar.super.prototype.init(self, "ComboPointsBar")
|
||||||
|
|
||||||
@ -57,7 +64,6 @@ end
|
|||||||
|
|
||||||
function ComboPointsBar.prototype:GetDefaultSettings()
|
function ComboPointsBar.prototype:GetDefaultSettings()
|
||||||
local defaults = ComboPointsBar.super.prototype.GetDefaultSettings(self)
|
local defaults = ComboPointsBar.super.prototype.GetDefaultSettings(self)
|
||||||
defaults.textVisible['lower'] = false
|
|
||||||
defaults.offset = 8
|
defaults.offset = 8
|
||||||
defaults.enabled = false
|
defaults.enabled = false
|
||||||
defaults.alwaysDisplay = false
|
defaults.alwaysDisplay = false
|
||||||
@ -83,6 +89,18 @@ function ComboPointsBar.prototype:Enable(core)
|
|||||||
else
|
else
|
||||||
self:RegisterEvent("PLAYER_COMBO_POINTS", "UpdateComboPoints")
|
self:RegisterEvent("PLAYER_COMBO_POINTS", "UpdateComboPoints")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if IceHUD.WowVer >= 90000 then
|
||||||
|
self:RegisterEvent("UNIT_POWER_POINT_CHARGE", "UpdateChargedComboPoints")
|
||||||
|
end
|
||||||
|
|
||||||
|
self:UpdateChargedComboPoints()
|
||||||
|
end
|
||||||
|
|
||||||
|
function ComboPointsBar.prototype:UpdateChargedComboPoints()
|
||||||
|
local chargedPowerPoints = GetUnitChargedPowerPoints("player")
|
||||||
|
self.chargedPowerPointIndex = chargedPowerPoints and chargedPowerPoints[1]
|
||||||
|
self:UpdateComboPoints()
|
||||||
end
|
end
|
||||||
|
|
||||||
function ComboPointsBar.prototype:CreateFrame()
|
function ComboPointsBar.prototype:CreateFrame()
|
||||||
@ -129,6 +147,7 @@ function ComboPointsBar.prototype:UpdateComboPoints(...)
|
|||||||
end
|
end
|
||||||
|
|
||||||
self:SetBottomText1(points or "0")
|
self:SetBottomText1(points or "0")
|
||||||
|
self:SetBottomText2(self.chargedPowerPointIndex)
|
||||||
end
|
end
|
||||||
|
|
||||||
function ComboPointsBar.prototype:Update()
|
function ComboPointsBar.prototype:Update()
|
||||||
|
@ -387,7 +387,7 @@ function PlayerMana.prototype:Update(unit, powertype)
|
|||||||
if not IceHUD.IceCore:ShouldUseDogTags() then
|
if not IceHUD.IceCore:ShouldUseDogTags() then
|
||||||
-- extra hack for whiny rogues (are there other kind?)
|
-- extra hack for whiny rogues (are there other kind?)
|
||||||
local displayPercentage = self.manaPercentage
|
local displayPercentage = self.manaPercentage
|
||||||
if self.manaType == SPELL_POWER_ENERGY or self.manaType == SPELL_POWER_FOCUS then
|
if self.manaType == SPELL_POWER_ENERGY or self.manaType == SPELL_POWER_FOCUS or self.manaType == SPELL_POWER_FURY then
|
||||||
displayPercentage = self.mana
|
displayPercentage = self.mana
|
||||||
else
|
else
|
||||||
displayPercentage = math.floor(displayPercentage * 100)
|
displayPercentage = math.floor(displayPercentage * 100)
|
||||||
|
@ -245,7 +245,7 @@ function Totems.prototype:UpdateTotem(event, totem, ...)
|
|||||||
if not totem or tonumber(totem) ~= totem or totem < 1 or totem > self.numTotems or not GetTotemInfo then
|
if not totem or tonumber(totem) ~= totem or totem < 1 or totem > self.numTotems or not GetTotemInfo then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
local thisTotemName = self.totemNames[TOTEM_PRIORITIES[totem]]
|
|
||||||
local haveTotem, name, startTime, duration, icon = GetTotemInfo(totem);
|
local haveTotem, name, startTime, duration, icon = GetTotemInfo(totem);
|
||||||
if duration > 0 then
|
if duration > 0 then
|
||||||
self.frame.graphical[totem].totem:SetTexture(icon)
|
self.frame.graphical[totem].totem:SetTexture(icon)
|
||||||
@ -422,6 +422,6 @@ end
|
|||||||
|
|
||||||
-- Load us up
|
-- Load us up
|
||||||
local _, unitClass = UnitClass("player")
|
local _, unitClass = UnitClass("player")
|
||||||
if (unitClass == "SHAMAN") or (unitClass == "DRUID") then
|
if IceHUD.WowVer >= 90000 or (unitClass == "SHAMAN") or (unitClass == "DRUID") then
|
||||||
IceHUD.Totems = Totems:new()
|
IceHUD.Totems = Totems:new()
|
||||||
end
|
end
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
v1.13.0:
|
v1.13.4:
|
||||||
|
|
||||||
- Made compatible with 9.0
|
- Show Demon Hunter Fury top text as the raw Fury amount instead of a 0-100 scale with DogTags off. (ticket #301)
|
||||||
- Improved frame naming/debuggability
|
- Package newer LibDogTag to fix upgrade bug in that library.
|
||||||
- Updated TOC for 9.0
|
|
||||||
|
Reference in New Issue
Block a user