Add files via upload

This commit is contained in:
totalllyswede
2026-02-24 15:55:24 -08:00
committed by GitHub
parent 5141d5e141
commit 192a2169bb
+46
View File
@@ -10,11 +10,45 @@ local DEFAULTS = {
enabled = true, enabled = true,
soundEnabled = true, soundEnabled = true,
gainedMessage = false, gainedMessage = false,
largeMessageEnabled = true,
useCustomSound = true, useCustomSound = true,
customSoundPath = "Interface\\AddOns\\InnerFireWatch\\sounds\\expire.wav", customSoundPath = "Interface\\AddOns\\InnerFireWatch\\sounds\\expire.wav",
fallbackSound = "igQuestFailed", fallbackSound = "igQuestFailed",
} }
-- Big center-screen text (independent of UIErrorsFrame)
local CenterAlert = CreateFrame("Frame", "InnerFireWatchCenterAlert", UIParent)
CenterAlert:SetPoint("CENTER", UIParent, "CENTER", 0, 120)
CenterAlert:SetWidth(600)
CenterAlert:SetHeight(80)
CenterAlert:Hide()
CenterAlert.text = CenterAlert:CreateFontString(nil, "OVERLAY")
CenterAlert.text:SetAllPoints(CenterAlert)
CenterAlert.text:SetFont("Fonts\\FRIZQT__.TTF", 32, "OUTLINE")
CenterAlert.text:SetJustifyH("CENTER")
CenterAlert.text:SetJustifyV("MIDDLE")
local function ShowCenterAlert(msg, r, g, b)
CenterAlert.text:SetText(msg or "")
CenterAlert.text:SetTextColor(r or 1, g or 0.1, b or 0.1)
CenterAlert:Show()
CenterAlert.startTime = GetTime()
end
-- Fade out over ~1.6s
CenterAlert:SetScript("OnUpdate", function()
if not CenterAlert:IsShown() then return end
local t = GetTime() - (CenterAlert.startTime or 0)
if t >= 1.6 then
CenterAlert:Hide()
return
end
-- 0.0 -> 1.6
local alpha = 1 - (t / 1.6)
CenterAlert:SetAlpha(alpha)
end)
local function ApplyDefaults() local function ApplyDefaults()
for k, v in pairs(DEFAULTS) do for k, v in pairs(DEFAULTS) do
if InnerFireWatchDB[k] == nil then if InnerFireWatchDB[k] == nil then
@@ -54,6 +88,10 @@ end
local function NotifyExpired() local function NotifyExpired()
DEFAULT_CHAT_FRAME:AddMessage("|cffff3333Inner Fire has expired!|r") DEFAULT_CHAT_FRAME:AddMessage("|cffff3333Inner Fire has expired!|r")
if InnerFireWatchDB.largeMessageEnabled then
ShowCenterAlert("INNER FIRE EXPIRED!")
end
if UIErrorsFrame and UIErrorsFrame.AddMessage then if UIErrorsFrame and UIErrorsFrame.AddMessage then
UIErrorsFrame:AddMessage("Inner Fire expired!", 1.0, 0.1, 0.1, 1.0, 5) UIErrorsFrame:AddMessage("Inner Fire expired!", 1.0, 0.1, 0.1, 1.0, 5)
@@ -126,11 +164,19 @@ SlashCmdList["INNERFIREWATCH"] = function(msg)
InnerFireWatchDB.gainedMessage = false InnerFireWatchDB.gainedMessage = false
DEFAULT_CHAT_FRAME:AddMessage("InnerFireWatch: gained message disabled") DEFAULT_CHAT_FRAME:AddMessage("InnerFireWatch: gained message disabled")
elseif msg == "large on" then
InnerFireWatchDB.largeMessageEnabled = true
DEFAULT_CHAT_FRAME:AddMessage("InnerFireWatch: large message enabled")
elseif msg == "large off" then
InnerFireWatchDB.largeMessageEnabled = false
DEFAULT_CHAT_FRAME:AddMessage("InnerFireWatch: large message disabled")
else else
DEFAULT_CHAT_FRAME:AddMessage("InnerFireWatch commands:") DEFAULT_CHAT_FRAME:AddMessage("InnerFireWatch commands:")
DEFAULT_CHAT_FRAME:AddMessage(" /ifw on|off") DEFAULT_CHAT_FRAME:AddMessage(" /ifw on|off")
DEFAULT_CHAT_FRAME:AddMessage(" /ifw sound on|sound off") DEFAULT_CHAT_FRAME:AddMessage(" /ifw sound on|sound off")
DEFAULT_CHAT_FRAME:AddMessage(" /ifw custom on|custom off") DEFAULT_CHAT_FRAME:AddMessage(" /ifw custom on|custom off")
DEFAULT_CHAT_FRAME:AddMessage(" /ifw gained on|gained off") DEFAULT_CHAT_FRAME:AddMessage(" /ifw gained on|gained off")
DEFAULT_CHAT_FRAME:AddMessage(" /ifw large on|large off")
end end
end end