From bf89d64c9cb01065095b457b1b7b536c38982404 Mon Sep 17 00:00:00 2001 From: Christopher Rosell Date: Thu, 22 Mar 2012 13:57:55 +0100 Subject: [PATCH] Fix bug that reset enable state when zoning. --- kungaloosh.lua | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/kungaloosh.lua b/kungaloosh.lua index 983a08e..0a255ea 100755 --- a/kungaloosh.lua +++ b/kungaloosh.lua @@ -12,13 +12,17 @@ function addon:OnEnable() minthreat = 5000, dynamic_minthreat = true, enabled_in = { dungeon = true, raid = false }, - raid_icons = { 8, 7, 1, 2 }, icon_recycle = true, icon_recycle_time = 50 } } self.db = LibStub("AceDB-3.0"):New("KungalooshDB", defaults, true) + -- Work around weird AceDB behaviour.. + if not self.db.profile.raid_icons then + self.db.profile.raid_icons = { 8, 7, 1, 2 } + end + self:CreateConfig() self:UnregisterEvent"ADDON_LOADED" @@ -162,7 +166,7 @@ function addon:GetMinThreat() end function addon:EnableIfTank() - if self.enabled then return end + if self.force_enabled then return end local istank = (UnitGroupRolesAssigned("player") == "TANK") or (GetPartyAssignment("MAINTANK", "player") == 1) @@ -192,6 +196,7 @@ function addon:Enable(msg) self:RegisterEvent"UNIT_THREAT_LIST_UPDATE" self:RegisterEvent"RAID_TARGET_UPDATE" self:RegisterEvent"COMBAT_LOG_EVENT_UNFILTERED" + self.enabled = true self:ResetState() @@ -205,6 +210,7 @@ function addon:Disable(msg) self:UnregisterEvent"UNIT_THREAT_LIST_UPDATE" self:UnregisterEvent"RAID_TARGET_UPDATE" self:UnregisterEvent"COMBAT_LOG_EVENT_UNFILTERED" + self.enabled = false if msg then self:Print(msg) end end @@ -212,10 +218,10 @@ end function addon:Toggle() if not self.enabled then self:Enable(L["is now enabled"]) - self.enabled = true + self.force_enabled = true else self:Disable(L["is now disabled"]) - self.enabled = false + self.force_enabled = false end end -- 1.7.9.5