diff --git a/Heimdall.lua b/Heimdall.lua index 4011918..83fd7dc 100644 --- a/Heimdall.lua +++ b/Heimdall.lua @@ -15,7 +15,9 @@ local addonname, data = ... local function init() ---@class Heimdall_Data ---@field who { data: table } + ---@field whitelist table ---@field stinkies table + ---@field config HeimdallConfig if not Heimdall_Data then Heimdall_Data = {} end if not Heimdall_Data.config then Heimdall_Data.config = {} end @@ -82,7 +84,7 @@ local function init() ---@field enabled boolean ---@field listeningChannel string ---@field keyword string - ---@field updateInterval number + ---@field whitelist table --- Data --- ---@class HeimdallMessengerData @@ -123,12 +125,13 @@ local function init() } --/run Heimdall_Data.config = {inviter={enabled=false},deathReporter={enabled=false},spotter={enabled=false,everyone=false}} --/run Heimdall_Data.config = {who={enabled=true},deathReporter={enabled=true},spotter={enabled=true}} - --/run Heimdall_Data.config = {deathReporter={enabled=true}} + --/run Heimdall_Data.config = {deathReporter={enabled=false}} --/run Heimdall_Data.config = {deathReporter={enabled=false},spotter={enabled=false}} - --/run Heimdall_Data.config = {deathReporter={enabled=false},spotter={enabled=true,everyone=true}} + --/run Heimdall_Data.config = {deathReporter={enabled=false},spotter={enabled=true,everyone=false}} --/run Heimdall_Data.config = {inviter={enabled=true},deathReporter={enabled=true},spotter={enabled=true,everyone=true}} --/run Heimdall_Data.config = {inviter={enabled=true,keyword="+++"},deathReporter={enabled=true},spotter={enabled=true,everyone=true}} - --/run Heimdall_Data.config.inviter.enabled = true + --/run Heimdall_Data.config = {inviter={enabled=true,keyword="++"},deathReporter={enabled=true},spotter={enabled=true,everyone=false}} + --/run Heimdall_Data.config.who.enabled = true data.config = { spotter = { enabled = data.GetOrDefault(Heimdall_Data, { "config", "spotter", "enabled" }, true), @@ -241,7 +244,7 @@ local function init() enabled = data.GetOrDefault(Heimdall_Data, { "config", "inviter", "enabled" }, false), listeningChannel = data.GetOrDefault(Heimdall_Data, { "config", "inviter", "listeningChannel" }, "Agent"), keyword = data.GetOrDefault(Heimdall_Data, { "config", "inviter", "keyword" }, "+"), - updateInterval = data.GetOrDefault(Heimdall_Data, { "config", "inviter", "updateInterval" }, 1), + whitelist = data.GetOrDefault(Heimdall_Data, { "config", "inviter", "whitelist" }, {}), } } @@ -347,6 +350,7 @@ local logoutFrame = CreateFrame("Frame") logoutFrame:RegisterEvent("PLAYER_LOGOUT") logoutFrame:SetScript("OnEvent", function(self, event) Heimdall_Data.config.stinkies = data.config.stinkies + Heimdall_Data.config.inviter.whitelist = data.config.whitelist end) SlashCmdList["HEIMDALL_TOGGLE_STINKY"] = function(input) diff --git a/Inviter.lua b/Inviter.lua index f4920c3..326d75a 100644 --- a/Inviter.lua +++ b/Inviter.lua @@ -20,6 +20,7 @@ function data.Inviter.Init() local name = GetChannelRosterInfo(index, i) if name then channelMembers[name] = true + data.config.inviter.whitelist[name] = date("%Y-%m-%dT%H:%M:%S") end end end) @@ -51,15 +52,15 @@ function data.Inviter.Init() UpdateChannelMembers(data.config.inviter.listeningChannel) end) --- print("pls joomp") --- hooksecurefunc("JumpOrAscendStart", function() --- print("JOOMP") --- UpdateChannelMembers(data.config.inviter.listeningChannel) --- local foo = channelMembers --- for name, _ in pairs(foo) do --- print(name) --- end --- end) + -- print("pls joomp") + -- hooksecurefunc("JumpOrAscendStart", function() + -- print("JOOMP") + -- UpdateChannelMembers(data.config.inviter.listeningChannel) + -- local foo = channelMembers + -- for name, _ in pairs(foo) do + -- print(name) + -- end + -- end) local inviterGroupFrame = CreateFrame("Frame") local nextUpdate = 0 @@ -76,6 +77,9 @@ function data.Inviter.Init() for name, _ in pairs(channelMembers) do PromoteToAssistant(name, true) end + for name, _ in pairs(data.config.inviter.whitelist) do + PromoteToAssistant(name, true) + end -- if not IsEveryoneAssistant() then -- SetEveryoneIsAssistant(true) diff --git a/Whoer.lua b/Whoer.lua index fdccce9..f8a1616 100644 --- a/Whoer.lua +++ b/Whoer.lua @@ -118,16 +118,16 @@ function data.Whoer.Init() local whoQueries = { WHOQuery.new("g-\"БеспредеЛ\"", {}), WHOQuery.new( - "z-\"Orgrimmar\" z-\"Durotar\" z-\"Valley of Trials\" z-\"Echo Isles\" r-\"Human\" r-\"Dwarf\" r-\"Night Elf\"", + "z-\"Orgrimmar\" z-\"Durotar\" z-\"Valley of Trials\" r-\"Human\" r-\"Dwarf\" r-\"Night Elf\"", { NotSiegeOfOrgrimmarFilter, AllianceFilter }), WHOQuery.new( - "z-\"Orgrimmar\" z-\"Durotar\" z-\"Valley of Trials\" z-\"Echo Isles\" r-\"Gnome\" r-\"Draenei\" r-\"Worgen\"", + "z-\"Orgrimmar\" z-\"Durotar\" z-\"Valley of Trials\" r-\"Gnome\" r-\"Draenei\" r-\"Worgen\"", { NotSiegeOfOrgrimmarFilter, AllianceFilter }), WHOQuery.new( - "z-\"Orgrimmar\" z-\"Durotar\" z-\"Valley of Trials\" z-\"Echo Isles\" r-\"Kul Tiran\" r-\"Dark Iron Dwarf\" r-\"Void Elf\"", + "z-\"Orgrimmar\" z-\"Durotar\" z-\"Valley of Trials\" r-\"Kul Tiran\" r-\"Dark Iron Dwarf\" r-\"Void Elf\"", { NotSiegeOfOrgrimmarFilter, AllianceFilter }), WHOQuery.new( - "z-\"Orgrimmar\" z-\"Durotar\" z-\"Valley of Trials\" z-\"Echo Isles\" r-\"Lightforged Draenei\" r-\"Mechagnome\"", + "z-\"Orgrimmar\" z-\"Durotar\" z-\"Valley of Trials\" r-\"Lightforged Draenei\" r-\"Mechagnome\"", { NotSiegeOfOrgrimmarFilter, AllianceFilter }), WHOQuery.new("Kekv Demonboo Dotmada Firobot Verminal Amaterasu Freexe Tomoki", {}) }