Add throttle to inviter so it doesn't have a stroke
This commit is contained in:
@@ -84,6 +84,7 @@ local function init()
|
||||
---@field keyword string
|
||||
---@field allAssist boolean
|
||||
---@field agentsAssist boolean
|
||||
---@field throttle number
|
||||
|
||||
---@class HeimdallDuelerConfig
|
||||
---@field enabled boolean
|
||||
@@ -180,6 +181,7 @@ local function init()
|
||||
keyword = shared.GetOrDefault(Heimdall_Data, { "config", "inviter", "keyword" }, "+"),
|
||||
allAssist = shared.GetOrDefault(Heimdall_Data, { "config", "inviter", "allAssist" }, false),
|
||||
agentsAssist = shared.GetOrDefault(Heimdall_Data, { "config", "inviter", "agentsAssist" }, false),
|
||||
throttle = shared.GetOrDefault(Heimdall_Data, { "config", "inviter", "throttle" }, 1),
|
||||
},
|
||||
dueler = {
|
||||
enabled = shared.GetOrDefault(Heimdall_Data, { "config", "dueler", "enabled" }, false),
|
||||
|
||||
BIN
Heimdall.zip
(Stored with Git LFS)
BIN
Heimdall.zip
(Stored with Git LFS)
Binary file not shown.
@@ -5,24 +5,29 @@ local addonname, shared = ...
|
||||
---@diagnostic disable-next-line: missing-fields
|
||||
shared.Inviter = {}
|
||||
function shared.Inviter.Init()
|
||||
---@type Timer
|
||||
local updateTimer = nil
|
||||
|
||||
local function FixGroup()
|
||||
if not IsInRaid() then ConvertToRaid() end
|
||||
if Heimdall_Data.config.inviter.allAssist then SetEveryoneIsAssistant() end
|
||||
shared.dumpTable(Heimdall_Data.config.inviter)
|
||||
if Heimdall_Data.config.inviter.agentsAssist then
|
||||
shared.dumpTable(Heimdall_Data.config.agents)
|
||||
for name, _ in pairs(Heimdall_Data.config.agents) do
|
||||
PromoteToAssistant(name, true)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local inviterGroupFrame = CreateFrame("Frame")
|
||||
inviterGroupFrame:RegisterEvent("GROUP_ROSTER_UPDATE")
|
||||
inviterGroupFrame:SetScript("OnEvent", function(self, event, ...)
|
||||
if not Heimdall_Data.config.inviter.enabled then return end
|
||||
if not UnitIsGroupLeader("player") then return end
|
||||
|
||||
if not IsInRaid() then
|
||||
ConvertToRaid()
|
||||
end
|
||||
|
||||
if Heimdall_Data.config.inviter.allAssist then
|
||||
SetEveryoneIsAssistant()
|
||||
end
|
||||
if Heimdall_Data.config.inviter.agentsAssist then
|
||||
for name, _ in pairs(Heimdall_Data.config.agents) do
|
||||
PromoteToAssistant(name, true)
|
||||
end
|
||||
end
|
||||
if updateTimer then updateTimer:Cancel() end
|
||||
updateTimer = C_Timer.NewTimer(Heimdall_Data.config.inviter.throttle, FixGroup)
|
||||
end)
|
||||
|
||||
local inviterChannelFrame = CreateFrame("Frame")
|
||||
@@ -44,10 +49,7 @@ function shared.Inviter.Init()
|
||||
end
|
||||
|
||||
if channelname ~= Heimdall_Data.config.inviter.listeningChannel then return end
|
||||
|
||||
if msg == Heimdall_Data.config.inviter.keyword then
|
||||
InviteUnit(sender)
|
||||
end
|
||||
if msg == Heimdall_Data.config.inviter.keyword then InviteUnit(sender) end
|
||||
end)
|
||||
|
||||
print("Heimdall - Inviter loaded")
|
||||
|
||||
@@ -67,6 +67,9 @@ local config = {
|
||||
enabled = aura_env.config.inviter.enabled,
|
||||
listeningChannel = aura_env.config.inviter.listeningChannel,
|
||||
keyword = aura_env.config.inviter.keyword,
|
||||
allAssist = aura_env.config.inviter.allAssist,
|
||||
agentsAssist = aura_env.config.inviter.agentsAssist,
|
||||
throttle = aura_env.config.inviter.throttle,
|
||||
},
|
||||
dueler = {
|
||||
enabled = aura_env.config.dueler.enabled,
|
||||
@@ -110,6 +113,9 @@ Heimdall_Data.config.deathReporter.duelThrottle = config.deathReporter.duelThrot
|
||||
Heimdall_Data.config.inviter.enabled = config.inviter.enabled
|
||||
Heimdall_Data.config.inviter.listeningChannel = config.inviter.listeningChannel
|
||||
Heimdall_Data.config.inviter.keyword = config.inviter.keyword
|
||||
Heimdall_Data.config.inviter.allAssist = config.inviter.allAssist
|
||||
Heimdall_Data.config.inviter.agentsAssist = config.inviter.agentsAssist
|
||||
Heimdall_Data.config.inviter.throttle = config.inviter.throttle
|
||||
|
||||
Heimdall_Data.config.dueler.enabled = config.dueler.enabled
|
||||
Heimdall_Data.config.dueler.declineOther = config.dueler.declineOther
|
||||
|
||||
Reference in New Issue
Block a user