pfUI:RegisterSkin("Readycheck", "vanilla:tbc", function () HookAddonOrVariable("Blizzard_RaidUI", function() -- Compatibility local update_func if ReadyCheckFrame_OnUpdate then -- tbc update_func = "ReadyCheckFrame_OnUpdate" else -- vanilla update_func = "ReadyCheck_OnUpdate" end StripTextures(ReadyCheckFrame, true) CreateBackdrop(ReadyCheckFrame, nil, nil, .75) CreateBackdropShadow(ReadyCheckFrame) SkinButton(ReadyCheckFrameYesButton) ReadyCheckFrameYesButton:ClearAllPoints() ReadyCheckFrameYesButton:SetPoint("RIGHT", ReadyCheckFrame, "BOTTOM", -8, 24) SkinButton(ReadyCheckFrameNoButton) ReadyCheckFrameNoButton:ClearAllPoints() ReadyCheckFrameNoButton:SetPoint("LEFT", ReadyCheckFrame, "BOTTOM", 8, 24) ReadyCheckFrameText:ClearAllPoints() ReadyCheckFrameText:SetPoint("TOP", ReadyCheckFrame, "TOP", 0, -12) local frame = CreateFrame("Button", nil, ReadyCheckFrame) frame:SetPoint("TOP", ReadyCheckFrameText, "BOTTOM", 0, -6) frame:SetWidth(220) frame:SetHeight(10) frame.bar = CreateFrame("StatusBar", "ReadyCheckFrameStatusBar", ReadyCheckFrame) frame.bar:SetStatusBarTexture(pfUI.media["img:bar"]) frame.bar:SetAllPoints(frame) frame.bar.text = frame.bar:CreateFontString("Status", "DIALOG", "GameFontNormal") frame.bar.text:SetFontObject(GameFontWhite) frame.bar.text:SetFont(pfUI.font_default, 12, "OUTLINE") frame.bar.text:SetPoint("CENTER", 0, 0) local max hooksecurefunc("ShowReadyCheck", function() max = ReadyCheckFrame.timer frame.bar:SetMinMaxValues(0, max) end) hooksecurefunc(update_func, function() if not ReadyCheckFrame.timer then return end local perc = ReadyCheckFrame.timer/max frame.bar:SetStatusBarColor(GetColorGradient(perc)) frame.bar:SetValue(ReadyCheckFrame.timer) frame.bar.text:SetText(round(ReadyCheckFrame.timer, 2)) end) end) end)