diff --git a/Frame.lua b/Frame.lua index 1d987ae..cd854eb 100644 --- a/Frame.lua +++ b/Frame.lua @@ -26,6 +26,8 @@ Gladdy.BUTTON_DEFAULTS = { damaged = 0, click = false, stealthed = false, + classColors = {}, + lastState = 0, } function Gladdy:CreateFrame() @@ -272,7 +274,6 @@ end function Gladdy:ToggleFrame(i) self:Reset() - if (self.frame and self.frame:IsShown() and i == self.curBracket) then self:HideFrame() else @@ -288,6 +289,8 @@ function Gladdy:ToggleFrame(i) self:CreateButton(o) end end + self:Reset() + self.curBracket = i self:UpdateFrame() self:Test() self.frame:Show() diff --git a/Gladdy.lua b/Gladdy.lua index bcec6c3..b58fb0c 100644 --- a/Gladdy.lua +++ b/Gladdy.lua @@ -289,7 +289,7 @@ end --------------------------- function Gladdy:Test() - Gladdy.frame.testing = true + self.frame.testing = true for i = 1, self.curBracket do local unit = "arena" .. i if (not self.buttons[unit]) then @@ -388,7 +388,7 @@ function Gladdy:ResetButton(unit) button[k1] = nil elseif (type(v1) == "number") then button[k1] = 0 - elseif (type(v1) == "array") then + elseif (type(v1) == "table") then button[k1] = {} elseif (type(v1) == "boolean") then button[k1] = false diff --git a/Modules/RangeCheck.lua b/Modules/RangeCheck.lua index c242273..e1f6f9e 100644 --- a/Modules/RangeCheck.lua +++ b/Modules/RangeCheck.lua @@ -64,8 +64,8 @@ end function RangeCheck:ResetUnit(unit) local button = Gladdy.buttons[unit] self:CancelTimer(button) - button.lastState = 0 self:SetColor(button, 1) + button.classColors = {} end function RangeCheck:Test(unit) @@ -99,7 +99,7 @@ function RangeCheck:SetColor(button, oorFac) return end - if not button.classColors then + if not button.classColors.r then if button.class then button.classColors = { r = RAID_CLASS_COLORS[button.class].r, g = RAID_CLASS_COLORS[button.class].g, b = RAID_CLASS_COLORS[button.class].b } else