Files
pfUI/skins/blizzard/readycheck.lua
T
Meow 34f5c3eb02 Version 6.1.0 - Raid/Party Frame Fixes
Bugfixes:
- Fixed 40-yard range check not working for raid/party frames
- Fixed aggro indicator not displaying properly on raid/party frames
- Improved aggro cache to only cache positive results for instant detection
- Fixed HP/Mana not updating with "Use Raid Frames for group" enabled
- Added SuperWoW nil-check for SpellInfo
- Added missing events: PARTY_MEMBER_ENABLE, PARTY_MEMBER_DISABLE, PLAYER_UPDATE_RESTING

UI Improvements:
- Share/Hoverbind buttons now show warning when module is disabled
2026-01-08 12:25:18 +01:00

56 lines
1.9 KiB
Lua

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)