Refactor Encounters, use new translations format for save space

This commit is contained in:
Roman Jaroš 2025-04-17 19:04:49 +02:00
parent 7d9f58650a
commit 908f45eb9b
59 changed files with 103852 additions and 58396 deletions

37
Addon/Code/EncounterDataApi.lua Executable file
View file

@ -0,0 +1,37 @@
local _, addon = ...
local function SplitAbilityParts(input, delimiter)
local result = {}
local pattern = "([^" .. delimiter .. "]*)"
local normalizedAbility = string.gsub(input, "||", "|???|")
local lastPos = 1
for part in string.gmatch(normalizedAbility, pattern) do
table.insert(result, part)
lastPos = lastPos + #part + 1
end
if input:sub(-1) == delimiter then
table.insert(result, "")
end
return result
end
addon.API.SplitAbilityParts = SplitAbilityParts
local function GetEncounterAbility(abilityKey)
return addon.data.encounter[abilityKey] or nil
end
addon.API.GetEncounterAbility = GetEncounterAbility
local function GetEncounter(bossKey)
return {
abilities = addon.data.encounter[bossKey] or nil,
overview = addon.data.encounter[bossKey .. "_summary_instance"] or nil,
tank = addon.data.encounter[bossKey .. "_summary_tank"] or nil,
healer = addon.data.encounter[bossKey .. "_summary_healer"] or nil,
dps = addon.data.encounter[bossKey .. "_summary_dps"] or nil,
}
end
addon.API.GetEncounter = GetEncounter