-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCore.lua
74 lines (59 loc) · 1.89 KB
/
Core.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
---@class Core
local addonName, IRT = ...;
-- Metadata
local GetAddOnMetadata = C_Addons and C_Addon.GetAddOnMetadata or GetAddOnMetadata;
-- Load Guild
IRT.GuildRoster = IRT.GuildRoster or C_GuildInfo.GuildRoster()
-- Variables
IRT.name = addonName
IRT.version = GetAddOnMetadata(IRT.name, "Version");
IRT.spaceName = IRT.name:gsub("(%l)(%u)", "%1 %2")
IRT.ShortName = "IRT"
IRT.initialized = false;
IRT.clientUIinterface = 0;
IRT.clientVersion = 0;
IRT.EF = nil;
-- Ace
IRT.Ace = LibStub("AceAddon-3.0"):NewAddon(IRT, IRT.name, "AceConsole-3.0", "AceTimer-3.0", "AceEvent-3.0")
---Start the addon
function IRT:init()
if self.initialized then return; end
-- Initialize
self.initialized = true;
self.clientUIinterface = select(4, GetBuildInfo());
self.clientVersion = select(1, GetBuildInfo());
-- Welcome Message
if(self.Settings:get("startMessage")) then
print(string.format("|cFF%s%s v%s|r start-up completed. Type |cFF%s/irt|r or |cFF%s/ironside|r to start! Created by Eureka, US-Crusader-Strike.",
self.Data.Constants.mainThemeColor,
IRT.spaceName,
self.version,
self.Data.Constants.mainThemeColor,
self.Data.Constants.mainThemeColor
))
end
end
-- Initialize
IRT.AwardRoll:init();
IRT.Interface:init();
IRT.Ace:RegisterChatCommand("irt", function(...)
IRT.Command:_sendCommand(...);
end);
IRT.Ace:RegisterChatCommand("ironside", function(...)
IRT.Command:_sendCommand(...);
end);
IRT.Ace:RegisterChatCommand("ironsideraidtools", function(...)
IRT.Command:_sendCommand(...);
end);
IRT.Ace:RegisterChatCommand("rl", function(...)
ReloadUI();
end);
-- Addon Loaded Event
IRT.EF = CreateFrame("FRAME", "IronsideEventFrame");
IRT.EF:RegisterEvent("ADDON_LOADED");
IRT.EF:SetScript("OnEvent", function(_, event, addon)
if event == "ADDON_LOADED" and addon == addonName then
IRT:init();
end
end);
-- Check Guild