From fdbf6715dc68b8d44c143886570b0c1b7d143d47 Mon Sep 17 00:00:00 2001 From: shagu Date: Mon, 17 Feb 2020 18:37:26 +0100 Subject: [PATCH] focus: enable native focus units for tbc --- env/tables.lua | 1 + modules/castbar.lua | 7 ++++++- modules/focus.lua | 24 +++++++++++++----------- 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/env/tables.lua b/env/tables.lua index 137cf0a9..27cb4478 100644 --- a/env/tables.lua +++ b/env/tables.lua @@ -57,6 +57,7 @@ pfValidUnits["playertarget"] = true pfValidUnits["targettarget"] = true pfValidUnits["mouseovertarget"] = true pfValidUnits["targettargettarget"] = true +pfValidUnits["focus"] = pfUI.client > 11200 or nil for i=1,4 do pfValidUnits["party" .. i] = true end for i=1,4 do pfValidUnits["partypet" .. i] = true end diff --git a/modules/castbar.lua b/modules/castbar.lua index e6aec7a2..cce3e85e 100644 --- a/modules/castbar.lua +++ b/modules/castbar.lua @@ -237,11 +237,16 @@ pfUI:RegisterModule("castbar", "vanilla:tbc", function () -- [[ pfFocusCastbar ]] -- if C.castbar.focus.hide_pfui == "0" and pfUI.uf.focus then - pfUI.castbar.focus = CreateCastbar("pfFocusCastbar", UIParent) + pfUI.castbar.focus = CreateCastbar("pfFocusCastbar", UIParent, "focus") pfUI.castbar.focus.showicon = C.castbar.focus.showicon == "1" and true or nil pfUI.castbar.focus.showlag = C.castbar.focus.showlag == "1" and true or nil pfUI.castbar.focus.showrank = C.castbar.focus.showrank == "1" and true or nil + -- reset unitstr for vanilla focus frame emulation + if pfUI.client <= 11200 then + pfUI.castbar.focus.unitstr = nil + end + local pspace = tonumber(C.unitframes.focus.pspace) local width = C.castbar.focus.width ~= "-1" and C.castbar.focus.width or pfUI.uf.focus:GetWidth() pfUI.castbar.focus:SetPoint("TOPLEFT", pfUI.uf.focus, "BOTTOMLEFT", 0, -default_border * 2 - pspace) diff --git a/modules/focus.lua b/modules/focus.lua index 54182d18..984ea21e 100644 --- a/modules/focus.lua +++ b/modules/focus.lua @@ -1,3 +1,16 @@ +pfUI:RegisterModule("focus", "vanilla:tbc", function () + -- do not go further on disabled UFs + if C.unitframes.disable == "1" then return end + + pfUI.uf.focus = pfUI.uf:CreateUnitFrame("Focus", nil, C.unitframes.focus, .2) + pfUI.uf.focus:UpdateFrameSize() + pfUI.uf.focus:SetPoint("BOTTOMLEFT", UIParent, "BOTTOM", 220, 220) + UpdateMovable(pfUI.uf.focus) + pfUI.uf.focus:Hide() +end) + +-- register focus emulation commands for vanilla +if pfUI.client > 11200 then return end SLASH_PFFOCUS1, SLASH_PFFOCUS2 = '/focus', '/pffocus' function SlashCmdList.PFFOCUS(msg) if not pfUI.uf or not pfUI.uf.focus then return end @@ -75,14 +88,3 @@ function SlashCmdList.PFSWAPFOCUS(msg) pfUI.uf.focus.unitname = oldunit end end - -pfUI:RegisterModule("focus", "vanilla", function () - -- do not go further on disabled UFs - if C.unitframes.disable == "1" then return end - - pfUI.uf.focus = pfUI.uf:CreateUnitFrame("Focus", nil, C.unitframes.focus, .2) - pfUI.uf.focus:UpdateFrameSize() - pfUI.uf.focus:SetPoint("BOTTOMLEFT", UIParent, "BOTTOM", 220, 220) - UpdateMovable(pfUI.uf.focus) - pfUI.uf.focus:Hide() -end)