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.
38 lines
1.0 KiB
38 lines
1.0 KiB
local _, _, _, tocversion = GetBuildInfo();
|
|
tocversion = tonumber(tocversion);
|
|
|
|
if tocversion < 90000 then
|
|
return
|
|
end
|
|
|
|
local EventToAddOn = {};
|
|
|
|
local Modules = {
|
|
{name = "Narcissus_Barbershop", triggerEvent = "BARBER_SHOP_OPEN", triggerName = "Blizzard_BarbershopUI"},
|
|
}
|
|
|
|
local Manager = CreateFrame("Frame", "NarciModuleManager");
|
|
|
|
Manager:SetScript("OnEvent", function(self, event, ...)
|
|
if EventToAddOn[event] then
|
|
for i = 1, #EventToAddOn[event] do
|
|
local name = EventToAddOn[event][i];
|
|
--EnableAddOn(name); --Forced Enable
|
|
local loaded, reason = LoadAddOn(name);
|
|
if loaded then
|
|
self:UnregisterEvent(event);
|
|
end
|
|
end
|
|
end
|
|
end);
|
|
|
|
for i = 1, #Modules do
|
|
local event = Modules[i].triggerEvent;
|
|
if event then
|
|
Manager:RegisterEvent(event);
|
|
if not EventToAddOn[event] then
|
|
EventToAddOn[event] = {};
|
|
end
|
|
tinsert(EventToAddOn[event], Modules[i].name);
|
|
end
|
|
end
|