cooldown: color configuration and caching

This commit is contained in:
shagu
2017-06-03 14:14:41 +02:00
parent 733be72b21
commit c4d5c1902f
3 changed files with 19 additions and 9 deletions
+3 -2
View File
@@ -48,8 +48,9 @@ function pfUI:LoadConfig()
pfUI:UpdateConfig("appearance", "border", "panels", "-1")
pfUI:UpdateConfig("appearance", "border", "chat", "-1")
pfUI:UpdateConfig("appearance", "border", "bags", "-1")
pfUI:UpdateConfig("appearance", "cd", "seccolor", "1,.2,.2,1")
pfUI:UpdateConfig("appearance", "cd", "mincolor", ".2,1,1,1")
pfUI:UpdateConfig("appearance", "cd", "lowcolor", "1,.2,.2,1")
pfUI:UpdateConfig("appearance", "cd", "normalcolor", "1,1,1,1")
pfUI:UpdateConfig("appearance", "cd", "minutecolor", ".2,1,1,1")
pfUI:UpdateConfig("appearance", "cd", "hourcolor", ".2,.5,1,1")
pfUI:UpdateConfig("appearance", "cd", "daycolor", ".2,.2,1,1")
pfUI:UpdateConfig("appearance", "cd", "threshold", "2")
+13 -5
View File
@@ -1,4 +1,12 @@
pfUI:RegisterModule("cooldown", function ()
-- cache values
local lowcolor = {strsplit(",", C.appearance.cd.lowcolor)}
local normalcolor = {strsplit(",", C.appearance.cd.normalcolor)}
local minutecolor = {strsplit(",", C.appearance.cd.minutecolor)}
local hourcolor = {strsplit(",", C.appearance.cd.hourcolor)}
local daycolor = {strsplit(",", C.appearance.cd.daycolor)}
local function pfCreateCoolDown(cooldown, start, duration)
cooldown.cd = CreateFrame("Frame", "pfCooldownFrame", cooldown:GetParent())
cooldown.cd:SetAllPoints(cooldown:GetParent())
@@ -28,25 +36,25 @@ pfUI:RegisterModule("cooldown", function ()
local remaining = this.duration - (GetTime() - this.start)
if remaining >= 0 then
local r, g, b, a = 1, 1, 1, 1
local r, g, b, a = unpack(normalcolor)
local unit = ""
if remaining <= 3 then
r,g,b,a = strsplit(",", C.appearance.cd.seccolor)
r,g,b,a = unpack(lowcolor)
end
if remaining > 99 then
remaining = remaining / 60
unit = "m"
r,g,b,a = strsplit(",", C.appearance.cd.mincolor)
r,g,b,a = unpack(minutecolor)
end
if remaining > 99 then
remaining = remaining / 60
unit = "h"
r,g,b,a = strsplit(",", C.appearance.cd.hourcolor)
r,g,b,a = unpack(hourcolor)
end
if remaining > 99 then
remaining = remaining / 24
unit = "d"
r,g,b,a = strsplit(",", C.appearance.cd.daycolor)
r,g,b,a = unpack(daycolor)
end
this.text:SetText(round(remaining) .. unit)
this.text:SetTextColor(r,g,b,a)
+3 -2
View File
@@ -855,8 +855,9 @@ pfUI:RegisterModule("gui", function ()
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Bags Border Size", C.appearance.border, "bags")
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Cooldown", nil, nil, "header")
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Cooldown Color (3 Sec)", C.appearance.cd, "seccolor", "color")
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Cooldown Color (Minutes)", C.appearance.cd, "mincolor", "color")
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Cooldown Color (Less than 3 Sec)", C.appearance.cd, "lowcolor", "color")
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Cooldown Color (Seconds)", C.appearance.cd, "normalcolor", "color")
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Cooldown Color (Minutes)", C.appearance.cd, "minutecolor", "color")
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Cooldown Color (Hours)", C.appearance.cd, "hourcolor", "color")
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Cooldown Color (Days)", C.appearance.cd, "daycolor", "color")
pfUI.gui:CreateConfig(pfUI.gui.appearance, "Cooldown Text Threshold", C.appearance.cd, "threshold")