Add option to echo to russian channel

This commit is contained in:
2025-01-14 18:04:18 +01:00
parent fa5b73b5fe
commit 308b65e2f6
7 changed files with 67 additions and 48 deletions

View File

@@ -68,6 +68,7 @@ local function init()
---@field agents table<string, string>
---@field scale number
---@field locale string
---@field echoToRussian boolean
---@class HeimdallSpotterConfig
---@field enabled boolean
@@ -406,6 +407,7 @@ local function init()
stinkies = shared.GetOrDefault(Heimdall_Data, { "config", "stinkies" }, {}),
scale = shared.GetOrDefault(Heimdall_Data, { "config", "scale" }, 1),
locale = shared.GetOrDefault(Heimdall_Data, { "config", "locale" }, "en"),
echoToRussian = shared.GetOrDefault(Heimdall_Data, { "config", "echoToRussian" }, true),
bonkDetector = {
enabled = shared.GetOrDefault(Heimdall_Data, { "config", "bonkDetector", "enabled" }, false),
debug = shared.GetOrDefault(Heimdall_Data, { "config", "bonkDetector", "debug" }, false),

View File

@@ -102,17 +102,15 @@ function shared.BonkDetector.Init()
end
table.insert(shared.messenger.queue, message)
-- Russian message
---@type Message
message = {
channel = "CHANNEL",
data = notifyChannel .. "ru",
message = string.format(shared.L.ru.bonkDetected, source, destination, subevent),
}
if Heimdall_Data.config.bonkDetector.debug then
print(string.format("[%s] Queueing Russian message: %s", ModuleName, message.message))
if Heimdall_Data.config.echoToRussian then
-- Russian message
local ruMessage = {
channel = "CHANNEL",
data = notifyChannel .. "ru",
message = string.format(shared.L.ru.bonkDetected, source, destination, subevent),
}
table.insert(shared.messenger.queue, ruMessage)
end
table.insert(shared.messenger.queue, message)
end)
print("[Heimdall] BonkDetector loaded")

View File

@@ -94,18 +94,20 @@ function shared.CombatAlerter.Init()
end
subZone = shared.L.ru.zones[subZone] or subZone
---@type Message
msg = {
channel = "CHANNEL",
data = Heimdall_Data.config.combatAlerter.masterChannel .. "ru",
message = string.format(shared.L.ru.combatAlerterInCombat,
source,
zone, subZone,
tostring(GetCurrentMapAreaID()),
x * 100, y * 100
),
}
table.insert(shared.messenger.queue, msg)
if Heimdall_Data.config.echoToRussian then
-- Russian message
local ruMsg = {
channel = "CHANNEL",
data = Heimdall_Data.config.combatAlerter.masterChannel .. "ru",
message = string.format(shared.L.ru.combatAlerterInCombat,
source,
zone, subZone,
tostring(GetCurrentMapAreaID()),
x * 100, y * 100
),
}
table.insert(shared.messenger.queue, ruMsg)
end
elseif Heimdall_Data.config.combatAlerter.debug then
print(string.format("[%s] Source not in stinky list, ignoring: %s", ModuleName, source))
end

View File

@@ -118,19 +118,21 @@ function shared.DeathReporter.Init()
end
subZone = shared.L.ru.zones[subZone] or subZone
---@type Message
msg = {
channel = "CHANNEL",
data = Heimdall_Data.config.deathReporter.masterChannel .. "ru",
message = string.format(shared.L.ru.killed,
source,
destination,
spellName,
string.format("%s (%s)", zone, subZone),
zoneId,
x * 100, y * 100)
}
table.insert(shared.messenger.queue, msg)
if Heimdall_Data.config.echoToRussian then
-- Russian message
local ruMsg = {
channel = "CHANNEL",
data = Heimdall_Data.config.deathReporter.masterChannel .. "ru",
message = string.format(shared.L.ru.killed,
source,
destination,
spellName,
string.format("%s (%s)", zone, subZone),
zoneId,
x * 100, y * 100)
}
table.insert(shared.messenger.queue, ruMsg)
end
end)
end

View File

@@ -41,12 +41,15 @@ function shared.Sniffer.Init()
end
table.insert(shared.messenger.queue, msg)
msg = {
channel = "CHANNEL",
data = Heimdall_Data.config.deathReporter.notifyChannel .. "ru",
message = string.format(shared.L.ru.snifferStinky, stinky),
}
table.insert(shared.messenger.queue, msg)
if Heimdall_Data.config.echoToRussian then
-- Russian message
local ruMsg = {
channel = "CHANNEL",
data = Heimdall_Data.config.deathReporter.notifyChannel .. "ru",
message = string.format(shared.L.ru.snifferStinky, stinky),
}
table.insert(shared.messenger.queue, ruMsg)
end
end
local cleuFrame = CreateFrame("Frame")

View File

@@ -220,13 +220,15 @@ function shared.Spotter.Init()
print(string.format("[%s] Sending notification: %s", ModuleName, text))
end
---@type Message
msg = {
channel = "CHANNEL",
data = Heimdall_Data.config.spotter.notifyChannel .. "ru",
message = text
}
table.insert(shared.messenger.queue, msg)
if Heimdall_Data.config.echoToRussian then
-- Russian message
local ruMsg = {
channel = "CHANNEL",
data = Heimdall_Data.config.spotter.notifyChannel .. "ru",
message = text
}
table.insert(shared.messenger.queue, ruMsg)
end
end
local frame = CreateFrame("Frame")

View File

@@ -219,6 +219,16 @@ function shared.Whoer.Init()
end
end
if Heimdall_Data.config.echoToRussian then
-- Russian message
local ruMsg = {
channel = "CHANNEL",
data = Heimdall_Data.config.who.notifyChannel .. "ru",
message = player:NotifyRu()
}
table.insert(shared.messenger.queue, ruMsg)
end
return nil
end
---@param player Player