You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
101 lines
2.2 KiB
101 lines
2.2 KiB
local sIsChecking = false;
|
|
local _;
|
|
|
|
|
|
|
|
--
|
|
local function VUHDO_placeReadyIcon(aButton)
|
|
local tInfo = VUHDO_RAID[aButton:GetAttribute("unit")];
|
|
local tIcon = VUHDO_getBarRoleIcon(aButton, 20);
|
|
|
|
if not tInfo or tInfo["isPet"] then
|
|
tIcon:Hide();
|
|
else
|
|
VUHDO_UIFrameFlashStop(tIcon);
|
|
tIcon:SetTexture("Interface\\AddOns\\VuhDo\\Images\\icon_info");
|
|
tIcon:ClearAllPoints();
|
|
tIcon:SetPoint("LEFT", aButton:GetName(), "LEFT", -5, 0);
|
|
tIcon:SetWidth(16);
|
|
tIcon:SetHeight(16);
|
|
tIcon:SetAlpha(1);
|
|
tIcon:Show();
|
|
end
|
|
end
|
|
|
|
|
|
|
|
--
|
|
local function VUHDO_placeAllReadyIcons()
|
|
|
|
for tPanelNum = 1, VUHDO_MAX_PANELS do
|
|
for _, tButton in pairs(VUHDO_getPanelButtons(tPanelNum)) do
|
|
if tButton:GetAttribute("unit") then VUHDO_placeReadyIcon(tButton);
|
|
else break; end
|
|
end
|
|
end
|
|
end
|
|
|
|
|
|
|
|
--
|
|
local function VUHDO_hideAllReadyIcons()
|
|
local tAllButtons;
|
|
|
|
for tPanelNum = 1, VUHDO_MAX_PANELS do
|
|
for _, tButton in pairs(VUHDO_getPanelButtons(tPanelNum)) do
|
|
if tButton:GetAttribute("unit") then
|
|
VUHDO_UIFrameFlash(VUHDO_getBarRoleIcon(tButton, 20), 0, 2, 10, false, 0, 8);
|
|
else break; end
|
|
end
|
|
end
|
|
end
|
|
|
|
|
|
|
|
--
|
|
function VUHDO_readyCheckStarted()
|
|
sIsChecking = true;
|
|
VUHDO_hideAllPlayerIcons();
|
|
VUHDO_placeAllReadyIcons();
|
|
end
|
|
|
|
|
|
|
|
-- Status true = ready, nil = not ready
|
|
local function VUHDO_updateReadyIcon(aUnit, anIsReady)
|
|
for _, tButton in pairs(VUHDO_getUnitButtonsSafe(aUnit)) do
|
|
VUHDO_getBarRoleIcon(tButton, 20):SetTexture(
|
|
"Interface\\AddOns\\VuhDo\\Images\\" .. (anIsReady and "icon_check_2" or "icon_cancel_1"));
|
|
end
|
|
end
|
|
|
|
|
|
|
|
--
|
|
function VUHDO_readyCheckConfirm(aUnit, anIsReady)
|
|
if not VUHDO_RAID[aUnit] then return;
|
|
elseif not sIsChecking then VUHDO_readyCheckStarted(); end
|
|
|
|
VUHDO_updateReadyIcon(aUnit, anIsReady);
|
|
end
|
|
|
|
|
|
|
|
--
|
|
function VUHDO_readyStartCheck(aName, aDuration)
|
|
if VUHDO_RAID_NAMES[aName] then
|
|
VUHDO_readyCheckConfirm(VUHDO_RAID_NAMES[aName], true); -- Originator is always ready
|
|
end
|
|
end
|
|
|
|
|
|
|
|
--
|
|
function VUHDO_readyCheckEnds()
|
|
if sIsChecking then -- Client send READY_CHECK_ENDS on startup
|
|
VUHDO_hideAllReadyIcons();
|
|
VUHDO_initAllEventBouquets();
|
|
sIsChecking = false;
|
|
end
|
|
end
|
|
|
|
|