local GetActionInfo, GetActionTexture = GetActionInfo, GetActionTexture;
local GetActionLossOfControlCooldown = GetActionLossOfControlCooldown;
local GetActionCooldown, GetActionCharges = GetActionCooldown, GetActionCharges;
+local GetActionText, GetBindingKey = GetActionText, GetBindingKey;
local IsConsumableAction, IsStackableAction = IsConsumableAction, IsStackableAction;
local IsItemAction, GetActionCount = IsItemAction, GetActionCount;
local IsSpellOverlayed, GetMacroSpell = IsSpellOverlayed, GetMacroSpell;
local CreateFrame = CreateFrame;
local RegisterStateDriver = RegisterStateDriver;
local CooldownFrame_Set, CooldownFrame_Clear = CooldownFrame_Set, CooldownFrame_Clear;
-local CTimerAfter = C_Timer.After;
local GameTooltip = GameTooltip;
local GameTooltip_SetDefaultAnchor = GameTooltip_SetDefaultAnchor;
local COOLDOWN_TYPE_LOSS_OF_CONTROL = COOLDOWN_TYPE_LOSS_OF_CONTROL;
bar = 5,
start = 49,
length = 12,
- columns = 3,
x = 1000,
y = 840,
},
};
local chars = {
+ ["Sylvanas"] = {
+ ["Vildana"] = {1, 2, 3, 4,},
+ },
["Stormreaver"] = {
["Vildan"] = {1, 2, 3, 4,},
["Gedren"] = {1, 2, 3, 4,},
["Gazden"] = {1, 2, 3, 4,},
+ ["Gedran"] = {1, 2, 3, 4,},
+ ["Iled"] = {1, 2, 3, 4,},
+ ["Gilden"] = {1, 2, 3, 4,},
},
};
end
local function updateGlow(button, slot)
- local stype, id, _ = GetActionInfo(slot);
+ local stype, id = GetActionInfo(slot);
if stype == "spell" and IsSpellOverlayed(id) then
button.glow:Show();
elseif stype == "macro" then
- local _, _, macroid = GetMacroSpell(id);
+ local macroid = GetMacroSpell(id);
if macroid and IsSpellOverlayed(macroid) then
button.glow:Show();
else
end
local function startGlow(button, slot, spell)
- local stype, id, _ = GetActionInfo(slot);
+ local stype, id = GetActionInfo(slot);
if stype == "spell" and id == spell then
button.glow:Show();
elseif stype == "macro" then
- local _, _, macroid = GetMacroSpell(id);
+ local macroid = GetMacroSpell(id);
if macroid and macroid == spell then
button.glow:Show();
end
end
local function stopGlow(button, slot, spell)
- local stype, id, _ = GetActionInfo(slot);
+ local stype, id = GetActionInfo(slot);
if stype == "spell" and id == spell then
button.glow:Hide();
elseif stype == "macro" then
- local _, _, macroid = GetMacroSpell(id);
+ local macroid = GetMacroSpell(id);
if macroid and macroid == spell then
button.glow:Hide();
end
secure:SetAttribute("flyoutDirection", config.flyout);
end
function secure:ActionChanged(oldslot)
- if oldslot then activeButtons[oldslot] = nil end
+ if oldslot then
+ activeButtons[oldslot] = nil;
+ self.prev = nil; -- invalidate previous CD when slot changes
+ end
self.slot = self:GetAttribute("action");
return updateButton(self, self.slot);
end
end
local function setupBindings()
- BINDING_HEADER_OmaAB = "Oma Action Bar";
+ _G["BINDING_HEADER_OmaAB"] = "Oma Action Bar";
for i = 1,10 do
_G["BINDING_HEADER_OMAABBLANK"..i] = "Bar "..i;
for j = 1,12 do
end
end,
["PLAYER_LOGIN"] = function()
- GameTooltip = _G["GameTooltip"];
initialize();
end,
["ADDON_LOADED"] = function(addon)
end,
};
events["LOSS_OF_CONTROL_ADDED"] = events["ACTIONBAR_UPDATE_COOLDOWN"];
-events["LOSS_OF_CONTROL_UPDATE"] = events["ACTIONBAR_UPDATE_COOLDOWN"]; -- TODO might change once tooltips are in
+events["LOSS_OF_CONTROL_UPDATE"] = events["ACTIONBAR_UPDATE_COOLDOWN"];
events["PLAYER_MOUNT_DISPLAY_CHANGED"] = events["ACTIONBAR_UPDATE_USABLE"];
events["TRADE_SKILL_SHOW"] = events["ACTIONBAR_UPDATE_STATE"];
events["TRADE_SKILL_CLOSE"] = events["ACTIONBAR_UPDATE_STATE"];