Code polish for release
This commit is contained in:
@@ -4,7 +4,11 @@ local addonname, data = ...
|
|||||||
|
|
||||||
data.DeathReporter = {}
|
data.DeathReporter = {}
|
||||||
function data.DeathReporter.Init()
|
function data.DeathReporter.Init()
|
||||||
if not data.config.deathReporter.enabled then return end
|
if not data.config.deathReporter.enabled then
|
||||||
|
print("Heimdall - DeathReporter disabled")
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
---@type table<string, number>
|
---@type table<string, number>
|
||||||
local recentDeaths = {}
|
local recentDeaths = {}
|
||||||
---@type table<string, number>
|
---@type table<string, number>
|
||||||
@@ -84,4 +88,6 @@ function data.DeathReporter.Init()
|
|||||||
if notifyTimers[destination] then notifyTimers[destination]:Cancel() end
|
if notifyTimers[destination] then notifyTimers[destination]:Cancel() end
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
print("Heimdall - DeathReporter loaded")
|
||||||
end
|
end
|
||||||
|
26
Heimdall.lua
26
Heimdall.lua
@@ -102,7 +102,8 @@ local function init()
|
|||||||
data.who = {
|
data.who = {
|
||||||
ignored = {},
|
ignored = {},
|
||||||
}
|
}
|
||||||
|
--/run Heimdall_Data.config = {who={enabled=true},deathReporter={enabled=true}}
|
||||||
|
--/run Heimdall_Data.config = {deathReporter={enabled=true}}
|
||||||
data.config = {
|
data.config = {
|
||||||
spotter = {
|
spotter = {
|
||||||
enabled = data.GetOrDefault(Heimdall_Data, { "config", "spotter", "enabled" }, true),
|
enabled = data.GetOrDefault(Heimdall_Data, { "config", "spotter", "enabled" }, true),
|
||||||
@@ -115,7 +116,7 @@ local function init()
|
|||||||
throttleTime = data.GetOrDefault(Heimdall_Data, { "config", "spotter", "throttleTime" }, 1)
|
throttleTime = data.GetOrDefault(Heimdall_Data, { "config", "spotter", "throttleTime" }, 1)
|
||||||
},
|
},
|
||||||
who = {
|
who = {
|
||||||
enabled = data.GetOrDefault(Heimdall_Data, { "config", "who", "enabled" }, true),
|
enabled = data.GetOrDefault(Heimdall_Data, { "config", "who", "enabled" }, false),
|
||||||
ignored = data.GetOrDefault(Heimdall_Data, { "config", "who", "ignored" }, {}),
|
ignored = data.GetOrDefault(Heimdall_Data, { "config", "who", "ignored" }, {}),
|
||||||
notifyChannel = data.GetOrDefault(Heimdall_Data, { "config", "who", "notifyChannel" }, "Foobar"),
|
notifyChannel = data.GetOrDefault(Heimdall_Data, { "config", "who", "notifyChannel" }, "Foobar"),
|
||||||
ttl = data.GetOrDefault(Heimdall_Data, { "config", "who", "ttl" }, 10),
|
ttl = data.GetOrDefault(Heimdall_Data, { "config", "who", "ttl" }, 10),
|
||||||
@@ -133,22 +134,22 @@ local function init()
|
|||||||
enabled = data.GetOrDefault(Heimdall_Data, { "config", "messenger", "enabled" }, true),
|
enabled = data.GetOrDefault(Heimdall_Data, { "config", "messenger", "enabled" }, true),
|
||||||
},
|
},
|
||||||
deathReporter = {
|
deathReporter = {
|
||||||
enabled = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "enabled" }, true),
|
enabled = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "enabled" }, false),
|
||||||
throttle = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "throttle" }, 10),
|
throttle = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "throttle" }, 10),
|
||||||
doWhisper = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "doWhisper" }, true),
|
doWhisper = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "doWhisper" }, true),
|
||||||
notifyChannel = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "notifyChannel" }, "Foobar"),
|
notifyChannel = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "notifyChannel" }, "Foobar"),
|
||||||
zoneOverride = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "zoneOverride" }, nil),
|
zoneOverride = data.GetOrDefault(Heimdall_Data, { "config", "deathReporter", "zoneOverride" }, nil),
|
||||||
},
|
},
|
||||||
whisperNotify = data.GetOrDefault(Heimdall_Data, { "config", "whisperNotify" }, {
|
whisperNotify = data.GetOrDefault(Heimdall_Data, { "config", "whisperNotify" }, {
|
||||||
-- "Extazyk",
|
"Extazyk",
|
||||||
-- "Smokefire",
|
"Smokefire",
|
||||||
-- "Smokemantra",
|
"Smokemantra",
|
||||||
-- "Хихихантер",
|
"Хихихантер",
|
||||||
-- "Муркот",
|
"Муркот",
|
||||||
-- "Растафаркрай",
|
"Растафаркрай",
|
||||||
-- "Frosstmorn",
|
"Frosstmorn",
|
||||||
-- "Pulsjkee",
|
"Pulsjkee",
|
||||||
-- "Paskoo",
|
"Paskoo",
|
||||||
"Totleta",
|
"Totleta",
|
||||||
"Healleta",
|
"Healleta",
|
||||||
"Deathleta",
|
"Deathleta",
|
||||||
@@ -244,6 +245,7 @@ local function init()
|
|||||||
data.Messenger.Init()
|
data.Messenger.Init()
|
||||||
data.Spotter.Init()
|
data.Spotter.Init()
|
||||||
data.DeathReporter.Init()
|
data.DeathReporter.Init()
|
||||||
|
print("Heimdall loaded!")
|
||||||
end
|
end
|
||||||
|
|
||||||
local loadedFrame = CreateFrame("Frame")
|
local loadedFrame = CreateFrame("Frame")
|
||||||
|
@@ -4,7 +4,10 @@ local addonname, data = ...
|
|||||||
|
|
||||||
data.Messenger = {}
|
data.Messenger = {}
|
||||||
function data.Messenger.Init()
|
function data.Messenger.Init()
|
||||||
if not data.config.messenger.enabled then return end
|
if not data.config.messenger.enabled then
|
||||||
|
print("Heimdall - Messenger disabled")
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
---@class Message
|
---@class Message
|
||||||
---@field message string
|
---@field message string
|
||||||
@@ -92,4 +95,6 @@ function data.Messenger.Init()
|
|||||||
-- message = "TEST"
|
-- message = "TEST"
|
||||||
-- })
|
-- })
|
||||||
--end)
|
--end)
|
||||||
|
|
||||||
|
print("Heimdall - Messenger loaded")
|
||||||
end
|
end
|
||||||
|
@@ -4,7 +4,11 @@ local addonname, data = ...
|
|||||||
|
|
||||||
data.Spotter = {}
|
data.Spotter = {}
|
||||||
function data.Spotter.Init()
|
function data.Spotter.Init()
|
||||||
if not data.config.spotter.enabled then return end
|
if not data.config.spotter.enabled then
|
||||||
|
print("Heimdall - Spotter disabled")
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
local function FormatHP(hp)
|
local function FormatHP(hp)
|
||||||
if hp > 1e9 then
|
if hp > 1e9 then
|
||||||
return string.format("%.1fB", hp / 1e9)
|
return string.format("%.1fB", hp / 1e9)
|
||||||
@@ -108,4 +112,6 @@ function data.Spotter.Init()
|
|||||||
print(string.format("Error notifying %s: %s", tostring(unit), tostring(err)))
|
print(string.format("Error notifying %s: %s", tostring(unit), tostring(err)))
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
print("Heimdall - Spotter loaded")
|
||||||
end
|
end
|
||||||
|
26
Whoer.lua
26
Whoer.lua
@@ -4,12 +4,16 @@ local addonname, data = ...
|
|||||||
|
|
||||||
data.Whoer = {}
|
data.Whoer = {}
|
||||||
function data.Whoer.Init()
|
function data.Whoer.Init()
|
||||||
if not data.config.who.enabled then return end
|
if not data.config.who.enabled then
|
||||||
|
print("Heimdall - Whoer disabled")
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
if not Heimdall_Data.who then Heimdall_Data.who = {} end
|
if not Heimdall_Data.who then Heimdall_Data.who = {} end
|
||||||
if not Heimdall_Data.who.data then Heimdall_Data.who.data = {} end
|
if not Heimdall_Data.who.data then Heimdall_Data.who.data = {} end
|
||||||
|
|
||||||
---@type table<string, Player>
|
---@type table<string, Player>
|
||||||
local players = {}
|
HeimdallStinkies = {}
|
||||||
|
|
||||||
---@class Player
|
---@class Player
|
||||||
---@field name string
|
---@field name string
|
||||||
@@ -21,6 +25,7 @@ function data.Whoer.Init()
|
|||||||
---@field lastSeen string
|
---@field lastSeen string
|
||||||
---@field firstSeen string
|
---@field firstSeen string
|
||||||
---@field seenCount number
|
---@field seenCount number
|
||||||
|
---@field stinky boolean?
|
||||||
Player = {
|
Player = {
|
||||||
---@param name string
|
---@param name string
|
||||||
---@param guild string
|
---@param guild string
|
||||||
@@ -262,7 +267,7 @@ function data.Whoer.Init()
|
|||||||
|
|
||||||
if not continue then
|
if not continue then
|
||||||
local timestamp = date("%Y-%m-%dT%H:%M:%S")
|
local timestamp = date("%Y-%m-%dT%H:%M:%S")
|
||||||
local player = players[name]
|
local player = HeimdallStinkies[name]
|
||||||
if not player then
|
if not player then
|
||||||
player = Player.new(name, guild, race, class, zone)
|
player = Player.new(name, guild, race, class, zone)
|
||||||
if not Heimdall_Data.who then Heimdall_Data.who = {} end
|
if not Heimdall_Data.who then Heimdall_Data.who = {} end
|
||||||
@@ -280,6 +285,7 @@ function data.Whoer.Init()
|
|||||||
|
|
||||||
local stinky = data.config.stinkies[name]
|
local stinky = data.config.stinkies[name]
|
||||||
if stinky then
|
if stinky then
|
||||||
|
player.stinky = true
|
||||||
PlaySoundFile("Interface\\Sounds\\Domination.ogg", "Master")
|
PlaySoundFile("Interface\\Sounds\\Domination.ogg", "Master")
|
||||||
else
|
else
|
||||||
PlaySoundFile("Interface\\Sounds\\Cloak.ogg", "Master")
|
PlaySoundFile("Interface\\Sounds\\Cloak.ogg", "Master")
|
||||||
@@ -292,7 +298,7 @@ function data.Whoer.Init()
|
|||||||
|
|
||||||
player.lastSeen = timestamp
|
player.lastSeen = timestamp
|
||||||
player.seenCount = player.seenCount + 1
|
player.seenCount = player.seenCount + 1
|
||||||
players[name] = player
|
HeimdallStinkies[name] = player
|
||||||
end
|
end
|
||||||
|
|
||||||
player.lastSeenInternal = GetTime()
|
player.lastSeenInternal = GetTime()
|
||||||
@@ -304,7 +310,7 @@ function data.Whoer.Init()
|
|||||||
end
|
end
|
||||||
player.zone = zone
|
player.zone = zone
|
||||||
player.lastSeen = timestamp
|
player.lastSeen = timestamp
|
||||||
players[name] = player
|
HeimdallStinkies[name] = player
|
||||||
if not Heimdall_Data.who then Heimdall_Data.who = {} end
|
if not Heimdall_Data.who then Heimdall_Data.who = {} end
|
||||||
if not Heimdall_Data.who.data then Heimdall_Data.who.data = {} end
|
if not Heimdall_Data.who.data then Heimdall_Data.who.data = {} end
|
||||||
Heimdall_Data.who.data[name] = player
|
Heimdall_Data.who.data[name] = player
|
||||||
@@ -318,11 +324,11 @@ function data.Whoer.Init()
|
|||||||
|
|
||||||
if not data.who.updateTicker then
|
if not data.who.updateTicker then
|
||||||
data.who.updateTicker = C_Timer.NewTicker(0.5, function()
|
data.who.updateTicker = C_Timer.NewTicker(0.5, function()
|
||||||
for name, player in pairs(players) do
|
for name, player in pairs(HeimdallStinkies) do
|
||||||
if player.lastSeenInternal + data.config.who.ttl < GetTime() then
|
if player.lastSeenInternal + data.config.who.ttl < GetTime() then
|
||||||
NotifyGone(player)
|
NotifyGone(player)
|
||||||
PlaySoundFile("Interface\\Sounds\\Uncloak.ogg", "Master")
|
PlaySoundFile("Interface\\Sounds\\Uncloak.ogg", "Master")
|
||||||
players[name] = nil
|
HeimdallStinkies[name] = nil
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
@@ -353,7 +359,7 @@ function data.Whoer.Init()
|
|||||||
whoQueryWhisperFrame:RegisterEvent("CHAT_MSG_WHISPER")
|
whoQueryWhisperFrame:RegisterEvent("CHAT_MSG_WHISPER")
|
||||||
whoQueryWhisperFrame:SetScript("OnEvent", function(self, event, msg, sender)
|
whoQueryWhisperFrame:SetScript("OnEvent", function(self, event, msg, sender)
|
||||||
if msg == "who" then
|
if msg == "who" then
|
||||||
for _, player in pairs(players) do
|
for _, player in pairs(HeimdallStinkies) do
|
||||||
local text = player:NotifyMessage()
|
local text = player:NotifyMessage()
|
||||||
---@type Message
|
---@type Message
|
||||||
local msg = {
|
local msg = {
|
||||||
@@ -388,7 +394,7 @@ function data.Whoer.Init()
|
|||||||
end
|
end
|
||||||
|
|
||||||
if msg == "who" then
|
if msg == "who" then
|
||||||
for _, player in pairs(players) do
|
for _, player in pairs(HeimdallStinkies) do
|
||||||
local text = player:NotifyMessage()
|
local text = player:NotifyMessage()
|
||||||
---@type Message
|
---@type Message
|
||||||
local msg = {
|
local msg = {
|
||||||
@@ -400,4 +406,6 @@ function data.Whoer.Init()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
print("Heimdall - Whoer loaded")
|
||||||
end
|
end
|
||||||
|
Reference in New Issue
Block a user