Compare commits

...

13 Commits

Author SHA1 Message Date
bfffdd82d7 Fix vigor on entering world
Forgot to send the event argument, so it was returning early.

Fixes #34
2023-05-03 18:23:52 -05:00
24c45f320f Update TOC, add icon, fix Vigor for 10.1 2023-05-03 18:22:36 -05:00
1db8545b63 Update other changelog 2023-04-02 21:47:03 -05:00
18fa31807c Hide Debuff frame along with Buffs if desired 2023-04-01 20:58:25 -05:00
594ea0a3e3 Fix errors when toggling off Hide Blizz 2023-04-01 20:53:53 -05:00
cb83a3f63f Add option to hide during Cataloging 2023-04-01 20:45:37 -05:00
077286fd5f Show Runic Power on a 0-100ish scale with DogTags off 2023-04-01 20:17:50 -05:00
a50a313314 Update TOCs 2023-04-01 15:02:35 -05:00
271bb38a69 Add more Polymorph ranks 2023-02-06 20:15:52 -06:00
0e11a40d3a Don't hide Blizzard Totems by default on 10.0 2023-02-06 00:19:08 -06:00
5020279748 Fix errors when playing Faire games 2023-02-06 00:16:15 -06:00
cfaa09a541 Expose Totems Hide Blizzard setting 2023-02-01 16:41:31 -06:00
a0ed3ae6e6 Update TOCs 2023-01-25 13:40:36 -06:00
13 changed files with 142 additions and 19 deletions

View File

@ -115,6 +115,7 @@ function IceCore.prototype:SetupDefaults()
bHideDuringPetBattles = true, bHideDuringPetBattles = true,
bHideInBarberShop = true, bHideInBarberShop = true,
bHideDuringShellGame = true, bHideDuringShellGame = true,
bHideDuringCataloging = true,
}, },
global = { global = {
lastRunVersion = 0, lastRunVersion = 0,
@ -284,6 +285,7 @@ function IceCore.prototype:Enable(userToggle)
self.IceHUDFrame:RegisterEvent("ZONE_CHANGED") self.IceHUDFrame:RegisterEvent("ZONE_CHANGED")
end end
self.IceHUDFrame:RegisterEvent("UNIT_AURA") 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_ENABLED", IceHUD.PLAYER_REGEN_ENABLED)
self.IceHUDFrame:RegisterEvent("PLAYER_REGEN_DISABLED", IceHUD.PLAYER_REGEN_DISABLED) self.IceHUDFrame:RegisterEvent("PLAYER_REGEN_DISABLED", IceHUD.PLAYER_REGEN_DISABLED)
self.IceHUDFrame:SetScript("OnEvent", function(self, event, ...) self.IceHUDFrame:SetScript("OnEvent", function(self, event, ...)
@ -303,6 +305,11 @@ function IceCore.prototype:Enable(userToggle)
if IceHUD.IceCore.settings.bHideInBarberShop then if IceHUD.IceCore.settings.bHideInBarberShop then
self:Show() self:Show()
end 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 elseif (event == "UNIT_AURA") then
local unit = ... local unit = ...
if unit ~= "player" then if unit ~= "player" then
@ -312,6 +319,9 @@ function IceCore.prototype:Enable(userToggle)
if IceHUD.IceCore.settings.bHideDuringShellGame and IceHUD:HasAnyDebuff("player", {IceHUD.ShellGameSpellID}) and UnitInVehicle("player") then if IceHUD.IceCore.settings.bHideDuringShellGame and IceHUD:HasAnyDebuff("player", {IceHUD.ShellGameSpellID}) and UnitInVehicle("player") then
self:RegisterEvent("UNIT_EXITED_VEHICLE") self:RegisterEvent("UNIT_EXITED_VEHICLE")
self:Hide() 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 elseif C_Map then
local bestMapID = C_Map.GetBestMapForUnit("player") local bestMapID = C_Map.GetBestMapForUnit("player")
if bestMapID ~= ZM_MAP_ID then if bestMapID ~= ZM_MAP_ID then

View File

@ -60,6 +60,8 @@ IceHUD.SupportsHealPrediction = IceHUD.WowVer >= 40000 or IceHUD.WowClassicWrath
IceHUD.UnitGroupRolesReturnsRoleString = IceHUD.WowVer >= 40000 or IceHUD.WowClassicWrath IceHUD.UnitGroupRolesReturnsRoleString = IceHUD.WowVer >= 40000 or IceHUD.WowClassicWrath
IceHUD.ShellGameSpellID = 271571 IceHUD.ShellGameSpellID = 271571
IceHUD.HasShellGame = GetSpellInfo(IceHUD.ShellGameSpellID) IceHUD.HasShellGame = GetSpellInfo(IceHUD.ShellGameSpellID)
IceHUD.CatalogingSpellIDs = {366290, 372817, 385025, 385635, 386070, 386504, 400043, 403115}
IceHUD.HasCataloging = GetSpellInfo(366290)
IceHUD.UnitPowerEvent = "UNIT_POWER_UPDATE" IceHUD.UnitPowerEvent = "UNIT_POWER_UPDATE"

View File

@ -1,8 +1,8 @@
## Interface: 100002 ## Interface: 100100
## Interface-Retail: 100002 ## Interface-Retail: 100100
## Interface-Classic: 11403 ## Interface-Classic: 11403
## Interface-BCC: 20504 ## Interface-BCC: 20504
## Interface-Wrath: 30400 ## Interface-Wrath: 30401
## 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
@ -14,6 +14,7 @@
# ## Version: @project-version@ # ## Version: @project-version@
#@end-non-debug@ #@end-non-debug@
## SavedVariables: IceCoreDB ## SavedVariables: IceCoreDB
## IconTexture: Interface\Icons\Spell_Frost_Frost
## 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 ## 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
## X-Category: HUDs ## X-Category: HUDs
## X-Website: https://www.wowace.com/projects/ice-hud ## X-Website: https://www.wowace.com/projects/ice-hud

View File

@ -1,8 +1,8 @@
## Interface: 100002 ## Interface: 100100
## Interface-Retail: 100002 ## Interface-Retail: 100100
## Interface-Classic: 11403 ## Interface-Classic: 11403
## Interface-BCC: 20504 ## Interface-BCC: 20504
## Interface-Wrath: 30400 ## Interface-Wrath: 30401
## Title: IceHUD |cff7fff7f-Options-|r ## Title: IceHUD |cff7fff7f-Options-|r
## Author: Parnic ## Author: Parnic
## Version: @project-version@ ## Version: @project-version@
@ -10,6 +10,7 @@
## OptionalDeps: AceGUI-3.0-SharedMediaWidgets ## OptionalDeps: AceGUI-3.0-SharedMediaWidgets
## Dependencies: IceHUD ## Dependencies: IceHUD
## LoadOnDemand: 1 ## LoadOnDemand: 1
## IconTexture: Interface\Icons\Spell_Frost_Frost
Json.lua Json.lua
JsonDecode.lua JsonDecode.lua

View File

@ -426,6 +426,24 @@ The Classic game client doesn't provide this information to addons because it wa
hidden = not IceHUD.HasShellGame, hidden = not IceHUD.HasShellGame,
order = 36, 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,
},
} }
}, },

View File

@ -19,10 +19,11 @@ IceUnitBar.prototype.hasPet = nil
IceUnitBar.prototype.noFlash = 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 if Enum and Enum.PowerType then
SPELL_POWER_INSANITY = Enum.PowerType.Insanity SPELL_POWER_INSANITY = Enum.PowerType.Insanity
SPELL_POWER_RAGE = Enum.PowerType.Rage SPELL_POWER_RAGE = Enum.PowerType.Rage
SPELL_POWER_RUNIC_POWER = Enum.PowerType.RunicPower
end end
-- Constructor -- -- Constructor --
@ -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. -- 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.mana = UnitPower(self.unit, UnitPowerType(self.unit))
self.maxMana = UnitPowerMax(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.mana = IceHUD:MathRound(self.mana / 10)
self.maxMana = IceHUD:MathRound(self.maxMana / 10) self.maxMana = IceHUD:MathRound(self.maxMana / 10)
end end

View File

@ -1,5 +1,33 @@
# Changelog # Changelog
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: 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. - 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.

View File

@ -616,7 +616,10 @@ function IceClassPowerCounter.prototype:SetRuneCoords(rune, percent)
local left, right, top, bottom = 0, 1, 0, 1 local left, right, top, bottom = 0, 1, 0, 1
if self:GetRuneMode() == "Graphical" then 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 end
if self.currentGrowMode == self.growModes["height"] then if self.currentGrowMode == self.growModes["height"] then
@ -874,7 +877,10 @@ function IceClassPowerCounter.prototype:SetupRuneTexture(rune)
local a,b,c,d = 0, 1, 0, 1 local a,b,c,d = 0, 1, 0, 1
if self:GetRuneMode() == "Graphical" then if self:GetRuneMode() == "Graphical" then
width = self.runeWidth 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 end
-- make sure any texture aside from the special one is square and has the proper coordinates -- make sure any texture aside from the special one is square and has the proper coordinates

View File

@ -10,6 +10,8 @@ local DragonridingBuffs = {
local vigorWidgetSetID = 283 local vigorWidgetSetID = 283
local vigorWidgetID = 4460 local vigorWidgetID = 4460
local unitPowerType = Enum and Enum.PowerType and Enum.PowerType.AlternateMount
unitPowerType = unitPowerType or ALTERNATE_POWER_INDEX
function DragonridingVigor.prototype:init() function DragonridingVigor.prototype:init()
DragonridingVigor.super.prototype.init(self, "Vigor") DragonridingVigor.super.prototype.init(self, "Vigor")
@ -18,7 +20,7 @@ function DragonridingVigor.prototype:init()
self.unit = "player" self.unit = "player"
self.numericColor = "VigorNumeric" self.numericColor = "VigorNumeric"
self.unitPower = ALTERNATE_POWER_INDEX self.unitPower = unitPowerType
self.minLevel = 0 self.minLevel = 0
self.bTreatEmptyAsFull = false self.bTreatEmptyAsFull = false
self.runeWidth = self.runeHeight self.runeWidth = self.runeHeight
@ -26,7 +28,7 @@ function DragonridingVigor.prototype:init()
end end
function DragonridingVigor.prototype:Enable(core) function DragonridingVigor.prototype:Enable(core)
self.numRunes = UnitPowerMax(self.unit, ALTERNATE_POWER_INDEX) self.numRunes = UnitPowerMax(self.unit, unitPowerType)
self.runeCoords = { } self.runeCoords = { }
for i = 1, self.numRunes do for i = 1, self.numRunes do
self:SetupNewRune(i) self:SetupNewRune(i)
@ -41,7 +43,7 @@ end
function DragonridingVigor.prototype:EnteringWorld() function DragonridingVigor.prototype:EnteringWorld()
DragonridingVigor.super.prototype.EnteringWorld(self) DragonridingVigor.super.prototype.EnteringWorld(self)
self:CheckShouldShow("player") self:CheckShouldShow("PLAYER_ENTERING_WORLD", "player")
end end
function DragonridingVigor.prototype:CheckShouldShow(event, unit, info) function DragonridingVigor.prototype:CheckShouldShow(event, unit, info)
@ -151,6 +153,6 @@ function DragonridingVigor.prototype:HideBlizz()
end end
-- Load us up -- 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() IceHUD.DragonridingVigor = DragonridingVigor:new()
end end

View File

@ -115,16 +115,30 @@ end
function PlayerInfo.prototype:ShowBlizz() function PlayerInfo.prototype:ShowBlizz()
BuffFrame:Show() BuffFrame:Show()
if DebuffFrame then
DebuffFrame:Show()
DebuffFrame:GetScript("OnLoad")(DebuffFrame)
if DebuffFrame.Update then
DebuffFrame:Update()
end
end
if TemporaryEnchantFrame then if TemporaryEnchantFrame then
TemporaryEnchantFrame:Show() TemporaryEnchantFrame:Show()
end end
BuffFrame:GetScript("OnLoad")(BuffFrame) BuffFrame:GetScript("OnLoad")(BuffFrame)
if BuffFrame.Update then
BuffFrame:Update()
end
end end
function PlayerInfo.prototype:HideBlizz() function PlayerInfo.prototype:HideBlizz()
BuffFrame:Hide() BuffFrame:Hide()
if DebuffFrame then
DebuffFrame:Hide()
DebuffFrame:UnregisterAllEvents()
end
if TemporaryEnchantFrame then if TemporaryEnchantFrame then
TemporaryEnchantFrame:Hide() TemporaryEnchantFrame:Hide()
end end

View File

@ -72,10 +72,20 @@ local IncapacitateCCList = {
19503, 19503,
-- Sleep -- Sleep
700, 700,
-- Polymorph -- Polymorph (rank 1)
118, 118,
-- Also Polymorph
65801,
-- Polymorph rank 2
12824,
-- Polymorph rank 3
12825,
-- Polymorph rank 4
12826,
-- Polymorph: Pig -- Polymorph: Pig
28272, 28272,
-- Also Polymorph: Pig
28285,
-- Polymorph: Turtle -- Polymorph: Turtle
28271, 28271,
-- Polymorph: Penguin -- Polymorph: Penguin

View File

@ -89,11 +89,11 @@ function Totems.prototype:GetOptions()
end, end,
order = 31 order = 31
} }
--[[
opts["hideBlizz"] = { opts["hideBlizz"] = {
type = "toggle", type = "toggle",
name = L["Hide Blizzard Frame"], 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() get = function()
return self.moduleSettings.hideBlizz return self.moduleSettings.hideBlizz
end, end,
@ -110,7 +110,7 @@ function Totems.prototype:GetOptions()
end, end,
order = 32 order = 32
} }
--]]
opts["displayMode"] = { opts["displayMode"] = {
type = 'select', type = 'select',
name = L["Totem orientation"], name = L["Totem orientation"],
@ -193,7 +193,7 @@ function Totems.prototype:GetDefaultSettings()
defaults["totemFontSize"] = 20 defaults["totemFontSize"] = 20
defaults["totemMode"] = "Graphical" defaults["totemMode"] = "Graphical"
defaults["usesDogTagStrings"] = false defaults["usesDogTagStrings"] = false
defaults["hideBlizz"] = true defaults["hideBlizz"] = IceHUD.CanHookDestroyTotem
defaults["alwaysFullAlpha"] = false defaults["alwaysFullAlpha"] = false
defaults["displayMode"] = "Horizontal" defaults["displayMode"] = "Horizontal"
defaults["cooldownMode"] = "Cooldown" defaults["cooldownMode"] = "Cooldown"

View File

@ -1,5 +1,33 @@
# Changelog # Changelog
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: 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. - 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.