mirror of
https://github.com/parnic/ice-hud.git
synced 2025-06-16 14:50:13 -05:00
Compare commits
47 Commits
Author | SHA1 | Date | |
---|---|---|---|
2ae826654a | |||
acee3f4725
|
|||
2db6ddea57
|
|||
7e4a6ecab6
|
|||
af33ab9781
|
|||
c0262de622
|
|||
cfa86813a7
|
|||
c85c304eb6
|
|||
5321f7c64d
|
|||
6b2eb8d6e2
|
|||
c72b67235d
|
|||
140596b930
|
|||
6ddb056cdf
|
|||
8df330d3b4
|
|||
1f9a1a3100
|
|||
40a25a3315
|
|||
6cee8c738c
|
|||
40fc8187fd
|
|||
b32f090644 | |||
d9cfb3a09c
|
|||
8bc7b1ee90
|
|||
9cd800ee86
|
|||
ca6008780f
|
|||
9a727e4893
|
|||
4d71dcc660
|
|||
343ac7b70b
|
|||
573049f77e
|
|||
8dc173ae81
|
|||
5e04ace0f4
|
|||
37108d3487
|
|||
8cd7c4b044
|
|||
bfffdd82d7
|
|||
24c45f320f
|
|||
1db8545b63
|
|||
18fa31807c
|
|||
594ea0a3e3
|
|||
cb83a3f63f
|
|||
077286fd5f
|
|||
a50a313314
|
|||
271bb38a69
|
|||
0e11a40d3a
|
|||
5020279748
|
|||
cfaa09a541
|
|||
a0ed3ae6e6
|
|||
7709cb9130
|
|||
c1f631b732
|
|||
6c44ddc93a
|
8
.pkgmeta
8
.pkgmeta
@ -40,8 +40,8 @@ externals:
|
||||
libs/AceHook-3.0:
|
||||
url: svn://svn.wowace.com/wow/ace3/mainline/trunk/AceHook-3.0
|
||||
tag: latest
|
||||
libs/LibRangeCheck-2.0:
|
||||
url: https://github.com/WeakAuras/LibRangeCheck-2.0/
|
||||
libs/LibRangeCheck-3.0:
|
||||
url: https://github.com/WeakAuras/LibRangeCheck-3.0/
|
||||
libs/LibSharedMedia-3.0:
|
||||
url: svn://svn.wowace.com/wow/libsharedmedia-3-0/mainline/trunk
|
||||
tag: latest
|
||||
@ -57,11 +57,11 @@ externals:
|
||||
optional-dependencies:
|
||||
- libdogtag-3-0
|
||||
- libdogtag-unit-3-0
|
||||
- librangecheck-2-0
|
||||
- librangecheck-3-0
|
||||
|
||||
move-folders:
|
||||
IceHUD/IceHUD_Options: IceHUD_Options
|
||||
IceHUD/libs/LibRangeCheck-2.0/LibRangeCheck-2.0: IceHUD/libs/LibRangeCheck-2.0
|
||||
IceHUD/libs/LibRangeCheck-3.0/LibRangeCheck-3.0: IceHUD/libs/LibRangeCheck-3.0
|
||||
|
||||
tools-used:
|
||||
- libdatabroker-1-1
|
||||
|
@ -996,7 +996,7 @@ function IceBarElement.prototype:CreateBackground()
|
||||
self.frame = CreateFrame("Frame", "IceHUD_"..self.elementName, self.masterFrame)
|
||||
end
|
||||
|
||||
self.frame:SetFrameStrata("BACKGROUND")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame:SetWidth(self.settings.barWidth + (self.moduleSettings.widthModifier or 0))
|
||||
self.frame:SetHeight(self.settings.barHeight)
|
||||
|
||||
@ -1041,6 +1041,7 @@ end
|
||||
-- Creates the actual bar
|
||||
function IceBarElement.prototype:CreateBar()
|
||||
self.barFrame = self:BarFactory(self.barFrame, "LOW", "ARTWORK", "Bar")
|
||||
|
||||
self:SetBarCoord(self.barFrame)
|
||||
|
||||
self.barFrame.bar:SetBlendMode(self.settings.barBlendMode)
|
||||
@ -1055,7 +1056,7 @@ function IceBarElement.prototype:BarFactory(barFrame, frameStrata, textureLayer,
|
||||
barFrame = CreateFrame("Frame", "IceHUD_"..self.elementName.."_"..(nameSuffix or "Bar"), self.frame)
|
||||
end
|
||||
|
||||
barFrame:SetFrameStrata(frameStrata and frameStrata or "LOW")
|
||||
barFrame:SetFrameStrata(IceHUD.IceCore:DetermineStrata(frameStrata and frameStrata or "LOW"))
|
||||
barFrame:SetWidth(self.settings.barWidth + (self.moduleSettings.widthModifier or 0))
|
||||
barFrame:SetHeight(self.settings.barHeight)
|
||||
self:SetBarFramePoints(barFrame)
|
||||
|
@ -361,7 +361,7 @@ function IceCastBar.prototype:MyOnUpdate()
|
||||
|
||||
local timeString = self.moduleSettings.showCastTime and string.format("%.1fs ", remainingTime) or ""
|
||||
local empowerString = self.NumStages ~= nil and (L["Stage %d"]):format(self:GetCurrentStage()) or ""
|
||||
local line1 = timeString .. self.actionMessage
|
||||
local line1 = timeString .. (self.actionMessage or "")
|
||||
if self.moduleSettings.empowerStageTextDisplay == "TOPLINE" then
|
||||
line1 = line1 .. " " .. empowerString
|
||||
end
|
||||
@ -386,19 +386,24 @@ function IceCastBar.prototype:MyOnUpdate()
|
||||
self.action == IceCastBar.Actions.Success or
|
||||
self.action == IceCastBar.Actions.Failure)
|
||||
then
|
||||
local scale = GetTime() - self.actionStartTime
|
||||
local scale
|
||||
if self.actionStartTime then
|
||||
scale = GetTime() - self.actionStartTime
|
||||
end
|
||||
|
||||
if (scale > 1) then
|
||||
if scale and (scale > 1) then
|
||||
self:StopBar()
|
||||
return
|
||||
end
|
||||
|
||||
self:UpdateBar(1, self:GetCurrentCastingColor())
|
||||
|
||||
if (self.action == IceCastBar.Actions.Failure) then
|
||||
self:FlashBar("CastFail", 1-scale, self.actionMessage, "CastFail")
|
||||
else
|
||||
self:FlashBar("CastSuccess", 1-scale, self.actionMessage)
|
||||
if scale then
|
||||
if (self.action == IceCastBar.Actions.Failure) then
|
||||
self:FlashBar("CastFail", 1-scale, self.actionMessage, "CastFail")
|
||||
else
|
||||
self:FlashBar("CastSuccess", 1-scale, self.actionMessage)
|
||||
end
|
||||
end
|
||||
return
|
||||
end
|
||||
@ -465,7 +470,9 @@ function IceCastBar.prototype:GetCurrentCastingColor()
|
||||
end
|
||||
|
||||
function IceCastBar.prototype:FlashBar(color, alpha, text, textColor)
|
||||
self.frame:SetAlpha(alpha)
|
||||
if alpha then
|
||||
self.frame:SetAlpha(alpha)
|
||||
end
|
||||
|
||||
local r, g, b = self.settings.backgroundColor.r, self.settings.backgroundColor.g, self.settings.backgroundColor.b
|
||||
if (self.settings.backgroundToggle) then
|
||||
|
56
IceCore.lua
56
IceCore.lua
@ -115,6 +115,9 @@ function IceCore.prototype:SetupDefaults()
|
||||
bHideDuringPetBattles = true,
|
||||
bHideInBarberShop = true,
|
||||
bHideDuringShellGame = true,
|
||||
bHideDuringCataloging = true,
|
||||
|
||||
addedStrata = 0,
|
||||
},
|
||||
global = {
|
||||
lastRunVersion = 0,
|
||||
@ -284,6 +287,7 @@ function IceCore.prototype:Enable(userToggle)
|
||||
self.IceHUDFrame:RegisterEvent("ZONE_CHANGED")
|
||||
end
|
||||
self.IceHUDFrame:RegisterEvent("UNIT_AURA")
|
||||
self.IceHUDFrame:RegisterEvent("UNIT_ENTERED_VEHICLE")
|
||||
self.IceHUDFrame:RegisterEvent("PLAYER_REGEN_ENABLED", IceHUD.PLAYER_REGEN_ENABLED)
|
||||
self.IceHUDFrame:RegisterEvent("PLAYER_REGEN_DISABLED", IceHUD.PLAYER_REGEN_DISABLED)
|
||||
self.IceHUDFrame:SetScript("OnEvent", function(self, event, ...)
|
||||
@ -303,6 +307,11 @@ function IceCore.prototype:Enable(userToggle)
|
||||
if IceHUD.IceCore.settings.bHideInBarberShop then
|
||||
self:Show()
|
||||
end
|
||||
elseif event == "UNIT_ENTERED_VEHICLE" then
|
||||
if IceHUD.IceCore.settings.bHideDuringCataloging and IceHUD:HasAnyBuff("player", IceHUD.CatalogingSpellIDs) then
|
||||
self:RegisterEvent("UNIT_EXITED_VEHICLE")
|
||||
self:Hide()
|
||||
end
|
||||
elseif (event == "UNIT_AURA") then
|
||||
local unit = ...
|
||||
if unit ~= "player" then
|
||||
@ -312,6 +321,9 @@ function IceCore.prototype:Enable(userToggle)
|
||||
if IceHUD.IceCore.settings.bHideDuringShellGame and IceHUD:HasAnyDebuff("player", {IceHUD.ShellGameSpellID}) and UnitInVehicle("player") then
|
||||
self:RegisterEvent("UNIT_EXITED_VEHICLE")
|
||||
self:Hide()
|
||||
elseif IceHUD.IceCore.settings.bHideDuringCataloging and IceHUD:HasAnyBuff("player", IceHUD.CatalogingSpellIDs) and UnitInVehicle("player") then
|
||||
self:RegisterEvent("UNIT_EXITED_VEHICLE")
|
||||
self:Hide()
|
||||
elseif C_Map then
|
||||
local bestMapID = C_Map.GetBestMapForUnit("player")
|
||||
if bestMapID ~= ZM_MAP_ID then
|
||||
@ -600,7 +612,7 @@ function IceCore.prototype:IsEnabled()
|
||||
end
|
||||
|
||||
function IceCore.prototype:DrawFrame()
|
||||
self.IceHUDFrame:SetFrameStrata("BACKGROUND")
|
||||
self.IceHUDFrame:SetFrameStrata(self:DetermineStrata("BACKGROUND"))
|
||||
self.IceHUDFrame:SetWidth(self.settings.gap)
|
||||
self.IceHUDFrame:SetHeight(20)
|
||||
|
||||
@ -921,6 +933,48 @@ function IceCore.prototype:SetColor(color, r, g, b)
|
||||
self:Redraw()
|
||||
end
|
||||
|
||||
function IceCore.prototype:GetAddedStrata()
|
||||
return self.settings.addedStrata
|
||||
end
|
||||
|
||||
function IceCore.prototype:SetAddedStrata(value)
|
||||
self.settings.addedStrata = value
|
||||
end
|
||||
|
||||
-- Preventing ugly if-else blocks in module creations
|
||||
-- (but could probably itself be smarter/prettier)
|
||||
-- Frisbees/AddonWhiner
|
||||
function IceCore.prototype:DetermineStrata(baseStrata)
|
||||
if self.settings.addedStrata == 0 then
|
||||
return baseStrata
|
||||
end
|
||||
|
||||
if self.settings.addedStrata == 1 then
|
||||
if baseStrata == "BACKGROUND" then
|
||||
return "LOW"
|
||||
elseif baseStrata == "LOW" then
|
||||
return "MEDIUM"
|
||||
elseif baseStrata == "MEDIUM" then
|
||||
return "HIGH"
|
||||
elseif baseStrata == "HIGH" then
|
||||
return "DIALOG"
|
||||
end
|
||||
end
|
||||
|
||||
if self.settings.addedStrata == 2 then
|
||||
if baseStrata == "BACKGROUND" then
|
||||
return "MEDIUM"
|
||||
elseif baseStrata == "LOW" then
|
||||
return "HIGH"
|
||||
elseif baseStrata == "MEDIUM" then
|
||||
return "DIALOG"
|
||||
elseif baseStrata == "HIGH" then
|
||||
return "FULLSCREEN"
|
||||
end
|
||||
end
|
||||
|
||||
return baseStrata -- failsafe
|
||||
end
|
||||
|
||||
function IceCore.prototype:IsInConfigMode()
|
||||
return self.bConfigMode
|
||||
|
@ -74,7 +74,7 @@ function IceElement.prototype:Create(parent)
|
||||
self.parent = parent
|
||||
if not self.masterFrame then
|
||||
self.masterFrame = CreateFrame("Frame", "IceHUD_Element_"..self.elementName, self.parent)
|
||||
self.masterFrame:SetFrameStrata("MEDIUM")
|
||||
self.masterFrame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("MEDIUM"))
|
||||
end
|
||||
self:CreateFrame()
|
||||
self:Show(false)
|
||||
|
19
IceHUD.lua
19
IceHUD.lua
@ -36,6 +36,7 @@ else
|
||||
end
|
||||
|
||||
-- compatibility/feature flags
|
||||
IceHUD.CanShowTargetCasting = not IceHUD.WowClassic or LibClassicCasterino or (IceHUD.WowClassic and IceHUD.WowVer >= 11500)
|
||||
IceHUD.GetPlayerAuraBySpellID = _G["C_UnitAuras"] and C_UnitAuras.GetPlayerAuraBySpellID
|
||||
IceHUD.SpellFunctionsReturnRank = IceHUD.WowMain and IceHUD.WowVer < 80000
|
||||
IceHUD.EventExistsPlayerPetChanged = IceHUD.WowMain and IceHUD.WowVer < 80000
|
||||
@ -48,8 +49,8 @@ IceHUD.EventExistsUnitDynamicFlags = IceHUD.WowMain and IceHUD.WowVer < 80000
|
||||
IceHUD.EventExistsUnitHealthFrequent = not IceHUD.WowMain or (IceHUD.WowVer >= 40000 and IceHUD.WowVer < 90000)
|
||||
IceHUD.PerPowerEventsExist = IceHUD.WowMain and IceHUD.WowVer < 40000
|
||||
IceHUD.PerTargetComboPoints = IceHUD.WowVer < 60000
|
||||
IceHUD.CanTrackOtherUnitBuffs = not IceHUD.WowClassic
|
||||
IceHUD.CanTrackGCD = not IceHUD.WowClassic
|
||||
IceHUD.CanTrackOtherUnitBuffs = not IceHUD.WowClassic or IceHUD.WowVer >= 11500
|
||||
IceHUD.CanTrackGCD = not IceHUD.WowClassic or IceHUD.WowVer >= 11500
|
||||
IceHUD.GetSpellInfoReturnsFunnel = IceHUD.WowMain and IceHUD.WowVer < 60000
|
||||
IceHUD.CanHookDestroyTotem = IceHUD.WowClassic or IceHUD.WowClassicBC or IceHUD.WowClassicWrath
|
||||
IceHUD.ShouldUpdateTargetHealthEveryTick = (IceHUD.WowClassic or IceHUD.WowClassicBC) and GetCVarBool("predictedHealth")
|
||||
@ -60,6 +61,8 @@ IceHUD.SupportsHealPrediction = IceHUD.WowVer >= 40000 or IceHUD.WowClassicWrath
|
||||
IceHUD.UnitGroupRolesReturnsRoleString = IceHUD.WowVer >= 40000 or IceHUD.WowClassicWrath
|
||||
IceHUD.ShellGameSpellID = 271571
|
||||
IceHUD.HasShellGame = GetSpellInfo(IceHUD.ShellGameSpellID)
|
||||
IceHUD.CatalogingSpellIDs = {366290, 372817, 385025, 385635, 386070, 386504, 400043, 403115}
|
||||
IceHUD.HasCataloging = GetSpellInfo(366290)
|
||||
|
||||
IceHUD.UnitPowerEvent = "UNIT_POWER_UPDATE"
|
||||
|
||||
@ -884,11 +887,13 @@ local function munge_unit_menu(menu)
|
||||
if btns[i].IsMenu() then
|
||||
local subbtns = btns[i].GetMenuButtons()
|
||||
for j=1, #subbtns do
|
||||
local blacklisted = BLACKLISTED_UNIT_MENU_OPTIONS[subbtns[j]:GetText()]
|
||||
if not blacklisted then
|
||||
new_buttons_list[#new_buttons_list+1] = subbtns[j]
|
||||
elseif blacklisted ~= true then
|
||||
new_buttons_list[#new_buttons_list+1] = blacklisted
|
||||
if subbtns[j] then
|
||||
local blacklisted = BLACKLISTED_UNIT_MENU_OPTIONS[subbtns[j]:GetText()]
|
||||
if not blacklisted then
|
||||
new_buttons_list[#new_buttons_list+1] = subbtns[j]
|
||||
elseif blacklisted ~= true then
|
||||
new_buttons_list[#new_buttons_list+1] = blacklisted
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
|
11
IceHUD.toc
11
IceHUD.toc
@ -1,8 +1,8 @@
|
||||
## Interface: 100002
|
||||
## Interface-Retail: 100002
|
||||
## Interface-Classic: 11403
|
||||
## Interface: 100205
|
||||
## Interface-Retail: 100205
|
||||
## Interface-Classic: 11500
|
||||
## Interface-BCC: 20504
|
||||
## Interface-Wrath: 30400
|
||||
## Interface-Wrath: 30403
|
||||
## Author: Parnic, originally created by Iceroth
|
||||
## Name: IceHUD
|
||||
## Title: IceHUD |cff7fff7f-Ace3-|r
|
||||
@ -14,7 +14,8 @@
|
||||
# ## Version: @project-version@
|
||||
#@end-non-debug@
|
||||
## SavedVariables: IceCoreDB
|
||||
## OptionalDeps: Ace3, LibSharedMedia-3.0, LibDogTag-3.0, LibDogTag-Unit-3.0, LibRangeCheck-2.0, LibDualSpec-1.0, LibDBIcon-1.0, AceGUI-3.0-SharedMediaWidgets
|
||||
## IconTexture: Interface\Icons\Spell_Frost_Frost
|
||||
## OptionalDeps: Ace3, LibSharedMedia-3.0, LibDogTag-3.0, LibDogTag-Unit-3.0, LibRangeCheck-3.0, LibDualSpec-1.0, LibDBIcon-1.0, AceGUI-3.0-SharedMediaWidgets
|
||||
## X-Category: HUDs
|
||||
## X-Website: https://www.wowace.com/projects/ice-hud
|
||||
## X-Curse-Project-ID: 5394
|
||||
|
@ -1,8 +1,8 @@
|
||||
## Interface: 100002
|
||||
## Interface-Retail: 100002
|
||||
## Interface-Classic: 11403
|
||||
## Interface: 100205
|
||||
## Interface-Retail: 100205
|
||||
## Interface-Classic: 11500
|
||||
## Interface-BCC: 20504
|
||||
## Interface-Wrath: 30400
|
||||
## Interface-Wrath: 30403
|
||||
## Title: IceHUD |cff7fff7f-Options-|r
|
||||
## Author: Parnic
|
||||
## Version: @project-version@
|
||||
@ -10,6 +10,7 @@
|
||||
## OptionalDeps: AceGUI-3.0-SharedMediaWidgets
|
||||
## Dependencies: IceHUD
|
||||
## LoadOnDemand: 1
|
||||
## IconTexture: Interface\Icons\Spell_Frost_Frost
|
||||
|
||||
Json.lua
|
||||
JsonDecode.lua
|
||||
|
@ -161,7 +161,7 @@ The Classic game client doesn't provide this information to addons because it wa
|
||||
IceHUD.IceCore:SetScale(v)
|
||||
end,
|
||||
min = 0.2,
|
||||
max = 2.0,
|
||||
max = 4.0,
|
||||
step = 0.05,
|
||||
isPercent = true,
|
||||
order = 14,
|
||||
@ -426,6 +426,40 @@ The Classic game client doesn't provide this information to addons because it wa
|
||||
hidden = not IceHUD.HasShellGame,
|
||||
order = 36,
|
||||
},
|
||||
|
||||
bHideDuringCataloging = {
|
||||
type = 'toggle',
|
||||
name = L["Hide during cataloging"],
|
||||
desc = L["This will hide the entire mod when using the Dragonflight Cataloging camera."],
|
||||
width = 'double',
|
||||
get = function()
|
||||
return IceHUD.IceCore.settings.bHideDuringCataloging
|
||||
end,
|
||||
set = function(info, value)
|
||||
IceHUD.IceCore.settings.bHideDuringCataloging = value
|
||||
if not value then
|
||||
IceHUD.IceCore.IceHUDFrame:Show()
|
||||
end
|
||||
end,
|
||||
hidden = not IceHUD.HasCataloging,
|
||||
order = 36,
|
||||
},
|
||||
|
||||
bIncreaseStrata = {
|
||||
type = 'range',
|
||||
name = L["Added strata"],
|
||||
desc = L["Push IceHUD modules to the foreground. Increase if other addons are covering IceHUD. Requires reload."],
|
||||
get = function()
|
||||
return IceHUD.IceCore:GetAddedStrata()
|
||||
end,
|
||||
set = function(info, v)
|
||||
IceHUD.IceCore:SetAddedStrata(v)
|
||||
end,
|
||||
min = 0,
|
||||
max = 2,
|
||||
step = 1,
|
||||
order = 37,
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -19,10 +19,11 @@ IceUnitBar.prototype.hasPet = nil
|
||||
|
||||
IceUnitBar.prototype.noFlash = nil
|
||||
|
||||
local SPELL_POWER_INSANITY, SPELL_POWER_RAGE = SPELL_POWER_INSANITY, SPELL_POWER_RAGE
|
||||
local SPELL_POWER_INSANITY, SPELL_POWER_RAGE, SPELL_POWER_RUNIC_POWER = SPELL_POWER_INSANITY, SPELL_POWER_RAGE, SPELL_POWER_RUNIC_POWER
|
||||
if Enum and Enum.PowerType then
|
||||
SPELL_POWER_INSANITY = Enum.PowerType.Insanity
|
||||
SPELL_POWER_RAGE = Enum.PowerType.Rage
|
||||
SPELL_POWER_RUNIC_POWER = Enum.PowerType.RunicPower
|
||||
end
|
||||
|
||||
-- Constructor --
|
||||
@ -178,7 +179,7 @@ function IceUnitBar.prototype:CreateFlashFrame()
|
||||
self.flashFrame = CreateFrame("Frame", "IceHUD_"..self.elementName.."_Flash", self.frame)
|
||||
end
|
||||
|
||||
self.flashFrame:SetFrameStrata("BACKGROUND")
|
||||
self.flashFrame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.flashFrame:SetWidth(self.settings.barWidth + (self.moduleSettings.widthModifier or 0))
|
||||
self.flashFrame:SetHeight(self.settings.barHeight)
|
||||
|
||||
@ -239,7 +240,9 @@ function IceUnitBar.prototype:Update()
|
||||
-- so this technically doesn't get us the answer we want most of the time. too risky to change at this point, though.
|
||||
self.mana = UnitPower(self.unit, UnitPowerType(self.unit))
|
||||
self.maxMana = UnitPowerMax(self.unit, UnitPowerType(self.unit))
|
||||
if UnitPowerType(self.unit) == SPELL_POWER_RAGE and self.maxMana == 1000 then
|
||||
local powerType = UnitPowerType(self.unit)
|
||||
if (powerType == SPELL_POWER_RAGE and self.maxMana == 1000)
|
||||
or (powerType == SPELL_POWER_RUNIC_POWER and self.maxMana >= 1000) then
|
||||
self.mana = IceHUD:MathRound(self.mana / 10)
|
||||
self.maxMana = IceHUD:MathRound(self.maxMana / 10)
|
||||
end
|
||||
|
117
changelog.md
117
changelog.md
@ -1,5 +1,122 @@
|
||||
# Changelog
|
||||
|
||||
v1.14.37:
|
||||
|
||||
- Update LibRangeCheck version to address taint issues (wowace ticket #353)
|
||||
|
||||
v1.14.36:
|
||||
|
||||
- Really fix IceHUD stomping on other uses of the PowerBarContainer such as the Digging bar for the Archive event.
|
||||
|
||||
v1.14.35:
|
||||
|
||||
- Fix IceHUD stomping on other uses of the PowerBarContainer such as the Digging bar for the Archive event.
|
||||
|
||||
v1.14.34:
|
||||
|
||||
- Fix Vigor showing up sometimes when it shouldn't.
|
||||
|
||||
v1.14.33:
|
||||
|
||||
- Update TOC for Dragonflight to 10.2.5
|
||||
|
||||
v1.14.32:
|
||||
|
||||
- Enable GlobalCoolDown module in Classic Era 1.15.0+
|
||||
- Enable tracking target buffs/debuffs in Classic Era 1.15.0+
|
||||
|
||||
v1.14.31:
|
||||
|
||||
- Fix nil concatenation error (wowace ticket #351)
|
||||
|
||||
v1.14.30:
|
||||
|
||||
- Update Classic-era TOC for 1.15.0
|
||||
- Enable TargetCastBar module on Classic-era 1.15+
|
||||
|
||||
v1.14.29:
|
||||
|
||||
- Fix Stagger bar error for 10.2.0 (wowace ticket #348)
|
||||
|
||||
v1.14.28:
|
||||
|
||||
- Update TOC for Dragonflight to 10.2.0
|
||||
|
||||
v1.14.27:
|
||||
|
||||
- Update TOC for Dragonflight to 10.1.7
|
||||
|
||||
v1.14.26:
|
||||
|
||||
- Update TOC for classic-era to 1.14.4
|
||||
|
||||
v1.14.25:
|
||||
|
||||
- Fixed lua error that would appear when targetting webwrapped players in heroic alpha/beta titan rune dungeons.
|
||||
- Added ability to adjust strata globally.
|
||||
|
||||
v1.14.24:
|
||||
|
||||
- Fixed an error when targeting a player and right-clicking a module that should show a menu in 10.1.5.
|
||||
|
||||
v1.14.23:
|
||||
|
||||
- Update Dragonflight TOC for 10.1.5
|
||||
|
||||
v1.14.22:
|
||||
|
||||
- Fixed reported issue with a Lua error on Wrath Classic clients. https://www.wowace.com/projects/ice-hud/issues/344
|
||||
- Fixed Vigor module not working when riding Grotto Netherwing Drake (and theoretically all future Dragonriding mount types).
|
||||
- Updated TOC for Wrath-Classic.
|
||||
|
||||
v1.14.21:
|
||||
|
||||
- Increased maximum scale/zoom to 400%, by request.
|
||||
- Fixed TargetCC/FocusCC modules on Wrath Classic.
|
||||
- Fixed disabled Buff/Debuff Watchers showing a static gray bar when set to When Missing or Always display modes.
|
||||
- Fixed Buff/Debuff Watchers showing an empty bar when set to Missing mode. If the background was disabled, this looked like just a floating spell icon.
|
||||
- Fixed spell icons sometimes not showing up for custom bars until the tracked spell had been cast once.
|
||||
|
||||
v1.14.20:
|
||||
|
||||
- Added Winding Slitherdrake as recognized for the Dragonriding Vigor module
|
||||
|
||||
v1.14.19:
|
||||
|
||||
- Updated TOCs for 10.1.0
|
||||
- Added addon icon for 10.1.0 clients
|
||||
- Fixed Dragonriding Vigor charges not showing up in 10.1.0
|
||||
- Fixed Vigor not always updating correctly when loading into the game or a new zone
|
||||
|
||||
v1.14.18:
|
||||
|
||||
- Fixed Runic Power showing on a scale of 0-1000+ instead of 0-100+ with DogTags off
|
||||
- Added option (enabled by default) to hide mod during cataloging.
|
||||
- Fixed "Hide Blizzard Buffs" option on PlayerInfo causing errors and "?" icons when toggling off.
|
||||
- Also hide Debuff frame if it exists (Dragonflight+) when enabling "Hide Blizzard Buffs" in the PlayerInfo module.
|
||||
|
||||
v1.14.17:
|
||||
|
||||
- Updated TOCs for 10.0.7
|
||||
|
||||
v1.14.16:
|
||||
|
||||
- Exposed the option in the Totems module to hide the Blizzard Totems frame or not, and changed the default value to not hide when on a version of the game that doesn't support right-clicking to destroy totems (any version after Wrath). This enables using the default Totems frame to cancel totems early.
|
||||
- Fixed a reported error when playing Darkmoon Faire games.
|
||||
- Added a few more Polymorph ranks to TargetCC for Classic. I'm sure there are more missing.
|
||||
|
||||
v1.14.15:
|
||||
|
||||
- Updated TOCs for 10.0.5
|
||||
|
||||
v1.14.14:
|
||||
|
||||
- Fixed PlayerAlternatePower bar showing up when it shouldn't have, such as when casting Power Word: Shield before ever having done anything to trigger a game-level "alternate power" event, such as mounting a Dragonriding mount.
|
||||
|
||||
v1.14.13:
|
||||
|
||||
- Fixed Vigor module hiding default Climbing, Film, etc. UIs. (wowace ticket #336)
|
||||
|
||||
v1.14.12:
|
||||
|
||||
- Added a module for showing Dragonriding Vigor points.
|
||||
|
@ -14,7 +14,7 @@
|
||||
<Include file="libs\AceHook-3.0\AceHook-3.0.xml"/>
|
||||
<Include file="libs\LibDogTag-3.0\lib.xml"/>
|
||||
<Include file="libs\LibDogTag-Unit-3.0\lib.xml"/>
|
||||
<Script file="libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua"/>
|
||||
<Script file="libs\LibRangeCheck-3.0\LibRangeCheck-3.0.lua"/>
|
||||
<Include file="libs\LibSharedMedia-3.0\lib.xml"/>
|
||||
<Include file="libs\AceGUI-3.0-SharedMediaWidgets\widget.xml"/>
|
||||
<Script file="LibDataBroker-1.1.lua"/>
|
||||
|
@ -616,7 +616,10 @@ function IceClassPowerCounter.prototype:SetRuneCoords(rune, percent)
|
||||
|
||||
local left, right, top, bottom = 0, 1, 0, 1
|
||||
if self:GetRuneMode() == "Graphical" then
|
||||
left, right, top, bottom = unpack(self.runeCoords[rune])
|
||||
local coords = self.runeCoords[rune]
|
||||
if coords then
|
||||
left, right, top, bottom = unpack(coords)
|
||||
end
|
||||
end
|
||||
|
||||
if self.currentGrowMode == self.growModes["height"] then
|
||||
@ -728,7 +731,7 @@ end
|
||||
function IceClassPowerCounter.prototype:CreateFrame()
|
||||
IceClassPowerCounter.super.prototype.CreateFrame(self)
|
||||
|
||||
self.frame:SetFrameStrata("LOW")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("LOW"))
|
||||
self.frame:SetHeight(self.runeHeight)
|
||||
self.frame:ClearAllPoints()
|
||||
self.frame:SetPoint("TOP", self.parent, "BOTTOM", self.moduleSettings.hpos, self.moduleSettings.vpos)
|
||||
@ -804,7 +807,7 @@ function IceClassPowerCounter.prototype:CreateRune(i)
|
||||
-- create runes
|
||||
if (not self.frame.graphical[i]) then
|
||||
self.frame.graphical[i] = CreateFrame("Frame", nil, self.frame)
|
||||
self.frame.graphical[i]:SetFrameStrata("BACKGROUND")
|
||||
self.frame.graphical[i]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
|
||||
self.frame.graphical[i].rune = self.frame.graphical[i]:CreateTexture(nil, "BORDER")
|
||||
self.frame.graphical[i].rune:SetVertexColor(0, 0, 0)
|
||||
@ -874,7 +877,10 @@ function IceClassPowerCounter.prototype:SetupRuneTexture(rune)
|
||||
local a,b,c,d = 0, 1, 0, 1
|
||||
if self:GetRuneMode() == "Graphical" then
|
||||
width = self.runeWidth
|
||||
a,b,c,d = unpack(self.runeCoords[rune])
|
||||
local coords = self.runeCoords[rune]
|
||||
if coords then
|
||||
a,b,c,d = unpack(coords)
|
||||
end
|
||||
end
|
||||
|
||||
-- make sure any texture aside from the special one is square and has the proper coordinates
|
||||
|
@ -337,7 +337,7 @@ end
|
||||
function ComboPoints.prototype:CreateFrame()
|
||||
ComboPoints.super.prototype.CreateFrame(self)
|
||||
|
||||
self.frame:SetFrameStrata("BACKGROUND")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
if self.moduleSettings.graphicalLayout == "Horizontal" then
|
||||
self.frame:SetWidth((self.comboSize - 5)*self:GetMaxComboPoints())
|
||||
self.frame:SetHeight(1)
|
||||
@ -396,7 +396,7 @@ function ComboPoints.prototype:CreateComboFrame(forceTextureUpdate)
|
||||
end
|
||||
end
|
||||
|
||||
self.frame.graphicalBG[i]:SetFrameStrata("BACKGROUND")
|
||||
self.frame.graphicalBG[i]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame.graphicalBG[i]:SetWidth(self.comboSize)
|
||||
self.frame.graphicalBG[i]:SetHeight(self.comboSize)
|
||||
if self.moduleSettings.graphicalLayout == "Horizontal" then
|
||||
@ -432,7 +432,7 @@ function ComboPoints.prototype:CreateComboFrame(forceTextureUpdate)
|
||||
end
|
||||
end
|
||||
|
||||
self.frame.graphical[i]:SetFrameStrata("LOW")
|
||||
self.frame.graphical[i]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("LOW"))
|
||||
self.frame.graphical[i]:SetAllPoints(self.frame.graphicalBG[i])
|
||||
|
||||
local r, g, b = self:GetColor("ComboPoints")
|
||||
@ -471,7 +471,7 @@ function ComboPoints.prototype:CreateComboFrame(forceTextureUpdate)
|
||||
end
|
||||
end
|
||||
|
||||
self.frame.graphicalAnt[i]:SetFrameStrata("LOW")
|
||||
self.frame.graphicalAnt[i]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("LOW"))
|
||||
self.frame.graphicalAnt[i]:SetFrameLevel(self.frame.graphical[i]:GetFrameLevel() + 1)
|
||||
self.frame.graphicalAnt[i]:SetWidth(math.floor(self.comboSize / 2))
|
||||
self.frame.graphicalAnt[i]:SetHeight(math.floor(self.comboSize / 2))
|
||||
|
@ -83,6 +83,7 @@ function IceCustomBar.prototype:Enable(core)
|
||||
self:FixupTextColors()
|
||||
self:SetCustomTextColor(self.frame.bottomUpperText, self.moduleSettings.upperTextColor)
|
||||
self:SetCustomTextColor(self.frame.bottomLowerText, self.moduleSettings.lowerTextColor)
|
||||
self:UpdateAuraIcon()
|
||||
end
|
||||
|
||||
function IceCustomBar.prototype:Disable(core)
|
||||
@ -204,6 +205,7 @@ end
|
||||
function IceCustomBar.prototype:Redraw()
|
||||
IceCustomBar.super.prototype.Redraw(self)
|
||||
|
||||
self:UpdateAuraIcon()
|
||||
self:UpdateCustomBar(self.unit)
|
||||
end
|
||||
|
||||
@ -822,7 +824,11 @@ function IceCustomBar.prototype:UpdateCustomBar(unit, fromUpdate)
|
||||
|
||||
self:UpdateBar(self.auraDuration ~= 0 and remaining / self.auraDuration or 0, "undef")
|
||||
else
|
||||
self:UpdateBar(0, "undef")
|
||||
local updateVal = 0
|
||||
if self.moduleSettings.displayMode == displayModes.MISSING then
|
||||
updateVal = 1
|
||||
end
|
||||
self:UpdateBar(updateVal, "undef")
|
||||
self:Show(false)
|
||||
if not self:ShouldAlwaysSubscribe() then
|
||||
self.handlesOwnUpdates = false
|
||||
@ -883,9 +889,14 @@ function IceCustomBar.prototype:Show(bShouldShow, bForceHide)
|
||||
end
|
||||
|
||||
if self.moduleSettings.displayMode == displayModes.MISSING then
|
||||
IceCustomBar.super.prototype.Show(self, not bShouldShow)
|
||||
local show = not bShouldShow
|
||||
if show and not self:IsEnabled() then
|
||||
show = false
|
||||
end
|
||||
|
||||
IceCustomBar.super.prototype.Show(self, show)
|
||||
elseif self.moduleSettings.displayMode == displayModes.WHEN_TARGETING and self.target then
|
||||
IceCustomBar.super.prototype.Show(self, true)
|
||||
IceCustomBar.super.prototype.Show(self, self:IsEnabled())
|
||||
elseif self.moduleSettings.displayMode == displayModes.ALWAYS then
|
||||
if not self.bIsVisible then
|
||||
IceCustomBar.super.prototype.Show(self, true)
|
||||
@ -894,3 +905,13 @@ function IceCustomBar.prototype:Show(bShouldShow, bForceHide)
|
||||
IceCustomBar.super.prototype.Show(self, bShouldShow)
|
||||
end
|
||||
end
|
||||
|
||||
function IceCustomBar.prototype:UpdateAuraIcon()
|
||||
if not self.barFrame or not self.barFrame.icon then
|
||||
return
|
||||
end
|
||||
|
||||
local _, _, auraIcon = GetSpellInfo(self.moduleSettings.buffToTrack)
|
||||
|
||||
self.barFrame.icon:SetTexture(auraIcon)
|
||||
end
|
||||
|
@ -326,7 +326,7 @@ end
|
||||
function IceCustomCount.prototype:CreateFrame()
|
||||
IceCustomCount.super.prototype.CreateFrame(self)
|
||||
|
||||
self.frame:SetFrameStrata("BACKGROUND")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
if self.moduleSettings.graphicalLayout == "Horizontal" then
|
||||
self.frame:SetWidth((self.countSize + self.moduleSettings.countGap)*IceStackCounter_GetMaxCount(self))
|
||||
self.frame:SetHeight(1)
|
||||
@ -382,7 +382,7 @@ function IceCustomCount.prototype:CreateCustomFrame(doTextureUpdate)
|
||||
end
|
||||
end
|
||||
|
||||
self.frame.graphicalBG[i]:SetFrameStrata("BACKGROUND")
|
||||
self.frame.graphicalBG[i]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame.graphicalBG[i]:SetWidth(self.countSize)
|
||||
self.frame.graphicalBG[i]:SetHeight(self.countSize)
|
||||
if self.moduleSettings.graphicalLayout == "Horizontal" then
|
||||
@ -416,7 +416,7 @@ function IceCustomCount.prototype:CreateCustomFrame(doTextureUpdate)
|
||||
end
|
||||
end
|
||||
|
||||
self.frame.graphical[i]:SetFrameStrata("BACKGROUND")
|
||||
self.frame.graphical[i]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame.graphical[i]:SetAllPoints(self.frame.graphicalBG[i])
|
||||
|
||||
self.frame.graphical[i]:Hide()
|
||||
|
@ -6,10 +6,15 @@ local DragonridingBuffs = {
|
||||
368896, -- Renewed Proto-Drake
|
||||
368899, -- Windborn Velocidrake
|
||||
368901, -- Cliffside Wylderdrake
|
||||
368893, -- Winding Slitherdrake
|
||||
412088, -- Grotto Netherwing Drake
|
||||
}
|
||||
|
||||
local vigorWidgetSetID = 283
|
||||
local vigorWidgetID = 4460
|
||||
local knowsAlternateMountEnum = Enum and Enum.PowerType and Enum.PowerType.AlternateMount
|
||||
local unitPowerType = Enum and Enum.PowerType and Enum.PowerType.AlternateMount
|
||||
unitPowerType = unitPowerType or ALTERNATE_POWER_INDEX
|
||||
|
||||
function DragonridingVigor.prototype:init()
|
||||
DragonridingVigor.super.prototype.init(self, "Vigor")
|
||||
@ -18,7 +23,7 @@ function DragonridingVigor.prototype:init()
|
||||
|
||||
self.unit = "player"
|
||||
self.numericColor = "VigorNumeric"
|
||||
self.unitPower = ALTERNATE_POWER_INDEX
|
||||
self.unitPower = unitPowerType
|
||||
self.minLevel = 0
|
||||
self.bTreatEmptyAsFull = false
|
||||
self.runeWidth = self.runeHeight
|
||||
@ -26,13 +31,14 @@ function DragonridingVigor.prototype:init()
|
||||
end
|
||||
|
||||
function DragonridingVigor.prototype:Enable(core)
|
||||
self.numRunes = UnitPowerMax(self.unit, ALTERNATE_POWER_INDEX)
|
||||
self.numRunes = UnitPowerMax(self.unit, unitPowerType)
|
||||
self.runeCoords = { }
|
||||
for i = 1, self.numRunes do
|
||||
self:SetupNewRune(i)
|
||||
end
|
||||
|
||||
DragonridingVigor.super.prototype.Enable(self, core)
|
||||
self:Show(false)
|
||||
|
||||
self:RegisterEvent("UNIT_AURA", "CheckShouldShow")
|
||||
self:RegisterEvent("UPDATE_UI_WIDGET", "UpdateVigorRecharge")
|
||||
@ -41,7 +47,7 @@ end
|
||||
function DragonridingVigor.prototype:EnteringWorld()
|
||||
DragonridingVigor.super.prototype.EnteringWorld(self)
|
||||
|
||||
self:CheckShouldShow("player")
|
||||
self:CheckShouldShow("PLAYER_ENTERING_WORLD", "player")
|
||||
end
|
||||
|
||||
function DragonridingVigor.prototype:CheckShouldShow(event, unit, info)
|
||||
@ -49,11 +55,29 @@ function DragonridingVigor.prototype:CheckShouldShow(event, unit, info)
|
||||
return
|
||||
end
|
||||
|
||||
if IceHUD:HasAnyBuff("player", DragonridingBuffs) then
|
||||
self:Show(true)
|
||||
else
|
||||
local info = C_UIWidgetManager.GetFillUpFramesWidgetVisualizationInfo(vigorWidgetID)
|
||||
if not info or info.shownState == 0 then
|
||||
self:Show(false)
|
||||
self.suppressHideBlizz = true
|
||||
if self.moduleSettings.hideBlizz then
|
||||
self:ShowBlizz()
|
||||
end
|
||||
|
||||
return
|
||||
end
|
||||
|
||||
self:Show(true)
|
||||
|
||||
-- if knowsAlternateMountEnum and UnitPowerMax(self.unit, unitPowerType) > 0 then
|
||||
-- self:Show(true)
|
||||
-- elseif not knowsAlternateMountEnum and IceHUD:HasAnyBuff("player", DragonridingBuffs) then
|
||||
-- self:Show(true)
|
||||
-- else
|
||||
-- self:Show(false)
|
||||
-- if self.moduleSettings.hideBlizz then
|
||||
-- self:ShowBlizz()
|
||||
-- end
|
||||
-- end
|
||||
end
|
||||
|
||||
function DragonridingVigor.prototype:UpdateRunePower(event, arg1, arg2)
|
||||
@ -68,17 +92,21 @@ function DragonridingVigor.prototype:UpdateVigorRecharge(event, widget)
|
||||
return
|
||||
end
|
||||
|
||||
if event ~= "internal" then
|
||||
if self.moduleSettings.hideBlizz then
|
||||
self:HideBlizz()
|
||||
end
|
||||
end
|
||||
|
||||
local info = C_UIWidgetManager.GetFillUpFramesWidgetVisualizationInfo(vigorWidgetID)
|
||||
if not info then
|
||||
return
|
||||
end
|
||||
|
||||
self.suppressHideBlizz = not info or info.shownState == 0
|
||||
|
||||
if event ~= "internal" then
|
||||
if self.moduleSettings.hideBlizz then
|
||||
self:HideBlizz()
|
||||
else
|
||||
self:ShowBlizz()
|
||||
end
|
||||
end
|
||||
|
||||
if info.numFullFrames == info.numTotalFrames then
|
||||
return
|
||||
end
|
||||
@ -138,14 +166,24 @@ function DragonridingVigor.prototype:GetPartialRuneAtlas(rune)
|
||||
end
|
||||
|
||||
function DragonridingVigor.prototype:ShowBlizz()
|
||||
UIWidgetPowerBarContainerFrame:Show()
|
||||
local info = C_UIWidgetManager.GetFillUpFramesWidgetVisualizationInfo(vigorWidgetID)
|
||||
if not info or info.shownState == 0 then
|
||||
return
|
||||
end
|
||||
UIWidgetPowerBarContainerFrame.widgetFrames[vigorWidgetID]:Show()
|
||||
end
|
||||
|
||||
function DragonridingVigor.prototype:HideBlizz()
|
||||
UIWidgetPowerBarContainerFrame:Hide()
|
||||
if not UIWidgetPowerBarContainerFrame.widgetFrames or not UIWidgetPowerBarContainerFrame.widgetFrames[vigorWidgetID] then
|
||||
return
|
||||
end
|
||||
|
||||
if not self.suppressHideBlizz then
|
||||
UIWidgetPowerBarContainerFrame.widgetFrames[vigorWidgetID]:Hide()
|
||||
end
|
||||
end
|
||||
|
||||
-- Load us up
|
||||
if ALTERNATE_POWER_INDEX and C_UIWidgetManager and C_UIWidgetManager.GetFillUpFramesWidgetVisualizationInfo then
|
||||
if unitPowerType and C_UIWidgetManager and C_UIWidgetManager.GetFillUpFramesWidgetVisualizationInfo then
|
||||
IceHUD.DragonridingVigor = DragonridingVigor:new()
|
||||
end
|
||||
|
@ -107,7 +107,7 @@ function EclipseBar.prototype:CreateFrame()
|
||||
end
|
||||
|
||||
function EclipseBar.prototype:CreateSolarBar()
|
||||
self.solarBar = self:BarFactory(self.solarBar,"BACKGROUND", "ARTWORK", "Solar")
|
||||
self.solarBar = self:BarFactory(self.solarBar, "BACKGROUND", "ARTWORK", "Solar")
|
||||
self:SetBarCoord(self.solarBar, 0.5, true)
|
||||
|
||||
self.solarBar.bar:SetVertexColor(self:GetColor("EclipseSolar", 1))
|
||||
|
@ -422,9 +422,9 @@ end
|
||||
|
||||
function FocusHealth.prototype:UpdateRaidFocusIcon()
|
||||
if self.moduleSettings.raidIconOnTop then
|
||||
self.frame.raidIcon:SetFrameStrata("MEDIUM")
|
||||
self.frame.raidIcon:SetFrameStrata(IceHUD.IceCore:DetermineStrata("MEDIUM"))
|
||||
else
|
||||
self.frame.raidIcon:SetFrameStrata("LOW")
|
||||
self.frame.raidIcon:SetFrameStrata(IceHUD.IceCore:DetermineStrata("LOW"))
|
||||
end
|
||||
|
||||
if not (UnitExists(self.unit)) or not self.moduleSettings.showRaidIcon then
|
||||
|
@ -38,7 +38,7 @@ function GlobalCoolDown.prototype:Enable(core)
|
||||
|
||||
self:Show(false)
|
||||
|
||||
self.frame:SetFrameStrata("LOW")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("LOW"))
|
||||
|
||||
self.CDSpellId = self:GetSpellId()
|
||||
end
|
||||
@ -289,6 +289,12 @@ function GlobalCoolDown.prototype:GetSpellId()
|
||||
if not GetSpellInfo(defaultSpells["PALADIN"]) then
|
||||
defaultSpells["PALADIN"] = 635
|
||||
end
|
||||
if not GetSpellInfo(defaultSpells["MAGE"]) then
|
||||
defaultSpells["MAGE"] = 133
|
||||
end
|
||||
if not GetSpellInfo(defaultSpells["WARRIOR"]) then
|
||||
defaultSpells["WARRIOR"] = 6673
|
||||
end
|
||||
|
||||
local _, unitClass = UnitClass("player")
|
||||
return defaultSpells[unitClass]
|
||||
|
@ -35,11 +35,12 @@ function PlayerAlternatePower.prototype:Enable(core)
|
||||
self:RegisterEvent("UNIT_POWER_BAR_SHOW", "PowerBarShow")
|
||||
self:RegisterEvent("UNIT_POWER_BAR_HIDE", "PowerBarHide")
|
||||
|
||||
self.wantToShow = true
|
||||
self:Update(self.unit)
|
||||
|
||||
if self.maxPower == 0 then
|
||||
self:Show(false)
|
||||
else
|
||||
self.wantToShow = true
|
||||
end
|
||||
if self.moduleSettings.hideBlizz then
|
||||
self:HideBlizz()
|
||||
|
@ -115,16 +115,30 @@ end
|
||||
|
||||
function PlayerInfo.prototype:ShowBlizz()
|
||||
BuffFrame:Show()
|
||||
if DebuffFrame then
|
||||
DebuffFrame:Show()
|
||||
DebuffFrame:GetScript("OnLoad")(DebuffFrame)
|
||||
if DebuffFrame.Update then
|
||||
DebuffFrame:Update()
|
||||
end
|
||||
end
|
||||
if TemporaryEnchantFrame then
|
||||
TemporaryEnchantFrame:Show()
|
||||
end
|
||||
|
||||
BuffFrame:GetScript("OnLoad")(BuffFrame)
|
||||
if BuffFrame.Update then
|
||||
BuffFrame:Update()
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
function PlayerInfo.prototype:HideBlizz()
|
||||
BuffFrame:Hide()
|
||||
if DebuffFrame then
|
||||
DebuffFrame:Hide()
|
||||
DebuffFrame:UnregisterAllEvents()
|
||||
end
|
||||
if TemporaryEnchantFrame then
|
||||
TemporaryEnchantFrame:Hide()
|
||||
end
|
||||
|
@ -475,7 +475,7 @@ function PlayerMana.prototype:CreateTickerFrame()
|
||||
self.tickerFrame = CreateFrame("Frame", nil, self.barFrame)
|
||||
end
|
||||
|
||||
self.tickerFrame:SetFrameStrata("BACKGROUND")
|
||||
self.tickerFrame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.tickerFrame:SetWidth(self.settings.barWidth)
|
||||
self.tickerFrame:SetHeight(self.settings.barHeight)
|
||||
|
||||
|
@ -11,7 +11,7 @@ function RangeCheck.prototype:init()
|
||||
|
||||
self.scalingEnabled = true
|
||||
|
||||
LibRange = LibStub("LibRangeCheck-2.0", true)
|
||||
LibRange = LibStub("LibRangeCheck-3.0", true)
|
||||
end
|
||||
|
||||
function RangeCheck.prototype:Enable(core)
|
||||
@ -126,7 +126,7 @@ function RangeCheck.prototype:CreateFrame(redraw)
|
||||
end
|
||||
|
||||
self.frame:SetScale(self.moduleSettings.scale)
|
||||
self.frame:SetFrameStrata("BACKGROUND")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame:SetWidth(200)
|
||||
self.frame:SetHeight(32)
|
||||
self.frame:ClearAllPoints()
|
||||
|
@ -456,7 +456,7 @@ end
|
||||
function Runes.prototype:CreateFrame()
|
||||
Runes.super.prototype.CreateFrame(self)
|
||||
|
||||
self.frame:SetFrameStrata("BACKGROUND")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame:SetWidth(self.runeSize*self.numRunes)
|
||||
self.frame:SetHeight(1)
|
||||
self.frame:ClearAllPoints()
|
||||
@ -516,7 +516,7 @@ function Runes.prototype:CreateRune(i, type, name)
|
||||
self.frame.graphical[i].shine = self.frame.graphical[i]:CreateTexture(nil, "OVERLAY")
|
||||
end
|
||||
|
||||
self.frame.graphical[i]:SetFrameStrata("BACKGROUND")
|
||||
self.frame.graphical[i]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame.graphical[i]:SetWidth(self.runeSize)
|
||||
self.frame.graphical[i]:SetHeight(self.runeSize)
|
||||
|
||||
@ -546,7 +546,7 @@ function Runes.prototype:CreateRune(i, type, name)
|
||||
self.frame.graphical[i]:Hide()
|
||||
end
|
||||
|
||||
self.frame.graphical[i].cd:SetFrameStrata("BACKGROUND")
|
||||
self.frame.graphical[i].cd:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame.graphical[i].cd:SetFrameLevel(self.frame.graphical[i]:GetFrameLevel()+1)
|
||||
self.frame.graphical[i].cd:ClearAllPoints()
|
||||
self.frame.graphical[i].cd:SetAllPoints(self.frame.graphical[i])
|
||||
|
@ -214,7 +214,7 @@ function SliceAndDice.prototype:CreateFrame()
|
||||
end
|
||||
|
||||
function SliceAndDice.prototype:CreateDurationBar()
|
||||
self.durationFrame = self:BarFactory(self.durationFrame, "BACKGROUND","ARTWORK", "Duration")
|
||||
self.durationFrame = self:BarFactory(self.durationFrame, "BACKGROUND", "ARTWORK", "Duration")
|
||||
|
||||
-- Rokiyo: Do we need to call this here?
|
||||
self.CurrScale = 0
|
||||
|
@ -17,6 +17,12 @@ local staggerIds = {LightID, ModerateID, HeavyID}
|
||||
|
||||
local MinLevel = 10
|
||||
|
||||
local STAGGER_YELLOW_TRANSITION, STAGGER_RED_TRANSITION = STAGGER_YELLOW_TRANSITION, STAGGER_RED_TRANSITION
|
||||
if STAGGER_STATES then
|
||||
STAGGER_YELLOW_TRANSITION = STAGGER_STATES.YELLOW.threshold
|
||||
STAGGER_RED_TRANSITION = STAGGER_STATES.RED.threshold
|
||||
end
|
||||
|
||||
StaggerBar.prototype.StaggerDuration = 0
|
||||
StaggerBar.prototype.StaggerEndTime = 0
|
||||
|
||||
@ -137,7 +143,7 @@ function StaggerBar.prototype:CreateFrame()
|
||||
end
|
||||
|
||||
function StaggerBar.prototype:CreateTimerBar()
|
||||
self.timerFrame = self:BarFactory(self.timerFrame, "MEDIUM","ARTWORK", "Timer")
|
||||
self.timerFrame = self:BarFactory(self.timerFrame, "MEDIUM", "ARTWORK", "Timer")
|
||||
|
||||
self.CurrScale = 0
|
||||
|
||||
|
@ -72,10 +72,20 @@ local IncapacitateCCList = {
|
||||
19503,
|
||||
-- Sleep
|
||||
700,
|
||||
-- Polymorph
|
||||
-- Polymorph (rank 1)
|
||||
118,
|
||||
-- Also Polymorph
|
||||
65801,
|
||||
-- Polymorph rank 2
|
||||
12824,
|
||||
-- Polymorph rank 3
|
||||
12825,
|
||||
-- Polymorph rank 4
|
||||
12826,
|
||||
-- Polymorph: Pig
|
||||
28272,
|
||||
-- Also Polymorph: Pig
|
||||
28285,
|
||||
-- Polymorph: Turtle
|
||||
28271,
|
||||
-- Polymorph: Penguin
|
||||
@ -350,7 +360,7 @@ function TargetCC.prototype:GetMaxDebuffDuration(unitName, debuffNames)
|
||||
while debuff do
|
||||
remaining = endTime - GetTime()
|
||||
|
||||
if debuffNames[spellId] and (not self.moduleSettings.onlyShowForMyDebuffs or isMine) then
|
||||
if (debuffNames[spellId] or debuffNames[debuff]) and (not self.moduleSettings.onlyShowForMyDebuffs or isMine) then
|
||||
if result[0] then
|
||||
if result[2] < remaining then
|
||||
result = {debuff, duration, remaining}
|
||||
|
@ -204,6 +204,6 @@ end
|
||||
|
||||
-- Fulzamoth 2019-09-27 : load in Classic if LibClassicCasterino exists
|
||||
-- Load us up
|
||||
if not IceHUD.WowClassic or LibClassicCasterino then
|
||||
if IceHUD.CanShowTargetCasting then
|
||||
IceHUD.TargetCast = TargetCast:new()
|
||||
end
|
||||
|
@ -984,9 +984,9 @@ end
|
||||
|
||||
function IceTargetHealth.prototype:UpdateRaidTargetIcon()
|
||||
if self.moduleSettings.raidIconOnTop then
|
||||
self.frame.raidIcon:SetFrameStrata("MEDIUM")
|
||||
self.frame.raidIcon:SetFrameStrata(IceHUD.IceCore:DetermineStrata("MEDIUM"))
|
||||
else
|
||||
self.frame.raidIcon:SetFrameStrata("LOW")
|
||||
self.frame.raidIcon:SetFrameStrata(IceHUD.IceCore:DetermineStrata("LOW"))
|
||||
end
|
||||
|
||||
if not self.moduleSettings.showRaidIcon or (not UnitExists(self.unit) and (not self.configMode and not IceHUD.IceCore:IsInConfigMode())) then
|
||||
|
@ -1136,7 +1136,7 @@ do -- OVERRIDE: IceTargetInfo.prototype:CreateFrame(redraw)
|
||||
|
||||
self.frame:SetScale(self.moduleSettings.scale)
|
||||
|
||||
self.frame:SetFrameStrata("BACKGROUND")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame:SetWidth(self.width)
|
||||
self.frame:SetHeight(32)
|
||||
self.frame:ClearAllPoints()
|
||||
@ -1220,7 +1220,7 @@ function IceTargetInfo.prototype:CreateAuraFrame(aura, redraw)
|
||||
|
||||
if (not self.frame[auraFrame]) then
|
||||
self.frame[auraFrame] = CreateFrame("Frame", nil, self.frame)
|
||||
self.frame[auraFrame]:SetFrameStrata("BACKGROUND")
|
||||
self.frame[auraFrame]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame[auraFrame]:SetWidth(1)
|
||||
self.frame[auraFrame]:SetHeight(1)
|
||||
self.frame[auraFrame]:Show()
|
||||
@ -1244,7 +1244,7 @@ end
|
||||
do
|
||||
local function FrameFactory(frameType, parentFrame, inheritsFrame)
|
||||
local frame = CreateFrame(frameType, nil, parentFrame, inheritsFrame)
|
||||
frame:SetFrameStrata("BACKGROUND")
|
||||
frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
frame:ClearAllPoints()
|
||||
return frame
|
||||
end
|
||||
@ -1453,7 +1453,7 @@ function IceTargetInfo.prototype:UpdateBuffType(aura)
|
||||
end
|
||||
else
|
||||
self.frame[auraFrame].iconFrames[i]:Hide()
|
||||
buffData[aura][i] = nil
|
||||
table.remove(buffData[aura], i)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -314,7 +314,7 @@ function TargetOfTarget.prototype:CreateFrame()
|
||||
self.frame:SetAttribute("unit", self.unit)
|
||||
end
|
||||
|
||||
self.frame:SetFrameStrata("BACKGROUND")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
if self.moduleSettings.sizeToGap then
|
||||
self.frame:SetWidth(self.settings.gap)
|
||||
else
|
||||
@ -368,7 +368,7 @@ function TargetOfTarget.prototype:CreateBarFrame()
|
||||
|
||||
self.frame.bg:SetTexture(0,0,0)
|
||||
|
||||
self.frame.bar:SetFrameStrata("BACKGROUND")
|
||||
self.frame.bar:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
if self.moduleSettings.sizeToGap then
|
||||
self.frame.bg:SetWidth(self.settings.gap + 2)
|
||||
self.frame.bar:SetWidth(self.settings.gap)
|
||||
@ -435,7 +435,7 @@ function TargetOfTarget.prototype:CreateDebuffFrame()
|
||||
end
|
||||
self.frame.debuffFrame = CreateFrame("Frame", nil, self.frame)
|
||||
|
||||
self.frame.debuffFrame:SetFrameStrata("BACKGROUND")
|
||||
self.frame.debuffFrame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame.debuffFrame:SetWidth(10)
|
||||
self.frame.debuffFrame:SetHeight(self.height)
|
||||
|
||||
@ -451,7 +451,7 @@ function TargetOfTarget.prototype:CreateIconFrames(parent)
|
||||
|
||||
for i = 1, IceCore.BuffLimit do
|
||||
buffs[i] = CreateFrame("Frame", nil, parent)
|
||||
buffs[i]:SetFrameStrata("BACKGROUND")
|
||||
buffs[i]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
buffs[i]:SetWidth(self.buffSize)
|
||||
buffs[i]:SetHeight(self.buffSize)
|
||||
buffs[i]:SetPoint("LEFT", (i-1) * self.buffSize + (i-1), 0)
|
||||
|
@ -231,7 +231,7 @@ end
|
||||
|
||||
-- create the aggro range indicator bar
|
||||
function IceThreat.prototype:CreateAggroBar()
|
||||
self.aggroBar = self:BarFactory(self.aggroBar, "BACKGROUND","ARTWORK", "Aggro")
|
||||
self.aggroBar = self:BarFactory(self.aggroBar, "BACKGROUND", "ARTWORK", "Aggro")
|
||||
|
||||
local r, g, b = self:GetColor("ThreatPullAggro")
|
||||
if (self.settings.backgroundToggle) then
|
||||
|
@ -89,11 +89,11 @@ function Totems.prototype:GetOptions()
|
||||
end,
|
||||
order = 31
|
||||
}
|
||||
--[[
|
||||
|
||||
opts["hideBlizz"] = {
|
||||
type = "toggle",
|
||||
name = L["Hide Blizzard Frame"],
|
||||
desc = L["Hides Blizzard Rune frame and disables all events related to it"],
|
||||
desc = L["Hides Blizzard frame and disables all events related to it.\n\nNOTE: Blizzard attaches this UI to the player's unitframe, so if you have that hidden in PlayerHealth, then this won't do anything."],
|
||||
get = function()
|
||||
return self.moduleSettings.hideBlizz
|
||||
end,
|
||||
@ -110,7 +110,7 @@ function Totems.prototype:GetOptions()
|
||||
end,
|
||||
order = 32
|
||||
}
|
||||
--]]
|
||||
|
||||
opts["displayMode"] = {
|
||||
type = 'select',
|
||||
name = L["Totem orientation"],
|
||||
@ -193,7 +193,7 @@ function Totems.prototype:GetDefaultSettings()
|
||||
defaults["totemFontSize"] = 20
|
||||
defaults["totemMode"] = "Graphical"
|
||||
defaults["usesDogTagStrings"] = false
|
||||
defaults["hideBlizz"] = true
|
||||
defaults["hideBlizz"] = IceHUD.CanHookDestroyTotem
|
||||
defaults["alwaysFullAlpha"] = false
|
||||
defaults["displayMode"] = "Horizontal"
|
||||
defaults["cooldownMode"] = "Cooldown"
|
||||
@ -265,7 +265,7 @@ end
|
||||
function Totems.prototype:CreateFrame()
|
||||
Totems.super.prototype.CreateFrame(self)
|
||||
|
||||
self.frame:SetFrameStrata("BACKGROUND")
|
||||
self.frame:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame:SetWidth(self.totemSize*self.numTotems)
|
||||
self.frame:SetHeight(1)
|
||||
self.frame:ClearAllPoints()
|
||||
@ -349,7 +349,7 @@ function Totems.prototype:CreateTotem(i, name)
|
||||
self.frame.graphical[i].totem:SetAllPoints(self.frame.graphical[i])
|
||||
end
|
||||
|
||||
self.frame.graphical[i]:SetFrameStrata("BACKGROUND")
|
||||
self.frame.graphical[i]:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame.graphical[i]:SetWidth(self.totemSize)
|
||||
self.frame.graphical[i]:SetHeight(self.totemSize)
|
||||
|
||||
@ -380,7 +380,7 @@ function Totems.prototype:CreateTotem(i, name)
|
||||
end
|
||||
end
|
||||
|
||||
self.frame.graphical[i].cd:SetFrameStrata("BACKGROUND")
|
||||
self.frame.graphical[i].cd:SetFrameStrata(IceHUD.IceCore:DetermineStrata("BACKGROUND"))
|
||||
self.frame.graphical[i].cd:SetFrameLevel(self.frame.graphical[i]:GetFrameLevel()+1)
|
||||
self.frame.graphical[i].cd:ClearAllPoints()
|
||||
self.frame.graphical[i].cd:SetAllPoints(self.frame.graphical[i])
|
||||
|
117
this_version.md
117
this_version.md
@ -1,5 +1,122 @@
|
||||
# Changelog
|
||||
|
||||
v1.14.37:
|
||||
|
||||
- Update LibRangeCheck version to address taint issues (wowace ticket #353)
|
||||
|
||||
v1.14.36:
|
||||
|
||||
- Really fix IceHUD stomping on other uses of the PowerBarContainer such as the Digging bar for the Archive event.
|
||||
|
||||
v1.14.35:
|
||||
|
||||
- Fix IceHUD stomping on other uses of the PowerBarContainer such as the Digging bar for the Archive event.
|
||||
|
||||
v1.14.34:
|
||||
|
||||
- Fix Vigor showing up sometimes when it shouldn't.
|
||||
|
||||
v1.14.33:
|
||||
|
||||
- Update TOC for Dragonflight to 10.2.5
|
||||
|
||||
v1.14.32:
|
||||
|
||||
- Enable GlobalCoolDown module in Classic Era 1.15.0+
|
||||
- Enable tracking target buffs/debuffs in Classic Era 1.15.0+
|
||||
|
||||
v1.14.31:
|
||||
|
||||
- Fix nil concatenation error (wowace ticket #351)
|
||||
|
||||
v1.14.30:
|
||||
|
||||
- Update Classic-era TOC for 1.15.0
|
||||
- Enable TargetCastBar module on Classic-era 1.15+
|
||||
|
||||
v1.14.29:
|
||||
|
||||
- Fix Stagger bar error for 10.2.0 (wowace ticket #348)
|
||||
|
||||
v1.14.28:
|
||||
|
||||
- Update TOC for Dragonflight to 10.2.0
|
||||
|
||||
v1.14.27:
|
||||
|
||||
- Update TOC for Dragonflight to 10.1.7
|
||||
|
||||
v1.14.26:
|
||||
|
||||
- Update TOC for classic-era to 1.14.4
|
||||
|
||||
v1.14.25:
|
||||
|
||||
- Fixed lua error that would appear when targetting webwrapped players in heroic alpha/beta titan rune dungeons.
|
||||
- Added ability to adjust strata globally.
|
||||
|
||||
v1.14.24:
|
||||
|
||||
- Fixed an error when targeting a player and right-clicking a module that should show a menu in 10.1.5.
|
||||
|
||||
v1.14.23:
|
||||
|
||||
- Update Dragonflight TOC for 10.1.5
|
||||
|
||||
v1.14.22:
|
||||
|
||||
- Fixed reported issue with a Lua error on Wrath Classic clients. https://www.wowace.com/projects/ice-hud/issues/344
|
||||
- Fixed Vigor module not working when riding Grotto Netherwing Drake (and theoretically all future Dragonriding mount types).
|
||||
- Updated TOC for Wrath-Classic.
|
||||
|
||||
v1.14.21:
|
||||
|
||||
- Increased maximum scale/zoom to 400%, by request.
|
||||
- Fixed TargetCC/FocusCC modules on Wrath Classic.
|
||||
- Fixed disabled Buff/Debuff Watchers showing a static gray bar when set to When Missing or Always display modes.
|
||||
- Fixed Buff/Debuff Watchers showing an empty bar when set to Missing mode. If the background was disabled, this looked like just a floating spell icon.
|
||||
- Fixed spell icons sometimes not showing up for custom bars until the tracked spell had been cast once.
|
||||
|
||||
v1.14.20:
|
||||
|
||||
- Added Winding Slitherdrake as recognized for the Dragonriding Vigor module
|
||||
|
||||
v1.14.19:
|
||||
|
||||
- Updated TOCs for 10.1.0
|
||||
- Added addon icon for 10.1.0 clients
|
||||
- Fixed Dragonriding Vigor charges not showing up in 10.1.0
|
||||
- Fixed Vigor not always updating correctly when loading into the game or a new zone
|
||||
|
||||
v1.14.18:
|
||||
|
||||
- Fixed Runic Power showing on a scale of 0-1000+ instead of 0-100+ with DogTags off
|
||||
- Added option (enabled by default) to hide mod during cataloging.
|
||||
- Fixed "Hide Blizzard Buffs" option on PlayerInfo causing errors and "?" icons when toggling off.
|
||||
- Also hide Debuff frame if it exists (Dragonflight+) when enabling "Hide Blizzard Buffs" in the PlayerInfo module.
|
||||
|
||||
v1.14.17:
|
||||
|
||||
- Updated TOCs for 10.0.7
|
||||
|
||||
v1.14.16:
|
||||
|
||||
- Exposed the option in the Totems module to hide the Blizzard Totems frame or not, and changed the default value to not hide when on a version of the game that doesn't support right-clicking to destroy totems (any version after Wrath). This enables using the default Totems frame to cancel totems early.
|
||||
- Fixed a reported error when playing Darkmoon Faire games.
|
||||
- Added a few more Polymorph ranks to TargetCC for Classic. I'm sure there are more missing.
|
||||
|
||||
v1.14.15:
|
||||
|
||||
- Updated TOCs for 10.0.5
|
||||
|
||||
v1.14.14:
|
||||
|
||||
- Fixed PlayerAlternatePower bar showing up when it shouldn't have, such as when casting Power Word: Shield before ever having done anything to trigger a game-level "alternate power" event, such as mounting a Dragonriding mount.
|
||||
|
||||
v1.14.13:
|
||||
|
||||
- Fixed Vigor module hiding default Climbing, Film, etc. UIs. (wowace ticket #336)
|
||||
|
||||
v1.14.12:
|
||||
|
||||
- Added a module for showing Dragonriding Vigor points.
|
||||
|
Reference in New Issue
Block a user