Compare commits

...

9 Commits

Author SHA1 Message Date
fcf156e048 Updated shard texture for Warlocks 2017-08-30 23:10:22 -05:00
aa559113eb Updated shard display for Destro Warlocks
Ticket #234, thanks stencil!
2017-06-17 20:38:12 -05:00
5fe8776249 Updated changelog 2017-06-14 16:56:29 -05:00
08e8d3a087 Updated GetLFGProposal return values 2017-06-14 10:18:02 -05:00
2eae8fa419 Updated TOC to 7.2 2017-03-28 14:28:00 -05:00
94850e53dd Fixed error in 7.2 where a cvar has been removed 2017-03-25 14:03:47 -05:00
a739b7ba99 Set stagger max to 100 by request 2017-01-11 16:04:41 -06:00
176603ec51 Updated changelog 2016-12-24 01:04:57 -06:00
0cdfde1758 Fixed Holy Word: Serenity not being trackable in CD modules
Pre-7.0 the Holy Word spells did not work with GetSpellCooldown. They do now.
2016-12-24 01:04:09 -06:00
11 changed files with 77 additions and 35 deletions

View File

@ -1,4 +1,4 @@
## Interface: 70100
## Interface: 70200
## Author: Parnic, originally created by Iceroth
## Name: IceHUD
## Title: IceHUD |cff7fff7f-Ace3-|r
@ -6,7 +6,7 @@
## Version: @project-version@
## 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
## X-Compatible-With: 70000
## X-Compatible-With: 70100
## X-Category: HUDs
## X-Website: https://www.wowace.com/projects/ice-hud
## X-WoWI-ID: 8149

View File

@ -1,4 +1,4 @@
## Interface: 70100
## Interface: 70200
## Title: IceHUD |cff7fff7f-Options-|r
## Author: Parnic
## Version: @project-version@

View File

@ -1,3 +1,14 @@
v1.10.15.1:
- Fixed an error in IceHUD's usage of GetLFGProposal()'s return values exposed by the 7.2.5 Chromie quests
v1.10.15:
- Fixed error on 7.2 due to a CVar being removed
- Updated TOC for 7.2
v1.10.14:
- Fixed Holy Word: Serenity not being trackable in the Custom Cooldown module (ticket #232).
- Updated Stagger bar to allow the user to set the max to 100% if desired.
v1.10.13.1:
- Fixed "0" showing up for some users after 1.10.13 by adding a "show when zero" checkbox to custom counters (disabled by default). Anyone who has used IceHUD for a very long time has automatically-converted custom counter modules that replaced the old "maelstrom", "lacerate", and "sunder" modules that used to exist, each of which exhibited the behavior after the last update.

View File

@ -358,7 +358,10 @@ end
function CastBar.prototype:CVarUpdate(...)
self.useFixedLatency = self.moduleSettings.respectLagTolerance and GetCVar("reducedLagTolerance") == "1"
self.fixedLatency = tonumber(GetCVar("maxSpellStartRecoveryoffset")) / 1000
local recoveryOffset = GetCVar("maxSpellStartRecoveryoffset")
if recoveryOffset ~= nil then
self.fixedLatency = tonumber(recoveryOffset) / 1000
end
end
function CastBar.prototype:Disable(core)

View File

@ -18,7 +18,7 @@ IceClassPowerCounter.prototype.requiredSpec = nil
IceClassPowerCounter.prototype.shouldShowUnmodified = false
IceClassPowerCounter.prototype.unmodifiedMaxPerRune = 10
IceClassPowerCounter.prototype.unit = "player"
IceClassPowerCounter.prototype.round = ceil
IceClassPowerCounter.prototype.growModes = { width = 1, height = 2 }
IceClassPowerCounter.prototype.currentGrowMode = nil
@ -501,13 +501,17 @@ function IceClassPowerCounter.prototype:UpdateRunePower(event, arg1, arg2)
local percentReady = self.shouldShowUnmodified and (UnitPower("player", self.unitPower, true) / self.unmodifiedMaxPerRune) or numReady
if self:GetRuneMode() == "Numeric" or self.moduleSettings.alsoShowNumeric then
if self.numericFormat then
self.frame.numeric:SetText(format(self.numericFormat, percentReady))
else
self.frame.numeric:SetText(tostring(percentReady))
end
self.frame.numeric:SetTextColor(self:GetColor(self.numericColor))
end
if self:GetRuneMode() ~= "Numeric" then
for i=1, self.numRunes do
if i <= ceil(percentReady) then
if i <= self.round(percentReady) then
if self:GetRuneMode() == "Graphical" then
self.frame.graphical[i].rune:SetVertexColor(1, 1, 1)
else

View File

@ -21,11 +21,6 @@ IceCustomCDBar.prototype.cooldownDuration = 0
IceCustomCDBar.prototype.cooldownEndTime = 0
IceCustomCDBar.prototype.coolingDown = false
-- super temp...remove this when blizzard fixes these spells to work by name with GetSpellCooldown()
local brokenSpellsNameToId = {}
table.insert(brokenSpellsNameToId, {"Holy Word: Serenity",88684})
table.insert(brokenSpellsNameToId, {"Holy Word: Sanctuary",88685})
-- Constructor --
function IceCustomCDBar.prototype:init()
IceCustomCDBar.super.prototype.init(self, "MyCustomCDBar")
@ -821,14 +816,6 @@ function IceCustomCDBar.prototype:IsReady()
end
function IceCustomCDBar.prototype:GetSpellNameOrId(spellName)
-- super temp hax. certain spells (the new 'morphing' spells) do not work by name with GetSpellCooldown(), only id.
for i=1,#brokenSpellsNameToId do
if spellName == brokenSpellsNameToId[i][1] then
spellName = brokenSpellsNameToId[i][2]
break
end
end
return spellName
end

View File

@ -45,7 +45,10 @@ end
function GlobalCoolDown.prototype:CVarUpdate()
self.useFixedLatency = self.moduleSettings.respectLagTolerance and GetCVar("reducedLagTolerance") == "1"
self.fixedLatency = tonumber(GetCVar("maxSpellStartRecoveryoffset")) / 1000.0
local recoveryOffset = GetCVar("maxSpellStartRecoveryoffset")
if recoveryOffset ~= nil then
self.fixedLatency = tonumber(recoveryOffset) / 1000.0
end
end
-- OVERRIDE

View File

@ -1078,9 +1078,9 @@ function PlayerHealth.prototype:CheckPartyRole()
if configMode or IceHUD:GetIsInLFGGroup() then
if (configMode or self.moduleSettings.showPartyRoleIcon) and not self.frame.PartyRoleIcon then
local isTank, isHeal, isDPS
local proposalExists, typeID, id, name
local proposalExists, typeID, id, subtypeID, name
local texture, role, hasResponded, totalEncounters, completedEncounters, numMembers, isleader
proposalExists, typeID, id, name, texture, role, hasResponded, totalEncounters, completedEncounters, numMembers, isleader = GetLFGProposal()
proposalExists, id, typeID, subtypeID, name, texture, role, hasResponded, totalEncounters, completedEncounters, numMembers, isleader = GetLFGProposal()
local p = self.unit
if IceHUD.WowVer < 40000 then
@ -1096,7 +1096,7 @@ function PlayerHealth.prototype:CheckPartyRole()
IceHUD:Debug( tostring(proposalExists) .."**".. tostring(typeID) .."**".. tostring(id) .."**".. tostring(name) .."**".. tostring(texture) .."**".. tostring(role) .."**".. tostring(hasResponded) .."**".. tostring(totalEncounters) .."**".. tostring(completedEncounters) .."**".. tostring(numMembers) .."**".. tostring(isleader) )
if proposalExists == true then
IceHUD:Debug(tostring(typeID).." "..role)
IceHUD:Debug(tostring(typeID).." "..(role or ""))
isTank = (role == "TANK")
isHeal = (role == "HEALER")
isDPS = (role == "DAMAGER")

View File

@ -3,7 +3,9 @@ local ShardCounter = IceCore_CreateClass(IceClassPowerCounter)
local CurrentSpec = nil
local AfflictionCoords =
local AfflictionCoords
if IceHUD.WowVer < 70200 then
AfflictionCoords =
{
{0.01562500, 0.28125000, 0.00781250, 0.13281250},
{0.01562500, 0.28125000, 0.00781250, 0.13281250},
@ -11,6 +13,16 @@ local AfflictionCoords =
{0.01562500, 0.28125000, 0.00781250, 0.13281250},
{0.01562500, 0.28125000, 0.00781250, 0.13281250},
}
else
AfflictionCoords =
{
{0, 1, 0, 1},
{0, 1, 0, 1},
{0, 1, 0, 1},
{0, 1, 0, 1},
{0, 1, 0, 1},
}
end
local DestructionCoords =
{
@ -36,6 +48,10 @@ function ShardCounter.prototype:init()
if IceHUD.WowVer >= 70000 then
self.runeHeight = 23
self.runeWidth = 26
if IceHUD.WowVer >= 70200 then
self.runeHeight = 27
self.runeWidth = 22
end
self.runeCoords = AfflictionCoords
self.unitPower = SPELL_POWER_SOUL_SHARDS
self.unit = "player"
@ -45,6 +61,16 @@ end
function ShardCounter.prototype:Enable(core)
if IceHUD.WowVer >= 70000 then
self.numRunes = UnitPowerMax(self.unit, self.unitPower)
if GetSpecialization() == SPEC_WARLOCK_DESTRUCTION then
self.shouldShowUnmodified = true
self.numericFormat = "%.1f"
self.round = floor
else
self.shouldShowUnmodified = nil
self.numericFormat = nil
self.round = nil
end
end
ShardCounter.super.prototype.Enable(self, core)
@ -205,6 +231,10 @@ function ShardCounter.prototype:GetDefaultSettings()
end
function ShardCounter.prototype:GetRuneTexture(rune)
if IceHUD.WowVer >= 70200 then
return nil
end
if not rune or rune ~= tonumber(rune) then
return
end
@ -222,6 +252,10 @@ function ShardCounter.prototype:GetRuneTexture(rune)
return "Interface\\PlayerFrame\\UI-WarlockShard"
end
function ShardCounter.prototype:GetRuneAtlas(rune)
return "Warlock-ReadyShard"
end
function ShardCounter.prototype:ShowBlizz()
WarlockPowerFrame:Show()

View File

@ -71,7 +71,7 @@ function StaggerBar.prototype:GetOptions()
name = "Max Percent",
desc = "Maximum percentage of your maximum health for the Stagger bar to represent. I.e, if set to 20%, the bar will be full when the Stagger damage over time effect is dealing 20% of your maximum health per second.",
min = 0,
max = 50,
max = 100,
step = 1,
get = function()
return self.moduleSettings.maxPercent

View File

@ -1074,9 +1074,9 @@ function IceTargetHealth.prototype:CheckPartyRole()
if self.configMode or IceHUD:GetIsInLFGGroup() then
if self.configMode or self.moduleSettings.showPartyRoleIcon then
local isTank, isHeal, isDPS
local proposalExists, typeID, id, name
local proposalExists, typeID, id, subtypeID, name
local texture, role, hasResponded, totalEncounters, completedEncounters, numMembers, isleader
proposalExists, typeID, id, name, texture, role, hasResponded, totalEncounters, completedEncounters, numMembers, isleader = GetLFGProposal()
proposalExists, id, typeID, subtypeID, name, texture, role, hasResponded, totalEncounters, completedEncounters, numMembers, isleader = GetLFGProposal()
local p = self.unit
if IceHUD.WowVer < 40000 then