Add debug options
Add debug buttons Add combatalerter debug
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
local addonname, shared = ...
|
||||
---@cast shared HeimdallShared
|
||||
---@cast addonname string
|
||||
local ModuleName = "Inviter"
|
||||
|
||||
---@diagnostic disable-next-line: missing-fields
|
||||
shared.Inviter = {}
|
||||
@@ -9,16 +10,34 @@ function shared.Inviter.Init()
|
||||
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.debug then
|
||||
print(string.format("%s: FixGroup", ModuleName))
|
||||
shared.dumpTable(Heimdall_Data.config.inviter)
|
||||
end
|
||||
if not IsInRaid() then
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: Not in raid", ModuleName))
|
||||
end
|
||||
ConvertToRaid()
|
||||
end
|
||||
if Heimdall_Data.config.inviter.allAssist then
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: Setting everyone to assistant", ModuleName))
|
||||
end
|
||||
SetEveryoneIsAssistant()
|
||||
end
|
||||
if Heimdall_Data.config.inviter.agentsAssist then
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: Setting agents to assistant", ModuleName))
|
||||
end
|
||||
--shared.dumpTable(Heimdall_Data.config.agents)
|
||||
for name, _ in pairs(Heimdall_Data.config.agents) do
|
||||
if UnitInParty(name)
|
||||
and not UnitIsGroupLeader(name)
|
||||
and not UnitIsRaidOfficer(name) then
|
||||
print("Promoting " .. name .. " to assistant")
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: Promoting %s to assistant", ModuleName, name))
|
||||
end
|
||||
PromoteToAssistant(name, true)
|
||||
end
|
||||
end
|
||||
@@ -32,18 +51,31 @@ function shared.Inviter.Init()
|
||||
---But that is currently not trivial and would require some work
|
||||
---Since I'm the only one currently using this - I don't care where the buttons are
|
||||
local function OverlayKickButtonElvUI(name)
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: OverlayKickButtonElvUI", ModuleName))
|
||||
shared.dumpTable(Heimdall_Data.config.inviter)
|
||||
end
|
||||
for group = 1, 8 do
|
||||
for player = 1, 5 do
|
||||
local button = _G[string.format("ElvUF_RaidGroup%dUnitButton%d", group, player)]
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: button = %s", ModuleName, button))
|
||||
end
|
||||
|
||||
local unitName = button and button.unit and UnitName(button.unit)
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: unitName = %s", ModuleName, unitName))
|
||||
end
|
||||
if unitName == name then
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: unitName == name", ModuleName))
|
||||
end
|
||||
local overlayButton = framePool[button.unit] or
|
||||
CreateFrame("Button",
|
||||
string.format("HeimdallKickButton%s", button.unit, button, "SecureActionButtonTemplate"))
|
||||
framePool[button.unit] = overlayButton
|
||||
|
||||
overlayButton:SetSize(button.UNIT_WIDTH/2, button.UNIT_HEIGHT/2)
|
||||
overlayButton:SetSize(button.UNIT_WIDTH / 2, button.UNIT_HEIGHT / 2)
|
||||
overlayButton:SetPoint("CENTER", button, "CENTER", 0, 0)
|
||||
overlayButton:SetNormalTexture("Interface\\Buttons\\UI-GroupLoot-KickIcon")
|
||||
overlayButton:SetHighlightTexture("Interface\\Buttons\\UI-GroupLoot-KickIcon")
|
||||
@@ -110,6 +142,11 @@ function shared.Inviter.Init()
|
||||
local inviterGroupFrame = CreateFrame("Frame")
|
||||
inviterGroupFrame:RegisterEvent("GROUP_ROSTER_UPDATE")
|
||||
inviterGroupFrame:SetScript("OnEvent", function(self, event, ...)
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: OnEvent", ModuleName))
|
||||
shared.dumpTable(Heimdall_Data.config.inviter)
|
||||
print(string.format("%s: event = %s", ModuleName, UnitIsGroupLeader("player")))
|
||||
end
|
||||
if not Heimdall_Data.config.inviter.enabled then return end
|
||||
if not UnitIsGroupLeader("player") then return end
|
||||
|
||||
@@ -120,23 +157,20 @@ function shared.Inviter.Init()
|
||||
local inviterChannelFrame = CreateFrame("Frame")
|
||||
inviterChannelFrame:RegisterEvent("CHAT_MSG_CHANNEL")
|
||||
inviterChannelFrame:SetScript("OnEvent", function(self, event, msg, sender, ...)
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: OnEvent", ModuleName))
|
||||
shared.dumpTable(Heimdall_Data.config.inviter)
|
||||
end
|
||||
if not Heimdall_Data.config.inviter.enabled then return end
|
||||
local channelId = select(6, ...)
|
||||
local channelname = ""
|
||||
---@type any[]
|
||||
local channels = { GetChannelList() }
|
||||
for i = 1, #channels, 2 do
|
||||
---@type number
|
||||
local id = channels[i]
|
||||
---@type string
|
||||
local name = channels[i + 1]
|
||||
if id == channelId then
|
||||
channelname = name
|
||||
end
|
||||
end
|
||||
|
||||
local _, channelname = GetChannelName(channelId)
|
||||
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
|
||||
if Heimdall_Data.config.inviter.debug then
|
||||
print(string.format("%s: Inviting %s", ModuleName, sender))
|
||||
end
|
||||
InviteUnit(sender)
|
||||
end
|
||||
end)
|
||||
|
||||
print("Heimdall - Inviter loaded")
|
||||
|
||||
Reference in New Issue
Block a user