This commit is contained in:
NoM0Re
2025-05-31 22:54:39 +02:00
committed by GitHub
parent 9def6a5ab8
commit bda851552d
58 changed files with 2518 additions and 1671 deletions
+5 -5
View File
@@ -265,7 +265,7 @@ function Private.Animate(namespace, uid, type, anim, region, inverse, onFinished
anim.translateFunc = anim_function_strings[anim.translateType]
end
if (anim.translateFunc) then
translateFunc = WeakAuras.LoadFunction("return " .. anim.translateFunc);
translateFunc = WeakAuras.LoadFunction("return " .. anim.translateFunc, uid);
else
if (region.SetOffsetAnim) then
region:SetOffsetAnim(0, 0);
@@ -286,7 +286,7 @@ function Private.Animate(namespace, uid, type, anim, region, inverse, onFinished
anim.alphaFunc = anim_function_strings[anim.alphaType]
end
if (anim.alphaFunc) then
alphaFunc = WeakAuras.LoadFunction("return " .. anim.alphaFunc);
alphaFunc = WeakAuras.LoadFunction("return " .. anim.alphaFunc, uid);
else
if (region.SetAnimAlpha) then
region:SetAnimAlpha(nil);
@@ -307,7 +307,7 @@ function Private.Animate(namespace, uid, type, anim, region, inverse, onFinished
anim.scaleFunc = anim_function_strings[anim.scaleType]
end
if (anim.scaleFunc) then
scaleFunc = WeakAuras.LoadFunction("return " .. anim.scaleFunc);
scaleFunc = WeakAuras.LoadFunction("return " .. anim.scaleFunc, uid);
else
region:Scale(1, 1);
end
@@ -320,7 +320,7 @@ function Private.Animate(namespace, uid, type, anim, region, inverse, onFinished
anim.rotateFunc = anim_function_strings[anim.rotateType]
end
if (anim.rotateFunc) then
rotateFunc = WeakAuras.LoadFunction("return " .. anim.rotateFunc);
rotateFunc = WeakAuras.LoadFunction("return " .. anim.rotateFunc, uid);
else
region:Rotate(startRotation);
end
@@ -333,7 +333,7 @@ function Private.Animate(namespace, uid, type, anim, region, inverse, onFinished
anim.colorFunc = anim_function_strings[anim.colorType]
end
if (anim.colorFunc) then
colorFunc = WeakAuras.LoadFunction("return " .. anim.colorFunc);
colorFunc = WeakAuras.LoadFunction("return " .. anim.colorFunc, uid);
else
region:ColorAnim(nil);
end
+6 -6
View File
@@ -632,14 +632,14 @@ local function CreateFunctionCache(exec_env)
local cache = {
funcs = setmetatable({}, {__mode = "v"})
}
cache.Load = function(self, string, silent)
cache.Load = function(self, string, id, silent)
if self.funcs[string] then
return self.funcs[string]
else
local loadedFunction, errorString = loadstring(string, firstLine(string))
if errorString then
if not silent then
print(errorString)
print(string.format(L["Error in aura '%s'"], id), errorString)
end
return nil, errorString
elseif loadedFunction then
@@ -658,12 +658,12 @@ end
local function_cache_custom = CreateFunctionCache(exec_env_custom)
local function_cache_builtin = CreateFunctionCache(exec_env_builtin)
function WeakAuras.LoadFunction(string)
return function_cache_custom:Load(string)
function WeakAuras.LoadFunction(string, id)
return function_cache_custom:Load(string, id)
end
function Private.LoadFunction(string, silent)
return function_cache_builtin:Load(string, silent)
function Private.LoadFunction(string, id, silent)
return function_cache_builtin:Load(string, id, silent)
end
function Private.GetSanitizedGlobal(key)
+7 -2
View File
@@ -179,7 +179,7 @@ Private.ExecEnv.BossMods.DBM = {
EventCallback = function(self, event, ...)
if event == "DBM_Announce" then
local message, icon, _, spellId, _, count = ...
local message, icon, _, spellId, _, _, count = ...
Private.ScanEvents("DBM_Announce", spellId, message, icon)
if self.isGeneric then
count = count and tostring(count) or "0"
@@ -1552,11 +1552,16 @@ Private.event_prototypes["Boss Mod Announce"] = {
type = "string",
preamble = "local counter = Private.ExecEnv.CreateTriggerCounter(%q)",
test = "counter:SetCount(tonumber(count) or 0) == nil and counter:Match()",
conditionPreamble = function(input)
return Private.ExecEnv.CreateTriggerCounter(input)
end,
conditionTest = function(state, needle, op, preamble)
return preamble:Check(state.count)
preamble:SetCount(tonumber(state.count) or 0)
return preamble:Match()
end,
store = true,
conditionType = "string",
operator_types = "none"
},
{
name = "cloneId",
+6 -7
View File
@@ -1966,7 +1966,7 @@ Buff2Frame:RegisterEvent("PLAYER_TARGET_CHANGED")
Buff2Frame:RegisterEvent("PARTY_MEMBERS_CHANGED")
Buff2Frame:RegisterEvent("RAID_ROSTER_UPDATE")
Buff2Frame:RegisterEvent("INSTANCE_ENCOUNTER_ENGAGE_UNIT")
if WeakAuras.isAwesomeEnabled() then
if WeakAuras.IsAwesomeEnabled() then
Buff2Frame:RegisterEvent("NAME_PLATE_UNIT_ADDED")
Buff2Frame:RegisterEvent("NAME_PLATE_UNIT_REMOVED")
end
@@ -2205,7 +2205,6 @@ end
--- Removes all data for an aura id
--- @param id number
function BuffTrigger.Delete(id)
BuffTrigger.UnloadDisplays({[id] = true})
triggerInfos[id] = nil
end
@@ -2501,7 +2500,7 @@ function BuffTrigger.Add(data)
local remFunc
if trigger.unit ~= "multi" and CanHaveMatchCheck(trigger) and trigger.useRem then
local remFuncStr = Private.function_strings.count:format(trigger.remOperator or ">=", tonumber(trigger.rem) or 0)
remFunc = Private.LoadFunction(remFuncStr)
remFunc = Private.LoadFunction(remFuncStr, id)
end
local names
@@ -2531,14 +2530,14 @@ function BuffTrigger.Add(data)
else
group_countFuncStr = Private.function_strings.count:format(">", 0)
end
groupCountFunc = Private.LoadFunction(group_countFuncStr)
groupCountFunc = Private.LoadFunction(group_countFuncStr, id)
end
local matchCountFunc
if HasMatchCount(trigger) and trigger.match_countOperator and trigger.match_count and tonumber(trigger.match_count) then
local count = tonumber(trigger.match_count)
local match_countFuncStr = Private.function_strings.count:format(trigger.match_countOperator, count)
matchCountFunc = Private.LoadFunction(match_countFuncStr)
matchCountFunc = Private.LoadFunction(match_countFuncStr, id)
elseif IsGroupTrigger(trigger) then
if trigger.showClones and not trigger.combinePerUnit then
matchCountFunc = GreaterEqualOne
@@ -2556,7 +2555,7 @@ function BuffTrigger.Add(data)
and tonumber(trigger.matchPerUnit_count) and trigger.matchPerUnit_countOperator then
local count = tonumber(trigger.matchPerUnit_count)
local match_countFuncStr = Private.function_strings.count:format(trigger.matchPerUnit_countOperator, count)
matchPerUnitCountFunc = Private.LoadFunction(match_countFuncStr)
matchPerUnitCountFunc = Private.LoadFunction(match_countFuncStr, id)
end
local groupTrigger = trigger.unit == "group" or trigger.unit == "raid" or trigger.unit == "party"
@@ -3579,7 +3578,7 @@ function BuffTrigger.InitMultiAura()
multiAuraFrame:RegisterEvent("UNIT_AURA")
multiAuraFrame:RegisterEvent("PLAYER_TARGET_CHANGED")
multiAuraFrame:RegisterEvent("PLAYER_FOCUS_CHANGED")
if WeakAuras.isAwesomeEnabled() then
if WeakAuras.IsAwesomeEnabled() then
multiAuraFrame:RegisterEvent("NAME_PLATE_UNIT_ADDED")
multiAuraFrame:RegisterEvent("NAME_PLATE_UNIT_REMOVED")
end
+4
View File
@@ -114,6 +114,10 @@ RAID_CLASS_COLORS.SHAMAN.colorStr = "ff0070de"
RAID_CLASS_COLORS.WARRIOR.colorStr = "ffc79c6e"
RAID_CLASS_COLORS.DEATHKNIGHT.colorStr = "ffc41f3b"
function WrapTextInColorCode(text, colorHexString)
return ("|c%s%s|r"):format(colorHexString, text);
end
function CreateTextureMarkup(file, fileWidth, fileHeight, width, height, left, right, top, bottom, xOffset, yOffset)
return ("|T%s:%d:%d:%d:%d:%d:%d:%d:%d:%d:%d|t"):format(
file
+6 -5
View File
@@ -292,7 +292,7 @@ local function CreateTestForCondition(data, input, allConditionsTemplate, usedSt
end
elseif (cType == "customcheck") then
if value then
local customCheck = WeakAuras.LoadFunction("return " .. value)
local customCheck = WeakAuras.LoadFunction("return " .. value, data.id)
if customCheck then
Private.ExecEnv.conditionHelpers[uid] = Private.ExecEnv.conditionHelpers[uid] or {}
Private.ExecEnv.conditionHelpers[uid].customTestFunctions
@@ -378,7 +378,7 @@ local function CreateTestForCondition(data, input, allConditionsTemplate, usedSt
fn = fn:format(input.op_range, input.range, op, value)
end
if fn then
local customCheck = WeakAuras.LoadFunction(fn)
local customCheck = WeakAuras.LoadFunction(fn, data.id)
if customCheck then
Private.ExecEnv.conditionHelpers[uid] = Private.ExecEnv.conditionHelpers[uid] or {}
Private.ExecEnv.conditionHelpers[uid].customTestFunctions
@@ -654,7 +654,7 @@ function Private.LoadConditionPropertyFunctions(data)
else
prefix, suffix = "return function()", "\nend";
end
local customFunc = WeakAuras.LoadFunction(prefix .. custom .. suffix);
local customFunc = WeakAuras.LoadFunction(prefix .. custom .. suffix, data.id);
if (customFunc) then
Private.ExecEnv.customConditionsFunctions[id][conditionNumber] = Private.ExecEnv.customConditionsFunctions[id][conditionNumber] or {};
Private.ExecEnv.customConditionsFunctions[id][conditionNumber].changes = Private.ExecEnv.customConditionsFunctions[id][conditionNumber].changes or {};
@@ -835,7 +835,7 @@ function Private.LoadConditionFunction(data)
CancelTimers(data.uid)
local checkConditionsFuncStr = ConstructConditionFunction(data);
local checkConditionsFunc = checkConditionsFuncStr and Private.LoadFunction(checkConditionsFuncStr)
local checkConditionsFunc = checkConditionsFuncStr and Private.LoadFunction(checkConditionsFuncStr, data.id)
checkConditions[data.uid] = checkConditionsFunc;
end
@@ -1014,7 +1014,8 @@ function Private.RegisterForGlobalConditions(uid)
dynamicConditionsFrame.units[unit] = CreateFrame("Frame");
dynamicConditionsFrame.units[unit]:SetScript("OnEvent", handleDynamicConditionsPerUnit);
end
pcall(dynamicConditionsFrame.units[unit].RegisterUnitEvent, dynamicConditionsFrame.units[unit], unitEvent, unit);
dynamicConditionsFrame.units[unit].unit = unit;
pcall(dynamicConditionsFrame.units[unit].RegisterEvent, dynamicConditionsFrame.units[unit], unitEvent, unit);
UpdateDynamicConditionsPerUnitState(dynamicConditionsFrame, event, unit)
else
pcall(dynamicConditionsFrame.RegisterEvent, dynamicConditionsFrame, event);
+3
View File
@@ -42,15 +42,18 @@ Private.DiscordList = {
[=[MetalMusicMan]=],
[=[Murph]=],
[=[Mynze]=],
[=[NoM0Re]=],
[=[Nona]=],
[=[NostraDumAzz]=],
[=[Oi]=],
[=[opti]=],
[=[Ora]=],
[=[phoenix7700]=],
[=[pit]=],
[=[Putro]=],
[=[reggie]=],
[=[Reloe]=],
[=[Saaggs]=],
[=[Spaten]=],
[=[Tel]=],
[=[Translit]=],
File diff suppressed because it is too large Load Diff
+27 -2
View File
@@ -9,16 +9,25 @@ WeakAuras.halfWidth = WeakAuras.normalWidth / 2
WeakAuras.doubleWidth = WeakAuras.normalWidth * 2
local versionStringFromToc = GetAddOnMetadata("WeakAuras", "Version")
local versionString = "5.19.9 Beta"
local versionString = "5.19.10 Beta"
local buildTime = "20250425191700"
local isAwesomeEnabled = C_NamePlate and C_NamePlate.GetNamePlateForUnit and true or false
local flavor
if GetRealmName() == "Onyxia" or (GetRealmName() == "Blackrock [PvP only]" and GetExpansionLevel() == 1) then
flavor = "TBC"
elseif GetRealmName() == "Kezan" then
flavor = "ClassicPlus"
else
flavor = "Wrath"
end
WeakAuras.versionString = versionString
WeakAuras.buildTime = buildTime
WeakAuras.newFeatureString = "|TInterface\\OptionsFrame\\UI-OptionsFrame-NewFeatureIcon:0|t"
WeakAuras.BuildInfo = select(4, GetBuildInfo())
function WeakAuras.isAwesomeEnabled()
function WeakAuras.IsAwesomeEnabled()
return isAwesomeEnabled or false
end
@@ -26,6 +35,22 @@ function WeakAuras.IsCorrectVersion()
return true
end
function WeakAuras.IsWrath()
return flavor == "Wrath"
end
function WeakAuras.IsTBC()
return flavor == "TBC"
end
function WeakAuras.IsClassicPlus()
return flavor == "ClassicPlus"
end
function WeakAuras.IsClassicPlusOrTBC()
return WeakAuras.IsClassicPlus() or WeakAuras.IsTBC()
end
WeakAuras.prettyPrint = function(...)
print("|cff9900ffWeakAuras:|r ", ...)
end
File diff suppressed because it is too large Load Diff
+10 -8
View File
@@ -185,6 +185,8 @@ L["Assigned Role"] = "Zugewiesene Rolle"
L["Assigned Role Icon"] = "Assigned Role Icon"
--[[Translation missing --]]
L["Assist"] = "Assist"
--[[Translation missing --]]
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "Zumindest ein Feind"
L["At missing Value"] = "Bei fehlendem Wert"
L["At Percent"] = "Bei Prozent"
@@ -742,6 +744,8 @@ L["Error Frame"] = "Fehlerfenster"
--[[Translation missing --]]
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "ERROR in '%s' unknown or incompatible sub element type '%s'"
--[[Translation missing --]]
L["Error in aura '%s'"] = "Error in aura '%s'"
--[[Translation missing --]]
L["Error not receiving display information from %s"] = "Error not receiving display information from %s"
--[[Translation missing --]]
L["Essence"] = "Essence"
@@ -987,10 +991,10 @@ L["Icon Function"] = "Icon Function"
--[[Translation missing --]]
L["Icon Function (fallback state)"] = "Icon Function (fallback state)"
--[[Translation missing --]]
L["Id"] = "Id"
--[[Translation missing --]]
L["ID"] = "ID"
--[[Translation missing --]]
L["Id"] = "Id"
--[[Translation missing --]]
L["If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"] = "If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"
--[[Translation missing --]]
L["Ignore Dead"] = "Ignore Dead"
@@ -1233,10 +1237,10 @@ E.g. 1;2;1;2;2.5;3]=] ] = [=[Matches stage number of encounter journal.
Intermissions are .5
E.g. 1;2;1;2;2.5;3]=]
--[[Translation missing --]]
L["Max Char "] = "Max Char "
--[[Translation missing --]]
L["Max Char"] = "Max Char"
--[[Translation missing --]]
L["Max Char "] = "Max Char "
--[[Translation missing --]]
L["Max Charges"] = "Max Charges"
--[[Translation missing --]]
L["Max Health"] = "Max Health"
@@ -1329,8 +1333,6 @@ L["Name/Realm of Caster's Target"] = "Name/Realm of Caster's Target"
--[[Translation missing --]]
L["Nameplate"] = "Nameplate"
--[[Translation missing --]]
L["Nameplate Type"] = "Nameplate Type"
--[[Translation missing --]]
L["Nameplates"] = "Nameplates"
--[[Translation missing --]]
L["Names of affected Players"] = "Names of affected Players"
@@ -1617,9 +1619,9 @@ L["Progress Total"] = "Totaler Fortschritt"
L["Progress Value"] = "Fortschrittswert"
L["Pulse"] = "Pulsieren"
L["PvP Flagged"] = "PvP aktiv"
L["PvP Talent selected"] = "Gewähltes PvP-Talent"
--[[Translation missing --]]
L["PvP Talent Selected"] = "PvP Talent Selected"
L["PvP Talent selected"] = "Gewähltes PvP-Talent"
--[[Translation missing --]]
L["Quality Id"] = "Quality Id"
--[[Translation missing --]]
@@ -2055,8 +2057,8 @@ L["Talent |cFFFF0000Not|r Known"] = "Talent |cFFFF0000Not|r Known"
L["Talent |cFFFF0000Not|r Selected"] = "Talent |cFFFF0000Not|r Selected"
--[[Translation missing --]]
L["Talent Known"] = "Talent Known"
L["Talent Selected"] = "Talent gewählt"
L["Talent selected"] = "Gewähltes Talent"
L["Talent Selected"] = "Talent gewählt"
L["Talent Specialization"] = "Talentspezialisierung"
L["Tanking And Highest"] = "Höchster und Aggro"
L["Tanking But Not Highest"] = "Aggro aber nicht höchste"
+5 -4
View File
@@ -139,6 +139,7 @@ L["Ascending"] = "Ascending"
L["Assigned Role"] = "Assigned Role"
L["Assigned Role Icon"] = "Assigned Role Icon"
L["Assist"] = "Assist"
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "At Least One Enemy"
L["At missing Value"] = "At missing Value"
L["At Percent"] = "At Percent"
@@ -498,6 +499,7 @@ L["Error decompressing. This doesn't look like a WeakAuras import."] = "Error de
L["Error deserializing"] = "Error deserializing"
L["Error Frame"] = "Error Frame"
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "ERROR in '%s' unknown or incompatible sub element type '%s'"
L["Error in aura '%s'"] = "Error in aura '%s'"
L["Error not receiving display information from %s"] = "Error not receiving display information from %s"
L["Essence"] = "Essence"
L["Essence #1"] = "Essence #1"
@@ -652,8 +654,8 @@ L["Hybrid"] = "Hybrid"
L["Icon"] = "Icon"
L["Icon Function"] = "Icon Function"
L["Icon Function (fallback state)"] = "Icon Function (fallback state)"
L["Id"] = "Id"
L["ID"] = "ID"
L["Id"] = "Id"
L["If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"] = "If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"
L["Ignore Dead"] = "Ignore Dead"
L["Ignore Disconnected"] = "Ignore Disconnected"
@@ -861,7 +863,6 @@ L["Name of the (sub-)zone currently shown above the minimap."] = "Name of the (s
L["Name(s)"] = "Name(s)"
L["Name/Realm of Caster's Target"] = "Name/Realm of Caster's Target"
L["Nameplate"] = "Nameplate"
L["Nameplate Type"] = "Nameplate Type"
L["Nameplates"] = "Nameplates"
L["Names of affected Players"] = "Names of affected Players"
L["Names of unaffected Players"] = "Names of unaffected Players"
@@ -1069,8 +1070,8 @@ L["Progress Total"] = "Progress Total"
L["Progress Value"] = "Progress Value"
L["Pulse"] = "Pulse"
L["PvP Flagged"] = "PvP Flagged"
L["PvP Talent selected"] = "PvP Talent selected"
L["PvP Talent Selected"] = "PvP Talent Selected"
L["PvP Talent selected"] = "PvP Talent selected"
L["Quality Id"] = "Quality Id"
L["Quantity"] = "Quantity"
L["Quantity earned this week"] = "Quantity earned this week"
@@ -1341,8 +1342,8 @@ L["Talent"] = "Talent"
L["Talent |cFFFF0000Not|r Known"] = "Talent |cFFFF0000Not|r Known"
L["Talent |cFFFF0000Not|r Selected"] = "Talent |cFFFF0000Not|r Selected"
L["Talent Known"] = "Talent Known"
L["Talent Selected"] = "Talent Selected"
L["Talent selected"] = "Talent selected"
L["Talent Selected"] = "Talent Selected"
L["Talent Specialization"] = "Talent Specialization"
L["Tanking And Highest"] = "Tanking And Highest"
L["Tanking But Not Highest"] = "Tanking But Not Highest"
+11 -13
View File
@@ -124,6 +124,8 @@ L["Ascending"] = "Ascendente"
L["Assigned Role"] = "Rol asignado"
L["Assigned Role Icon"] = "Icono del rol asignado"
L["Assist"] = "Ayudante"
--[[Translation missing --]]
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "Como Mínimo un Enemigo"
L["At missing Value"] = "Al faltar el valor"
L["At Percent"] = "Al porcentaje"
@@ -317,14 +319,10 @@ L["Could not load WeakAuras Archive, the addon is %s"] = "No se pudo cargar Weak
L["Count"] = "Recuento"
L["Counter Clockwise"] = "En sentido anti-horario"
L["Create"] = "Crear"
--[[Translation missing --]]
L["Creature Family"] = "Creature Family"
--[[Translation missing --]]
L["Creature Family Name"] = "Creature Family Name"
--[[Translation missing --]]
L["Creature Type"] = "Creature Type"
--[[Translation missing --]]
L["Creature Type Name"] = "Creature Type Name"
L["Creature Family"] = "Familia de criatura"
L["Creature Family Name"] = "Nombre de familia de criatura"
L["Creature Type"] = "Tipo de criatura"
L["Creature Type Name"] = "Nombre de tipo de criatura"
L["Critical"] = "Crítico"
L["Critical (%)"] = "Crítico (%)"
L["Critical Rating"] = "Índice de crítico"
@@ -485,6 +483,7 @@ L["Error decompressing. This doesn't look like a WeakAuras import."] = "Error al
L["Error deserializing"] = "Error de deserialización"
L["Error Frame"] = "Marco de error"
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "ERROR en '%s' tipo de subelemento '%s' desconocido o incompatible"
L["Error in aura '%s'"] = "Error en el aura '%s'"
L["Error not receiving display information from %s"] = "Error al no recibir información de visualización de %s"
L["Essence"] = "Esencia"
L["Essence #1"] = "Esencia #1"
@@ -639,8 +638,8 @@ L["Hybrid"] = "Híbrido"
L["Icon"] = "Icono"
L["Icon Function"] = "Función de icono"
L["Icon Function (fallback state)"] = "Función de icono (estado de reserva)"
L["Id"] = "ID"
L["ID"] = "ID"
L["Id"] = "ID"
L["If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"] = "Si necesitas más ayuda, abre un ticket en GitHub o visita nuestro Discord en https://discord.gg/weakauras."
L["Ignore Dead"] = "Ignorar muertos"
L["Ignore Disconnected"] = "Ignorar desconectados"
@@ -676,8 +675,8 @@ L["Instakill"] = "Muerte Instantanea"
L["Install the addons BugSack and BugGrabber for detailed error logs."] = "Instala los addons BugSack y BugGrabber para obtener registros de errores detallados."
L["Instance"] = "Instancia"
L["Instance Difficulty"] = "Dificultad de la instancia"
L["Instance Id"] = "ID de estancia"
L["Instance ID"] = "ID de estancia"
L["Instance Id"] = "ID de estancia"
L["Instance Info"] = "Info de estancia"
L["Instance Name"] = "Nombre de estancia"
L["Instance Size Type"] = "Tipo de tamaño de estancia"
@@ -846,7 +845,6 @@ L["Name of the (sub-)zone currently shown above the minimap."] = "Nombre de la (
L["Name(s)"] = "Nombre(s)"
L["Name/Realm of Caster's Target"] = "Nombre/Reino del objetivo del lanzador"
L["Nameplate"] = "Placa"
L["Nameplate Type"] = "Tipo de placa"
L["Nameplates"] = "Placas"
L["Names of affected Players"] = "Nombres de los jugadores afectados"
L["Names of unaffected Players"] = "Nombres de los jugadores no afectados"
@@ -1019,8 +1017,8 @@ L["Progress Total"] = "Progreso total"
L["Progress Value"] = "Valor de progreso"
L["Pulse"] = "Pulso"
L["PvP Flagged"] = "Marcado JcJ"
L["PvP Talent selected"] = "Talento de JcJ seleccionado"
L["PvP Talent Selected"] = "Talento de JcJ seleccionado"
L["PvP Talent selected"] = "Talento de JcJ seleccionado"
L["Quality Id"] = "ID de calidad"
L["Quantity"] = "Cantidad"
L["Quantity earned this week"] = "Cantidad ganada esta semana"
@@ -1285,8 +1283,8 @@ L["Talent"] = "Talento"
L["Talent |cFFFF0000Not|r Known"] = "Talento |cFFFF0000desconocido|r"
L["Talent |cFFFF0000Not|r Selected"] = "Talento |cFFFF0000no|r seleccionado"
L["Talent Known"] = "Talento conocido"
L["Talent Selected"] = "Talento seleccionado"
L["Talent selected"] = "Talento seleccionado"
L["Talent Selected"] = "Talento seleccionado"
L["Talent Specialization"] = "Especialización de Talentos"
L["Tanking And Highest"] = "Tanqueando y el más alto"
L["Tanking But Not Highest"] = "Tanqueando pero no el mas alto"
+10 -12
View File
@@ -124,6 +124,8 @@ L["Ascending"] = "Ascendente"
L["Assigned Role"] = "Rol asignado"
L["Assigned Role Icon"] = "Icono del rol asignado"
L["Assist"] = "Ayudante"
--[[Translation missing --]]
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "Como Mínimo un Enemigo"
L["At missing Value"] = "Al faltar el valor"
L["At Percent"] = "Al porcentaje"
@@ -317,14 +319,10 @@ L["Could not load WeakAuras Archive, the addon is %s"] = "No se pudo cargar Weak
L["Count"] = "Recuento"
L["Counter Clockwise"] = "En sentido anti-horario"
L["Create"] = "Crear"
--[[Translation missing --]]
L["Creature Family"] = "Creature Family"
--[[Translation missing --]]
L["Creature Family Name"] = "Creature Family Name"
--[[Translation missing --]]
L["Creature Type"] = "Creature Type"
--[[Translation missing --]]
L["Creature Type Name"] = "Creature Type Name"
L["Creature Family"] = "Familia de criatura"
L["Creature Family Name"] = "Nombre de familia de criatura"
L["Creature Type"] = "Tipo de criatura"
L["Creature Type Name"] = "Nombre de tipo de criatura"
L["Critical"] = "Crítico"
L["Critical (%)"] = "Crítico (%)"
L["Critical Rating"] = "Índice de crítico"
@@ -485,6 +483,7 @@ L["Error decompressing. This doesn't look like a WeakAuras import."] = "Error al
L["Error deserializing"] = "Error de deserialización"
L["Error Frame"] = "Marco de error"
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "ERROR en '%s' tipo de subelemento '%s' desconocido o incompatible"
L["Error in aura '%s'"] = "Error en el aura '%s'"
L["Error not receiving display information from %s"] = "Error al no recibir información de visualización de %s"
L["Essence"] = "Esencia"
L["Essence #1"] = "Esencia #1"
@@ -639,8 +638,8 @@ L["Hybrid"] = "Híbrido"
L["Icon"] = "Icono"
L["Icon Function"] = "Función de icono"
L["Icon Function (fallback state)"] = "Función de icono (estado de reserva)"
L["Id"] = "ID"
L["ID"] = "ID"
L["Id"] = "ID"
L["If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"] = "Si necesitas más ayuda, abre un ticket en GitHub o visita nuestro Discord en https://discord.gg/weakauras."
L["Ignore Dead"] = "Ignorar muertos"
L["Ignore Disconnected"] = "Ignorar desconectados"
@@ -789,8 +788,8 @@ L["Matches (Pattern)"] = "Corresponde (Patrón)"
L[ [=[Matches stage number of encounter journal.
Intermissions are .5
E.g. 1;2;1;2;2.5;3]=] ] = "Coincide con el número de etapa del diario de encuentros. Los intermedios son .5 Por ej. 1;2;1;2;2.5;3"
L["Max Char "] = "Caracteres máx."
L["Max Char"] = "Carácter máximo"
L["Max Char "] = "Caracteres máx."
L["Max Charges"] = "Cargas máx."
L["Max Health"] = "Salud máx."
L["Max Power"] = "Poder máx."
@@ -847,7 +846,6 @@ L["Name of the (sub-)zone currently shown above the minimap."] = "Nombre de la (
L["Name(s)"] = "Nombre(s)"
L["Name/Realm of Caster's Target"] = "Nombre/Reino del objetivo del lanzador"
L["Nameplate"] = "Placa"
L["Nameplate Type"] = "Tipo de placa"
L["Nameplates"] = "Placas"
L["Names of affected Players"] = "Nombres de los jugadores afectados"
L["Names of unaffected Players"] = "Nombres de los jugadores no afectados"
@@ -1020,8 +1018,8 @@ L["Progress Total"] = "Progreso total"
L["Progress Value"] = "Valor de progreso"
L["Pulse"] = "Pulso"
L["PvP Flagged"] = "Marcado JcJ"
L["PvP Talent selected"] = "Talento de JcJ seleccionado"
L["PvP Talent Selected"] = "Talento de JcJ seleccionado"
L["PvP Talent selected"] = "Talento de JcJ seleccionado"
L["Quality Id"] = "ID de calidad"
L["Quantity"] = "Cantidad"
L["Quantity earned this week"] = "Cantidad ganada esta semana"
+39 -67
View File
@@ -21,22 +21,16 @@ L["|cffeda55fLeft-Click|r to toggle showing the main window."] = "|cffeda55fClic
L["|cffeda55fMiddle-Click|r to toggle the minimap icon on or off."] = "Clique du milieu pour activer ou désactiver l'icône de la mini-carte."
L["|cffeda55fRight-Click|r to toggle performance profiling window."] = "|cffeda55fClic-Droit|r pour basculer la fenêtre de profilage des performances."
L["|cffeda55fShift-Click|r to pause addon execution."] = "|cffeda55fMaj-Clic|r Pour suspendre l'exécution de l'addon."
--[[Translation missing --]]
L["|cffff0000deprecated|r"] = "|cffff0000deprecated|r"
L["|cffff0000deprecated|r"] = "|cffff0000obsolète|r"
L["|cFFFF0000Not|r Item Bonus Id Equipped"] = "ID du bonus de l'objet |cFFFF0000non|r équipé"
--[[Translation missing --]]
L["|cFFFF0000Not|r Item Equipped"] = "|cFFFF0000Not|r Item Equipped"
L["|cFFFF0000Not|r Item Equipped"] = "Objet |cFFFF0000non|r équipé"
L["|cFFFF0000Not|r Player Name/Realm"] = "|cFFFF0000Not|r Nom du joueur / serveur"
--[[Translation missing --]]
L["|cFFFF0000Not|r Spell Known"] = "|cFFFF0000Not|r Spell Known"
--[[Translation missing --]]
L[ [=[|cFFFF0000Support for unfiltered COMBAT_LOG_EVENT_UNFILTERED is deprecated|r
COMBAT_LOG_EVENT_UNFILTERED without a filter are disabled as its very performance costly.
Find more information:
https://github.com/WeakAuras/WeakAuras2/wiki/Custom-Triggers#events]=] ] = [=[|cFFFF0000Support for unfiltered COMBAT_LOG_EVENT_UNFILTERED is deprecated|r
COMBAT_LOG_EVENT_UNFILTERED without a filter are disabled as its very performance costly.
Find more information:
https://github.com/WeakAuras/WeakAuras2/wiki/Custom-Triggers#events]=]
https://github.com/WeakAuras/WeakAuras2/wiki/Custom-Triggers#events]=] ] = "|cFFFF0000La prise en charge des événements COMBAT_LOG_EVENT_UNFILTERED non filtrés est obsolète|r Les événements COMBAT_LOG_EVENT_UNFILTERED sans filtre sont désactivés, car ils nuisent fortement aux performances. Plus d'informations : https://github.com/WeakAuras/WeakAuras2/wiki/Custom-Triggers#events"
L["|cFFffcc00Extra Options:|r %s"] = "|cFFffcc00Options supplémentaires :|r %s"
L["|cFFffcc00Extra Options:|r None"] = "|cFFffcc00Options supplémentaires :|r Aucun"
L[ [=[ |cff00ff00Player|r, |cff00ff00Target|r, |cff00ff00Focus|r, and |cff00ff00Pet|r correspond directly to those individual unitIDs.
@@ -45,20 +39,15 @@ L[ [=[• |cff00ff00Player|r, |cff00ff00Target|r, |cff00ff00Focus|r, and |cff00f
|cffffff00Party|r, |cffffff00Raid|r, |cffffff00Boss|r, |cffffff00Arena|r, and |cffffff00Nameplate|r can match multiple corresponding unitIDs.
|cffffff00Smart Group|r adjusts to your current group type, matching just the "player" when solo, "party" units (including "player") in a party or "raid" units in a raid.
|cffffff00*|r Yellow Unit settings will create clones for each matching unit while this trigger is providing Dynamic Info to the Aura.]=] ] = [=[ |cff00ff00Joueur|r, |cff00ff00Cible|r, |cff00ff00Focalisation|r, and |cff00ff00Animal de compagnie|r
correspondent directement à ces identifiants d'unités individuelles. • |cff00ff00Unité spécifique|r vous permet de fournir un identifiant d'unité spécifique valide à surveiller. |cffff0000Note|r : Le jeu ne déclenchera pas d'événements pour tous les identifiants d'unités valides, ce qui rendra certains d'entre eux non traçables par ce déclencheur. • |cffffff00Groupe|r, |cffffff00Raid|r, |cffffff00Boss|r, |cffffff00Arène|r, et |cffffff00Nameplate|r peut correspondre à plusieurs identifiant d'unité. Le |cffffff00groupe intelligent|r s'adapte à votre type de groupe actuel, en ne faisant correspondre que le "joueur" en solo, les unités du "groupe" (y compris le "joueur") dans un groupe ou les unités du "raid" dans un raid. |cffffff00*|r Les paramètres de l'unité jaune créeront des clones pour chaque unité correspondante pendant que ce déclencheur fournit des informations dynamiques à l'Aura.]=]
--[[Translation missing --]]
L["1. Profession 1. Accessory"] = "1. Profession 1. Accessory"
--[[Translation missing --]]
L["1. Profession 2. Accessory"] = "1. Profession 2. Accessory"
--[[Translation missing --]]
L["1. Professsion Tool"] = "1. Professsion Tool"
|cffffff00*|r Yellow Unit settings will create clones for each matching unit while this trigger is providing Dynamic Info to the Aura.]=] ] = "• |cff00ff00Joueur|r, |cff00ff00Cible|r, |cff00ff00Focalisation|r et |cff00ff00Familier|r correspondent directement à ces identifiants dunité spécifiques. • |cff00ff00Unité spécifique|r vous permet dindiquer un identifiant dunité valide à surveiller. |cffff0000Remarque|r : Le jeu ne déclenche pas d’événements pour tous les identifiants dunité valides, ce qui rend certains non traçables par ce déclencheur. • |cffffff00Groupe|r, |cffffff00Raid|r, |cffffff00Boss|r, |cffffff00Arène|r et |cffffff00Barre de vie|r peuvent correspondre à plusieurs identifiants dunité associés. • |cffffff00Groupe intelligent|r sajuste en fonction de votre type de groupe actuel : il correspond uniquement au \"joueur\" en solo, aux unités du \"groupe\" (y compris le joueur) en groupe, ou aux unités du \"raid\" en raid. |cffffff00*|r Les paramètres dunité en jaune créeront des clones pour chaque unité correspondante tant que ce déclencheur fournit des informations dynamiques à laura."
L["1. Profession 1. Accessory"] = "1. Profession 1. Accessoire"
L["1. Profession 2. Accessory"] = "1. Profession 2. Accessoire"
L["1. Professsion Tool"] = "1. Outil de profession"
L["10 Man Raid"] = "Raid 10 Joueurs"
L["10 Player Raid"] = "Raid à 10 joueurs"
L["10 Player Raid (Heroic)"] = "Raid 10 Joueurs (Héroïque)"
L["10 Player Raid (Normal)"] = "Raid 10 Joueurs (Normal)"
--[[Translation missing --]]
L["2. Profession 1. Accessory"] = "2. Profession 1. Accessory"
L["10 Player Raid"] = "Raid à 10 Joueurs"
L["10 Player Raid (Heroic)"] = "Raid à 10 Joueurs (Héroïque)"
L["10 Player Raid (Normal)"] = "Raid à 10 Joueurs (Normal)"
L["2. Profession 1. Accessory"] = "2. Profession 1. Accessoire"
--[[Translation missing --]]
L["2. Profession 2. Accessory"] = "2. Profession 2. Accessory"
--[[Translation missing --]]
@@ -139,8 +128,7 @@ L["Amount"] = "Quantité"
L["Anchoring"] = "Anchoring"
--[[Translation missing --]]
L["And Talent"] = "And Talent"
--[[Translation missing --]]
L["Angle and Radius"] = "Angle and Radius"
L["Angle and Radius"] = "Angle et rayon"
L["Animations"] = "Animations"
L["Anticlockwise"] = "Sens anti-horaire"
L["Anub'Rekhan"] = "Anub'Rekhan"
@@ -161,6 +149,8 @@ L["Assigned Role"] = "Rôle assigné"
L["Assigned Role Icon"] = "Icône de rôle assigné"
--[[Translation missing --]]
L["Assist"] = "Assist"
--[[Translation missing --]]
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "Au moins un ennemi"
--[[Translation missing --]]
L["At missing Value"] = "At missing Value"
@@ -260,8 +250,7 @@ L["Black Wing Lair"] = "Black Wing Lair"
--[[Translation missing --]]
L["Bleed"] = "Bleed"
L["Blizzard Combat Text"] = "Texte de Combat Blizzard"
--[[Translation missing --]]
L["Blizzard Cooldown Reduction"] = "Blizzard Cooldown Reduction"
L["Blizzard Cooldown Reduction"] = "Réduction du temps de recharge de Blizzard"
L["Block"] = "Bloc"
L["Block (%)"] = "Blocage"
L["Block against Target (%)"] = "Blocage contre la cible"
@@ -269,12 +258,10 @@ L["Block Value"] = "Valeur du bloc"
L["Blocked"] = "Bloqué"
--[[Translation missing --]]
L["Blood"] = "Blood"
--[[Translation missing --]]
L["Blood Rune #1"] = "Blood Rune #1"
L["Blood Rune #1"] = "Rune de sang #1"
--[[Translation missing --]]
L["Blood Rune #2"] = "Blood Rune #2"
--[[Translation missing --]]
L["Bloodlord Mandokir"] = "Bloodlord Mandokir"
L["Bloodlord Mandokir"] = "Seigneur sanglant Mandokir"
--[[Translation missing --]]
L["Bonus Reputation Gain"] = "Bonus Reputation Gain"
L["Border"] = "Encadrement"
@@ -549,14 +536,12 @@ L["Destination unit's raid mark index"] = "Destination unit's raid mark index"
L["Destination unit's raid mark texture"] = "Destination unit's raid mark texture"
--[[Translation missing --]]
L["Difficulty"] = "Difficulty"
--[[Translation missing --]]
L["Disable Spell Known Check"] = "Disable Spell Known Check"
L["Disable Spell Known Check"] = "Désactiver la vérification des sorts connus"
--[[Translation missing --]]
L["Disabled"] = "Disabled"
--[[Translation missing --]]
L["Disabled feature %q"] = "Disabled feature %q"
--[[Translation missing --]]
L["Disabled Spell Known Check"] = "Disabled Spell Known Check"
L["Disabled Spell Known Check"] = "Vérification des sorts connus désactivées"
--[[Translation missing --]]
L["Discovered"] = "Discovered"
L["Disease"] = "Maladie"
@@ -684,10 +669,11 @@ L["Error deserializing"] = "Error deserializing"
L["Error Frame"] = "Fenêtre d'erreur"
--[[Translation missing --]]
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "ERROR in '%s' unknown or incompatible sub element type '%s'"
--[[Translation missing --]]
L["Error in aura '%s'"] = "Error in aura '%s'"
L["Error not receiving display information from %s"] = "Erreur de non-réception d'informations d'affichage de %s"
--[[Translation missing --]]
L["Essence"] = "Essence"
--[[Translation missing --]]
L["Essence #1"] = "Essence #1"
--[[Translation missing --]]
L["Essence #2"] = "Essence #2"
@@ -800,8 +786,7 @@ L["Friendship Reputation"] = "Friendship Reputation"
--[[Translation missing --]]
L["Frost"] = "Frost"
L["Frost Resistance"] = "Résistance au givre"
--[[Translation missing --]]
L["Frost Rune #1"] = "Frost Rune #1"
L["Frost Rune #1"] = "Rune de givre n°1"
--[[Translation missing --]]
L["Frost Rune #2"] = "Frost Rune #2"
L["Full"] = "Plein"
@@ -887,8 +872,7 @@ L["Heroic Party"] = "Heroic Party"
L["Hide"] = "Cacher"
--[[Translation missing --]]
L["Hide 0 cooldowns"] = "Hide 0 cooldowns"
--[[Translation missing --]]
L["Hide Timer Text"] = "Hide Timer Text"
L["Hide Timer Text"] = "Masquer le texte du minuteur"
L["High Damage"] = "Dégâts élevés"
--[[Translation missing --]]
L["High Priest Thekal"] = "High Priest Thekal"
@@ -921,10 +905,10 @@ L["Icon Function"] = "Icon Function"
--[[Translation missing --]]
L["Icon Function (fallback state)"] = "Icon Function (fallback state)"
--[[Translation missing --]]
L["Id"] = "Id"
--[[Translation missing --]]
L["ID"] = "ID"
--[[Translation missing --]]
L["Id"] = "Id"
--[[Translation missing --]]
L["If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"] = "If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"
L["Ignore Dead"] = "Ignorer la mort"
L["Ignore Disconnected"] = "Ignorer les déconnectés"
@@ -987,8 +971,8 @@ L["Interrupt School"] = "Interrupt School"
--[[Translation missing --]]
L["Interrupted School Text"] = "Interrupted School Text"
L["Interruptible"] = "Interruptible"
L["Inverse"] = "Inverse"
L["Inverse Pet Behavior"] = "Inverser le Comportement du Familier"
L["Inverse"] = "Inverser"
L["Inverse Pet Behavior"] = "Inverser le comportement du familier"
--[[Translation missing --]]
L["Is Away from Keyboard"] = "Is Away from Keyboard"
--[[Translation missing --]]
@@ -1182,8 +1166,7 @@ L["Missing"] = "Manquant"
L["Mists of Pandaria"] = "Mists of Pandaria"
L["Moam"] = "Moam"
L["Model"] = "Modèle"
--[[Translation missing --]]
L["Modern Blizzard (1h 3m | 3m 7s | 10s | 2.4)"] = "Modern Blizzard (1h 3m | 3m 7s | 10s | 2.4)"
L["Modern Blizzard (1h 3m | 3m 7s | 10s | 2.4)"] = "Blizzard moderne (1h 3min | 3m 7s | 10s | 2.4)"
--[[Translation missing --]]
L["Modernize"] = "Modernize"
--[[Translation missing --]]
@@ -1202,7 +1185,7 @@ L["Monster Yell"] = "Cri de monstre"
L["Moon"] = "Moon"
L["Most remaining time"] = "Plus de temps restant"
L["Mounted"] = "En monture"
L["Mouse Cursor"] = "Curseur de Souris"
L["Mouse Cursor"] = "Curseur de la souris"
L["Movement Speed Rating"] = [=[Score de vitesse
]=]
L["Multi-target"] = "Multi-cibles"
@@ -1219,8 +1202,6 @@ L["Name of the (sub-)zone currently shown above the minimap."] = "Nom de la (sou
L["Name(s)"] = "Name(s)"
L["Name/Realm of Caster's Target"] = "Nom/Royaume de la Cible du Lanceur de sort"
L["Nameplate"] = "Barre de vie"
--[[Translation missing --]]
L["Nameplate Type"] = "Nameplate Type"
L["Nameplates"] = "Barres de vie"
L["Names of affected Players"] = "Noms des joueurs affectés"
L["Names of unaffected Players"] = "Noms des joueurs non affectés"
@@ -1344,8 +1325,7 @@ L["Officer"] = "Officier"
--[[Translation missing --]]
L["Offset from progress"] = "Offset from progress"
L["Offset Timer"] = "Décalage de la durée"
--[[Translation missing --]]
L["Old Blizzard (2h | 3m | 10s | 2.4)"] = "Old Blizzard (2h | 3m | 10s | 2.4)"
L["Old Blizzard (2h | 3m | 10s | 2.4)"] = "Blizzard ancien (2h | 3m | 10s | 2.4)"
L["On Cooldown"] = "En recharge"
--[[Translation missing --]]
L["On Taxi"] = "On Taxi"
@@ -1470,9 +1450,9 @@ L["Progress Total"] = "Progrès Total"
L["Progress Value"] = "Valeur de progression"
L["Pulse"] = "Pulsation"
L["PvP Flagged"] = "JcJ activé"
L["PvP Talent selected"] = "Talent JcJ sélectionné"
--[[Translation missing --]]
L["PvP Talent Selected"] = "PvP Talent Selected"
L["PvP Talent selected"] = "Talent JcJ sélectionné"
--[[Translation missing --]]
L["Quality Id"] = "Quality Id"
--[[Translation missing --]]
@@ -1527,10 +1507,8 @@ L["Receiving display information"] = "Réception d'information de graphique de %
L["Reflect"] = "Renvoi"
L["Region type %s not supported"] = "Région de type %s non supporté"
L["Relative"] = "Relatif"
--[[Translation missing --]]
L["Relative X-Offset"] = "Relative X-Offset"
--[[Translation missing --]]
L["Relative Y-Offset"] = "Relative Y-Offset"
L["Relative X-Offset"] = "Décalage sur l'axe X"
L["Relative Y-Offset"] = "Décalage sur l'axe Y"
L["Remaining Duration"] = "Durée Restante"
L["Remaining Time"] = "Temps restant"
L["Remove Obsolete Auras"] = "Retirer les auras obsolètes"
@@ -1969,17 +1947,13 @@ L["Toggle Options Window"] = "Activer/Désactiver la Fenêtre d'Options"
--[[Translation missing --]]
L["Toggle Performance Profiling Window"] = "Toggle Performance Profiling Window"
L["Tooltip"] = "Info-bulle"
--[[Translation missing --]]
L["Tooltip 1"] = "Tooltip 1"
--[[Translation missing --]]
L["Tooltip 2"] = "Tooltip 2"
--[[Translation missing --]]
L["Tooltip 3"] = "Tooltip 3"
L["Tooltip 1"] = "Info-bulle 1"
L["Tooltip 2"] = "Info-bulle 2"
L["Tooltip 3"] = "Info-bulle 3"
L["Tooltip Value 1"] = "Valeur de l'info-bulle 1"
L["Tooltip Value 2"] = "Valeur de l'info-bulle 2"
L["Tooltip Value 3"] = "Valeur de l'info-bulle 3"
--[[Translation missing --]]
L["Tooltip Value 4"] = "Tooltip Value 4"
L["Tooltip Value 4"] = "Valeur de l'info-bulle 4"
L["Top"] = "Haut"
L["Top Left"] = "Haut Gauche"
L["Top Right"] = "Haut Droite"
@@ -2091,10 +2065,8 @@ L["Use Texture"] = "Use Texture"
L["Use Watched Faction"] = "Use Watched Faction"
--[[Translation missing --]]
L["Uses UnitInRange() to check if in range. Matches default raid frames out of range behavior, which is between 25 to 40 yards depending on your class and spec."] = "Uses UnitInRange() to check if in range. Matches default raid frames out of range behavior, which is between 25 to 40 yards depending on your class and spec."
--[[Translation missing --]]
L["Using WeakAuras.clones is deprecated. Use WeakAuras.GetRegion(id, cloneId) instead."] = "Using WeakAuras.clones is deprecated. Use WeakAuras.GetRegion(id, cloneId) instead."
--[[Translation missing --]]
L["Using WeakAuras.regions is deprecated. Use WeakAuras.GetRegion(id) instead."] = "Using WeakAuras.regions is deprecated. Use WeakAuras.GetRegion(id) instead."
L["Using WeakAuras.clones is deprecated. Use WeakAuras.GetRegion(id, cloneId) instead."] = "L'utilisation de WeakAuras.clones est obsolète. Utilisez plutôt WeakAuras.GetRegion(id, cloneId)."
L["Using WeakAuras.regions is deprecated. Use WeakAuras.GetRegion(id) instead."] = "L'utilisation de WeakAuras.regions est obsolète. Utilisez plutôt WeakAuras.GetRegion(id)."
L["Vaelastrasz the Corrupt"] = "Vaelastrasz le Corrompu"
L["Versatility (%)"] = "Polyvalence (%)"
L["Versatility Rating"] = "Score de Polyvalence"
+12 -10
View File
@@ -142,6 +142,8 @@ L["Assigned Role"] = "Ruolo assegnato"
L["Assigned Role Icon"] = "Icona del ruolo assegnato"
--[[Translation missing --]]
L["Assist"] = "Assist"
--[[Translation missing --]]
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "Almeno un nemico"
L["At missing Value"] = "Al valore mancante"
L["At Percent"] = "In Percentuale"
@@ -694,6 +696,8 @@ L["Error Frame"] = "Error Frame"
--[[Translation missing --]]
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "ERROR in '%s' unknown or incompatible sub element type '%s'"
--[[Translation missing --]]
L["Error in aura '%s'"] = "Error in aura '%s'"
--[[Translation missing --]]
L["Error not receiving display information from %s"] = "Error not receiving display information from %s"
--[[Translation missing --]]
L["Essence"] = "Essence"
@@ -1000,10 +1004,10 @@ L["Icon Function"] = "Icon Function"
--[[Translation missing --]]
L["Icon Function (fallback state)"] = "Icon Function (fallback state)"
--[[Translation missing --]]
L["Id"] = "Id"
--[[Translation missing --]]
L["ID"] = "ID"
--[[Translation missing --]]
L["Id"] = "Id"
--[[Translation missing --]]
L["If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"] = "If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"
--[[Translation missing --]]
L["Ignore Dead"] = "Ignore Dead"
@@ -1298,10 +1302,10 @@ E.g. 1;2;1;2;2.5;3]=] ] = [=[Matches stage number of encounter journal.
Intermissions are .5
E.g. 1;2;1;2;2.5;3]=]
--[[Translation missing --]]
L["Max Char "] = "Max Char "
--[[Translation missing --]]
L["Max Char"] = "Max Char"
--[[Translation missing --]]
L["Max Char "] = "Max Char "
--[[Translation missing --]]
L["Max Charges"] = "Max Charges"
--[[Translation missing --]]
L["Max Health"] = "Max Health"
@@ -1414,8 +1418,6 @@ L["Name/Realm of Caster's Target"] = "Name/Realm of Caster's Target"
--[[Translation missing --]]
L["Nameplate"] = "Nameplate"
--[[Translation missing --]]
L["Nameplate Type"] = "Nameplate Type"
--[[Translation missing --]]
L["Nameplates"] = "Nameplates"
--[[Translation missing --]]
L["Names of affected Players"] = "Names of affected Players"
@@ -1760,10 +1762,10 @@ L["Pulse"] = "Pulse"
--[[Translation missing --]]
L["PvP Flagged"] = "PvP Flagged"
--[[Translation missing --]]
L["PvP Talent selected"] = "PvP Talent selected"
--[[Translation missing --]]
L["PvP Talent Selected"] = "PvP Talent Selected"
--[[Translation missing --]]
L["PvP Talent selected"] = "PvP Talent selected"
--[[Translation missing --]]
L["Quality Id"] = "Quality Id"
--[[Translation missing --]]
L["Quantity"] = "Quantity"
@@ -2292,10 +2294,10 @@ L["Talent |cFFFF0000Not|r Selected"] = "Talent |cFFFF0000Not|r Selected"
--[[Translation missing --]]
L["Talent Known"] = "Talent Known"
--[[Translation missing --]]
L["Talent Selected"] = "Talent Selected"
--[[Translation missing --]]
L["Talent selected"] = "Talent selected"
--[[Translation missing --]]
L["Talent Selected"] = "Talent Selected"
--[[Translation missing --]]
L["Talent Specialization"] = "Talent Specialization"
--[[Translation missing --]]
L["Tanking And Highest"] = "Tanking And Highest"
+33 -32
View File
@@ -10,7 +10,7 @@ L[ [=[ Filter formats: 'Name', 'Name-Realm', '-Realm'.
Supports multiple entries, separated by commas
Can use \ to escape -.]=] ] = [=[ : '이름', '이름-서버', '-서버'. , .
- \ .]=]
L["%s Overlay Color"] = "%s 오버레이 색깔"
L["%s Overlay Color"] = "%s 오버레이"
L["* Suffix"] = "* 접미사"
L["/wa help - Show this message"] = "/wa help - 이 메시지를 표시합니다"
L["/wa minimap - Toggle the minimap icon"] = "/wa minimap - 미니맵 아이콘을 켜거나 끕니다"
@@ -108,7 +108,7 @@ L["Alert Type"] = "경보 종류"
L["Alive"] = "생존"
L["All"] = "모두"
L["All children of this aura will also not be loaded, to minimize the chance of further corruption."] = "이 위크오라의 모든 자식 위크오라도 불러오지 않을 것입니다. 오염 가능성을 최소화하기 위함입니다."
L["All States table contains a non table at key: '%s'."] = "올 스테이트 테이블의 키에 테이블이 아닌 것을 포함하고 있습니다: '%s'."
L["All States table contains a non table at key: '%s'."] = "All States 테이블의 키에 테이블이 아닌 데이터가 있습니다: '%s'."
L["All Triggers"] = "활성 조건 전부 발동"
L["Alliance"] = "얼라이언스"
L["Allow partial matches"] = "부분 일치 허용"
@@ -116,7 +116,7 @@ L["Alpha"] = "불투명도"
L["Alternate Power"] = "보조 자원"
L["Always"] = "항상"
L["Always active trigger"] = "항상 활성 조건 활성화"
L["Always include realm"] = "항상 서버 포함"
L["Always include realm"] = "항상 서버명 표시"
L["Always True"] = "항상 참"
L["Amount"] = "수량"
L["Anchoring"] = "고정 중"
@@ -141,6 +141,7 @@ L["Ascending"] = "오름차순"
L["Assigned Role"] = "지정된 역할"
L["Assigned Role Icon"] = "지정된 역할 아이콘"
L["Assist"] = "부공격대장"
L["Assisted Combat Next Cast"] = "전투 보조 다음 시전"
L["At Least One Enemy"] = "최소 1명의 적 대상"
L["At missing Value"] = "잃은 수치"
L["At Percent"] = "백분율"
@@ -187,7 +188,7 @@ L["Ayamiss the Hunter"] = "사냥꾼 아야미스"
L["Azuregos"] = "아주어고스"
L["Back and Forth"] = "왕복"
L["Background"] = "배경"
L["Background Color"] = "배경 색깔"
L["Background Color"] = "배경"
L["Balnazzar"] = "발나자르"
L["Bar Color/Gradient Start"] = "바 색깔/그라디언트 첫 색깔"
L["Bar enabled in BigWigs settings"] = "타이머 바가 BigWigs 설정에서 활성화됨"
@@ -359,14 +360,14 @@ L["Current Zone Group"] = "현재 있는 지역 그룹"
L["Curse"] = "저주"
L["Custom"] = "사용자 정의"
L["Custom Action"] = "사용자 정의 동작"
L["Custom Anchor"] = "사용자 정의 방식 고정"
L["Custom Anchor"] = "사용자 정의 위치 고정"
L["Custom Check"] = "사용자 정의 검사"
L["Custom Color"] = "사용자 정의 색깔"
L["Custom Condition Code"] = "사용자 정의 조건 코드"
L["Custom Configuration"] = "사용자 정의 구성"
L["Custom Fade Animation"] = "사용자 정의 사라짐 애니메이션"
L["Custom Function"] = "사용자 정의 함수"
L["Custom Grow"] = "사용자 정의 확장 방식"
L["Custom Grow"] = "사용자 정의 그룹 확장"
L["Custom Sort"] = "사용자 정의 정렬"
L["Custom Text Function"] = "사용자 정의 텍스트 함수"
L["Custom Trigger Combination"] = "사용자 정의 활성 조건 조합"
@@ -436,11 +437,11 @@ L["Dungeon (Mythic+)"] = "던전 (신화+)"
L["Dungeon (Normal)"] = "던전 (일반)"
L["Dungeon (Timewalking)"] = "던전 (시간여행)"
L["Dungeons"] = "던전"
L["Durability Damage"] = "내구도 손상"
L["Durability Damage All"] = "전부위 내구도 손상"
L["Durability Damage"] = "내구도 감소"
L["Durability Damage All"] = "전부위 내구도 감소"
L["Duration"] = "지속시간"
L["Duration Function"] = "지속시간 함수"
L["Duration Function (fallback state)"] = "지속시간 함수 (폴백 스테이트)"
L["Duration Function (fallback state)"] = "Duration 함수 (고장 대체 상태)"
L["Ease In"] = "시작시 지연"
L["Ease In and Out"] = "시작과 끝에 지연"
L["Ease Out"] = "끝날때 지연"
@@ -468,12 +469,12 @@ L["Empowered Fully Charged"] = "강화 주문 끝까지 충전"
L["Empty"] = "비었을 때"
L["Enabled feature %q"] = "%q 기능 활성화"
L["Enables (incorrect) round down of seconds, which was the previous default behavior."] = "예전에 기본 작동 방식이었던 초단위 버림 계산을 활성화 합니다. (부정확함)"
L["Enchant Applied"] = "마법부여 "
L["Enchant Applied"] = "임시 마법부여 "
L["Enchant Found"] = "마법부여 되있음"
L["Enchant ID"] = "마법부여 ID"
L["Enchant Missing"] = "마법부여 없음"
L["Enchant Name or ID"] = "마법부여 이름 또는 ID"
L["Enchant Removed"] = "마법부여 사라"
L["Enchant Removed"] = "임시 마법부여 지워"
L["Enchanted"] = "마법부여됨"
L["Encounter ID(s)"] = "보스전(Encounter) ID (여럿 가능)"
L["Energize"] = "마력 얻음"
@@ -500,6 +501,7 @@ L["Error decompressing. This doesn't look like a WeakAuras import."] = "압축
L["Error deserializing"] = "역직렬화 오류"
L["Error Frame"] = "오류창"
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "'%s'에서 오류 알 수 없거나 비호환 하위 요소 유형 '%s'"
L["Error in aura '%s'"] = "'%s' 위크오라에 오류 발생"
L["Error not receiving display information from %s"] = "%s에게서 디스플레이 정보를 받지 못하는 오류"
L["Essence"] = "정수"
L["Essence #1"] = "정수 #1"
@@ -511,7 +513,7 @@ L["Essence #6"] = "정수 #6"
L["Evade"] = "벗어남"
L["Event"] = "이벤트"
L["Event(s)"] = "이벤트 (여럿 가능)"
L["Every Frame"] = "매 프레임"
L["Every Frame"] = "매 프레임마다"
L["Every Frame (High CPU usage)"] = "매 프레임 (CPU 사용량 높음)"
L["Evoker Essence"] = "기원사 정수"
L["Exact Spell ID(s)"] = "정확한 주문 ID (여럿 가능)"
@@ -552,14 +554,14 @@ L["Flamegor"] = "플레임고르"
L["Flash"] = "반짝임"
L["Flex Raid"] = "탄력적 공격대"
L["Flip"] = "휙 넘기기"
L["Floor"] = "바닥"
L["Floor"] = "내림"
L["Focus"] = "주시 대상"
L["Follower Dungeon"] = "추종자 던전"
L["Font"] = "글꼴"
L["Font Size"] = "글꼴 크기"
L["Forbidden function or table: %s"] = "금지된 함수 또는 테이블: %s"
L["Foreground"] = "전경"
L["Foreground Color"] = "전경 색깔"
L["Foreground Color"] = "전경"
L["Form"] = "종류"
L["Format"] = "형식"
L["Format Gold"] = "골드 형식"
@@ -588,7 +590,7 @@ L["Garr"] = "가르"
L["Gehennas"] = "게헨나스"
L["General"] = "일반"
L["General Rajaxx"] = "장군 라작스"
L["GetNameAndIcon Function (fallback state)"] = "GetNameAndIcon 함수 (폴백 스테이트)"
L["GetNameAndIcon Function (fallback state)"] = "GetNameAndIcon 함수 (고장 대체 상태)"
L["Glancing"] = "빗맞음"
L["Global Cooldown"] = "글로벌 쿨타임"
L["Glow"] = "반짝임"
@@ -653,7 +655,7 @@ L["Humanoid"] = "인간형"
L["Hybrid"] = "혼합"
L["Icon"] = "아이콘"
L["Icon Function"] = "아이콘 함수"
L["Icon Function (fallback state)"] = "아이콘 함수 (폴백 스테이트)"
L["Icon Function (fallback state)"] = "Icon 함수 (고장 대체 상태)"
L["Id"] = "ID"
L["ID"] = "ID"
L["If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"] = "더 많은 도움이 필요하다면 GitHub에서 티켓을 열거나 저희 Discord (https://discord.gg/weakauras)를 방문해 주세요!"
@@ -855,13 +857,12 @@ L["Mythic Keystone"] = "신화 쐐기돌"
L["Mythic+ Affix"] = "신화+ 어픽스"
L["Name"] = "이름"
L["Name Function"] = "이름 함수"
L["Name Function (fallback state)"] = "이름 함수 (폴백 스테이트)"
L["Name Function (fallback state)"] = "Name 함수 (고장 대체 상태)"
L["Name of Caster's Target"] = "시전 대상의 이름"
L["Name of the (sub-)zone currently shown above the minimap."] = "현재 있는 지역 (하위 지역 포함) 이름은 미니맵 위에 나와있습니다."
L["Name(s)"] = "이름 (여럿 가능)"
L["Name/Realm of Caster's Target"] = "시전 대상의 이름/서버"
L["Nameplate"] = "이름표"
L["Nameplate Type"] = "이름표 종류"
L["Nameplates"] = "이름표"
L["Names of affected Players"] = "오라에 걸린 플레이어 이름"
L["Names of unaffected Players"] = "오라에 안 걸린 플레이어 이름"
@@ -894,7 +895,7 @@ L["Note: 'Hide Alone' is not available in the new aura tracking system. A load o
L["Note: The available text replacements for multi triggers match the normal triggers now."] = "참고: 여러 활성 조건에서 사용할 수 있는 텍스트 대체 코드는 이제 일반 활성 조건에 맞춰집니다."
L["Note: This trigger internally stores the shapeshift position, and thus is incompatible with learning stances on the fly, like e.g. the Gladiator Rune."] = "참고: 이 활성 조건은 내부적으로 변신/태세 번호를 저장하고 있으므로 비행 중에 검투사 룬 같은 태세를 배우면 제대로 호환되지 않습니다."
L["Note: This trigger relies on the WoW API, which returns incorrect information in some cases."] = "참고: 이 활성 조건은 WoW API에 의존하고 있는데 API가 잘못된 정보를 가져오는 경우도 있습니다."
L["Note: This trigger type estimates the range to the hitbox of a unit. The actual range of friendly players is usually 3 yards more than the estimate. Range checking capabilities depend on your current class and known abilities as well as the type of unit being checked. Some of the ranges may also not work with certain NPCs.|n|n|cFFAAFFAAFriendly Units:|r %s|n|cFFFFAAAAHarmful Units:|r %s|n|cFFAAAAFFMiscellanous Units:|r %s"] = "참고: 이 활성 조건 유형은 유닛의 히트박스까지 거리를 측정합니다. 아군 플레이어와의 실제 거리는 측정값보다 보통 3미터 더 떨어져 있습니다. 거리 검사 정확도는 내 캐릭터의 직업과 스킬 및 검사 대상 유닛의 종류에 따라 차이를 보입니다. 특정 NPC에는 일부 구간의 거리 검사가 작동하지 않을 수 있습니다.|n|n|cFFAAFFAA아군 유닛:|r %s|n|cFFFFAAAA적 유닛:|r %s|n|cFFAAAAFF기타 유닛:|r %s"
L["Note: This trigger type estimates the range to the hitbox of a unit. The actual range of friendly players is usually 3 yards more than the estimate. Range checking capabilities depend on your current class and known abilities as well as the type of unit being checked. Some of the ranges may also not work with certain NPCs.|n|n|cFFAAFFAAFriendly Units:|r %s|n|cFFFFAAAAHarmful Units:|r %s|n|cFFAAAAFFMiscellanous Units:|r %s"] = "참고: 이 활성 조건은 유닛의 히트박스까지 거리를 측정합니다. 아군 플레이어와의 실제 거리는 측정값보다 보통 3미터 더 떨어져 있습니다. 거리 검사 정확도는 내 캐릭터의 직업과 스킬 및 검사 대상 유닛의 종류에 따라 차이를 보입니다. 특정 NPC에는 일부 구간의 거리 검사가 작동하지 않을 수 있습니다.|n|n|cFFAAFFAA아군 유닛:|r %s|n|cFFFFAAAA적 유닛:|r %s|n|cFFAAAAFF기타 유닛:|r %s"
L["Noth the Plaguebringer"] = "역병술사 노스"
L["NPC"] = "NPC"
L["Npc ID"] = "NPC ID"
@@ -976,7 +977,7 @@ L["Offset Timer"] = "타이머 조정"
L["Old Blizzard (2h | 3m | 10s | 2.4)"] = "구 블리자드식 (2h | 3m | 10s | 2.4)"
L["On Cooldown"] = "쿨타임일 때"
L["On Taxi"] = "비행 경로 이용 중"
L["Only if on a different realm"] = "다른 서버일때만"
L["Only if on a different realm"] = "다른 서버일때만 표시"
L["Only if Primary"] = "주 자원일때만"
L["Onyxia"] = "오닉시아"
L["Opaque"] = "불투명"
@@ -1069,8 +1070,8 @@ L["Progress Total"] = "진행 현황"
L["Progress Value"] = "진행도 값"
L["Pulse"] = "맥박"
L["PvP Flagged"] = "플레이어 간 전투 활성화"
L["PvP Talent selected"] = "선택한 PvP 특성"
L["PvP Talent Selected"] = "선택한 PvP 특성"
L["PvP Talent selected"] = "선택한 PvP 특성"
L["Quality Id"] = "품질 Id"
L["Quantity"] = "수량"
L["Quantity earned this week"] = "이번주 획득량"
@@ -1138,7 +1139,7 @@ L["Rested Experience"] = "휴식 경험치"
L["Rested Experience (%)"] = "휴식 경험치 (%)"
L["Resting"] = "휴식 중"
L["Resurrect"] = "부활"
L["Resurrect Pending"] = "부활 수락 대기 상태"
L["Resurrect Pending"] = "부활 수락 대기"
L["Right"] = "오른쪽"
L["Right to Left"] = "오른쪽에서 왼쪽"
L["Right, then Centered Vertical"] = "오른쪽, 수직 중앙"
@@ -1181,7 +1182,7 @@ L["Second Value of Tooltip Text"] = "툴팁 텍스트의 두번째 값"
L["Secondary Stats"] = "2차 능력치"
L["Seconds"] = ""
L[ [=[Secure frame detected. Find more information:
https://github.com/WeakAuras/WeakAuras2/wiki/Protected-Frames]=] ] = [=[ . :
https://github.com/WeakAuras/WeakAuras2/wiki/Protected-Frames]=] ] = [=[ . :
https://github.com/WeakAuras/WeakAuras2/wiki/Protected-Frames]=]
L["Select Frame"] = "프레임 선택"
L["Selection Mode"] = "선택 모드"
@@ -1234,7 +1235,7 @@ L["Soft Friend"] = "액션 전투 아군"
L["Solistrasza"] = "솔리스트라자"
L["Sound"] = "소리"
L["Sound by Kit ID"] = "Kit ID로 소리 재생"
L["Source"] = "행위자"
L["Source"] = "출처"
L["Source Affiliation"] = "행위자 소속"
L["Source GUID"] = "행위자 GUID"
L["Source Info"] = "행위자 정보"
@@ -1283,7 +1284,7 @@ L["Stack Count"] = "중첩 횟수"
L["Stack trace:"] = "스택 트레이스:"
L["Stacks"] = "중첩"
L["Stacks Function"] = "중첩 함수"
L["Stacks Function (fallback state)"] = "중첩 함수 (폴백 스테이트)"
L["Stacks Function (fallback state)"] = "Stacks 함수 (고장 대체 상태)"
L["Stage"] = "단계"
L["Stage Counter"] = "단계 카운터"
L["Stagger (%)"] = "시간차 (%)"
@@ -1307,12 +1308,12 @@ L["String"] = "문자열"
L["Subevent Info"] = "서브이벤트 정보"
L["Subtract Cast"] = "시전 시간 빼기"
L["Subtract Channel"] = "정신 집중 지속시간 빼기"
L["Subtract GCD"] = "글로벌 쿨타임 차감"
L["Subtract GCD"] = "글로벌 쿨타임 빼기"
L["Subzone Name"] = "하위지역 이름"
L["Success"] = "성공"
L["Sulfuron Harbinger"] = "설퍼론 사자"
L["Summon"] = "소환"
L["Summon Pending"] = "소환 수락 대기 상태"
L["Summon Pending"] = "소환 수락 대기"
L["Sun"] = "태양"
L["Supports multiple entries, separated by commas"] = "여러 항목을 지원하며 쉼표로 구분됨"
L[ [=[Supports multiple entries, separated by commas
@@ -1352,7 +1353,7 @@ L["Text To Speech"] = "텍스트 음성 변환"
L["Text-to-speech"] = "텍스트 음성 변환"
L["Texture"] = "텍스처"
L["Texture Function"] = "텍스처 함수"
L["Texture Function (fallback state)"] = "텍스처 함수 (폴백 스테이트)"
L["Texture Function (fallback state)"] = "Texture 함수 (고장 대체 상태)"
L["Texture Picker"] = "텍스처 선택"
L["Texture Rotation"] = "텍스처 회전"
L["Thaddius"] = "타디우스"
@@ -1366,7 +1367,7 @@ L["The total quantity after transferring everything to your current character an
L["The War Within"] = "내부 전쟁"
L["There are %i updates to your auras ready to be installed!"] = "위크오라 %i개의 업데이트를 설치할 수 있습니다!"
L["Thick Outline"] = "굵은 외곽선"
L["Thickness"] = "굵기"
L["Thickness"] = "두께"
L["Third"] = "세 번째"
L["Third Value of Tooltip Text"] = "툴팁 텍스트의 세번째 값"
L["This aura calls GetData a lot, which is a slow function."] = "이 위크오라는 느린 함수인 GetData를 너무 많이 불러옵니다."
@@ -1383,7 +1384,7 @@ L["Threat Value"] = "위협 수준 수치"
L["Tick"] = ""
L["Time"] = "시간"
L["Time Format"] = "시간"
L["Time in GCDs"] = "쿨 단위 시간"
L["Time in GCDs"] = "로벌 쿨타임 기준 시간"
L["Time since initial application"] = "첫 오라 걸림 이후 시간"
L["Time since last refresh"] = "마지막으로 오라가 갱신된 이후 시간"
L["Time since stack gain"] = "중첩 획득 이후 시간"
@@ -1434,8 +1435,8 @@ L["Trigger"] = "활성 조건"
L["Trigger %i"] = "활성 조건 %i"
L["Trigger %s"] = "활성 조건 %s"
L["Trigger 1"] = "활성 조건 1"
L["Trigger State Updater (Advanced)"] = "활성 조건 스테이트 업데이터 (고급)"
L["Trigger Update"] = "활성 조건 업데이트"
L["Trigger State Updater (Advanced)"] = "상태(State) 업데이트 활성 조건 (고급)"
L["Trigger Update"] = "활성 조건 업데이트될 때"
L["Trigger:"] = "활성 조건:"
L["Trivial (Low Level)"] = "무료 체험 (저레벨)"
L["True"] = ""
+10 -8
View File
@@ -183,6 +183,8 @@ L["Assigned Role"] = "Função Atribuída"
L["Assigned Role Icon"] = "Assigned Role Icon"
--[[Translation missing --]]
L["Assist"] = "Assist"
--[[Translation missing --]]
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "Pelo Menos Um Inimigo"
L["At missing Value"] = "No valor ausente"
L["At Percent"] = "Na porcentagem"
@@ -777,6 +779,8 @@ L["Error Frame"] = "Error Frame"
--[[Translation missing --]]
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "ERROR in '%s' unknown or incompatible sub element type '%s'"
--[[Translation missing --]]
L["Error in aura '%s'"] = "Error in aura '%s'"
--[[Translation missing --]]
L["Error not receiving display information from %s"] = "Error not receiving display information from %s"
--[[Translation missing --]]
L["Essence"] = "Essence"
@@ -1138,10 +1142,10 @@ L["Install the addons BugSack and BugGrabber for detailed error logs."] = "Insta
L["Instance"] = "Instance"
L["Instance Difficulty"] = "Dificuldade da Instância"
--[[Translation missing --]]
L["Instance Id"] = "Instance Id"
--[[Translation missing --]]
L["Instance ID"] = "Instance ID"
--[[Translation missing --]]
L["Instance Id"] = "Instance Id"
--[[Translation missing --]]
L["Instance Info"] = "Instance Info"
--[[Translation missing --]]
L["Instance Name"] = "Instance Name"
@@ -1352,10 +1356,10 @@ E.g. 1;2;1;2;2.5;3]=] ] = [=[Matches stage number of encounter journal.
Intermissions are .5
E.g. 1;2;1;2;2.5;3]=]
--[[Translation missing --]]
L["Max Char "] = "Max Char "
--[[Translation missing --]]
L["Max Char"] = "Max Char"
--[[Translation missing --]]
L["Max Char "] = "Max Char "
--[[Translation missing --]]
L["Max Charges"] = "Max Charges"
--[[Translation missing --]]
L["Max Health"] = "Max Health"
@@ -1457,8 +1461,6 @@ L["Name/Realm of Caster's Target"] = "Name/Realm of Caster's Target"
--[[Translation missing --]]
L["Nameplate"] = "Nameplate"
--[[Translation missing --]]
L["Nameplate Type"] = "Nameplate Type"
--[[Translation missing --]]
L["Nameplates"] = "Nameplates"
--[[Translation missing --]]
L["Names of affected Players"] = "Names of affected Players"
@@ -1771,10 +1773,10 @@ L["Progress Value"] = "Progress Value"
L["Pulse"] = "Pulsar"
L["PvP Flagged"] = "Marcado para JxJ"
--[[Translation missing --]]
L["PvP Talent selected"] = "PvP Talent selected"
--[[Translation missing --]]
L["PvP Talent Selected"] = "PvP Talent Selected"
--[[Translation missing --]]
L["PvP Talent selected"] = "PvP Talent selected"
--[[Translation missing --]]
L["Quality Id"] = "Quality Id"
--[[Translation missing --]]
L["Quantity"] = "Quantity"
+9 -6
View File
@@ -133,6 +133,8 @@ L["Ascending"] = "По возрастанию"
L["Assigned Role"] = "Выбранная роль"
L["Assigned Role Icon"] = "Иконка выбранной роли"
L["Assist"] = "Помощник"
--[[Translation missing --]]
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "Хотя бы один противник"
L["At missing Value"] = "От недостающего значения"
L["At Percent"] = "В процентах"
@@ -507,6 +509,8 @@ L["Error decompressing. This doesn't look like a WeakAuras import."] = "Ошиб
L["Error deserializing"] = "Ошибка десериализации"
L["Error Frame"] = "Область вывода ошибок"
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "Ошибка в индикации %s. Внутренний элемент неизвестного или несовместимого типа %s."
--[[Translation missing --]]
L["Error in aura '%s'"] = "Error in aura '%s'"
L["Error not receiving display information from %s"] = [=[Ошибка при получении информации об индикации
от %s]=]
L["Essence"] = "Сущность"
@@ -666,8 +670,8 @@ L["Hybrid"] = "Гибридная"
L["Icon"] = "Иконка"
L["Icon Function"] = "Функция иконки"
L["Icon Function (fallback state)"] = "Функция иконки (резервное состояние)"
L["Id"] = "ID"
L["ID"] = "ID"
L["Id"] = "ID"
L["If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"] = "Если вам необходима дополнительная помощь, пожалуйста, откройте запрос на GitHub или посетите наш сервер в Discord по адресу https://discord.gg/weakauras."
L["Ignore Dead"] = "Не учитывать мёртвые цели"
L["Ignore Disconnected"] = "Не учитывать игроков не в сети"
@@ -704,8 +708,8 @@ L["Instakill"] = "Моментальное убийство"
L["Install the addons BugSack and BugGrabber for detailed error logs."] = "Установите аддоны BugSack и BugGrabber для получения подробных записей об ошибках."
L["Instance"] = "Подземелье"
L["Instance Difficulty"] = "Сложность подземелья"
L["Instance Id"] = "ID подземелья"
L["Instance ID"] = "Идентификатор подземелья"
L["Instance Id"] = "ID подземелья"
L["Instance Info"] = "Информация о подземелье"
L["Instance Name"] = "Название подземелья"
L["Instance Size Type"] = "Тип размера подземелья"
@@ -820,9 +824,9 @@ L[ [=[Matches stage number of encounter journal.
Intermissions are .5
E.g. 1;2;1;2;2.5;3]=] ] = [=[Совпадает с номером фазы в журнале сражения с боссом. Смена фаз нумеруется как x.5
Например: 1, 2, 1, 2, 2.5, 3.]=]
L["Max Char "] = "Макс. количество символов"
--[[Translation missing --]]
L["Max Char"] = "Max Char"
L["Max Char "] = "Макс. количество символов"
L["Max Charges"] = "Макс. количество зарядов"
L["Max Health"] = "Макс. запас здоровья"
L["Max Power"] = "Макс. запас энергии"
@@ -879,7 +883,6 @@ L["Name of the (sub-)zone currently shown above the minimap."] = "Названи
L["Name(s)"] = "Название"
L["Name/Realm of Caster's Target"] = "Имя / Игр. мир цели заклинателя"
L["Nameplate"] = "Индикатор здоровья"
L["Nameplate Type"] = "Тип индикатора здоровья"
L["Nameplates"] = "Индикаторы здоровья"
L["Names of affected Players"] = "Имена задействованных игроков"
L["Names of unaffected Players"] = "Имена незадействованных игроков"
@@ -1056,8 +1059,8 @@ L["Progress Total"] = "Общее значение"
L["Progress Value"] = "Текущее значение"
L["Pulse"] = "Пульсация"
L["PvP Flagged"] = "В режиме PvP"
L["PvP Talent selected"] = "PvP талант выбран"
L["PvP Talent Selected"] = "PvP талант выбран"
L["PvP Talent selected"] = "PvP талант выбран"
L["Quality Id"] = "ID качества"
L["Quantity"] = "Количество"
L["Quantity earned this week"] = "Заработано на этой неделе"
@@ -1331,8 +1334,8 @@ L["Talent"] = "Талант"
L["Talent |cFFFF0000Not|r Known"] = "Талант |cFFFF0000НЕ|rизвестен"
L["Talent |cFFFF0000Not|r Selected"] = "Талант |cFFFF0000НЕ|r выбран"
L["Talent Known"] = "Талант известен"
L["Talent Selected"] = "Талант выбран"
L["Talent selected"] = "Выбран талант"
L["Talent Selected"] = "Талант выбран"
L["Talent Specialization"] = "Специализация"
L["Tanking And Highest"] = "Вы основная цель; макс. угроза"
L["Tanking But Not Highest"] = "Вы основная цель; не макс. угроза"
+10 -10
View File
@@ -138,6 +138,8 @@ L["Ascending"] = "升序"
L["Assigned Role"] = "团队职责"
L["Assigned Role Icon"] = "团队职责图标"
L["Assist"] = "团队助理"
--[[Translation missing --]]
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "至少一个敌人"
L["At missing Value"] = "于缺失值"
L["At Percent"] = "于百分比"
@@ -335,10 +337,8 @@ L["Create"] = "创造物品"
L["Creature Family"] = "Creature Family"
--[[Translation missing --]]
L["Creature Family Name"] = "Creature Family Name"
--[[Translation missing --]]
L["Creature Type"] = "Creature Type"
--[[Translation missing --]]
L["Creature Type Name"] = "Creature Type Name"
L["Creature Type"] = "生物类型"
L["Creature Type Name"] = "生物类型名称"
L["Critical"] = "爆击(致命一击)"
L["Critical (%)"] = "暴击 (%)"
L["Critical Rating"] = "暴击等级"
@@ -499,6 +499,7 @@ L["Error decompressing. This doesn't look like a WeakAuras import."] = "解压
L["Error deserializing"] = "反序列化错误。"
L["Error Frame"] = "错误信息框架"
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "错误:光环 %s 中存在未知或不兼容的子元素类型 %s 。"
L["Error in aura '%s'"] = "光环'%s'发生错误"
L["Error not receiving display information from %s"] = "错误:未收到来自 %s 的图示信息"
L["Essence"] = "精华"
L["Essence #1"] = "精华 #1"
@@ -604,7 +605,7 @@ L["Gradient Pulse"] = "梯度脉动"
L["Grand Widow Faerlina"] = "黑女巫法琳娜"
L["Grid"] = ""
L["Grobbulus"] = "格罗布鲁斯"
L["Group"] = "队伍"
L["Group"] = ""
L["Group Arrangement"] = "组排列"
L["Group Leader/Assist"] = "团队领袖/助理"
L["Group Size"] = "组大小"
@@ -653,8 +654,8 @@ L["Hybrid"] = "混合"
L["Icon"] = "图标"
L["Icon Function"] = "图标函数"
L["Icon Function (fallback state)"] = "图标函数(后备状态)"
L["Id"] = "ID"
L["ID"] = "ID"
L["Id"] = "ID"
L["If you require additional assistance, please open a ticket on GitHub or visit our Discord at https://discord.gg/weakauras!"] = "如果你需要进一步的协助,请在 GitHub 上提交工单或是访问我们的 Discordhttps://discord.gg/weakauras"
L["Ignore Dead"] = "忽略已死亡"
L["Ignore Disconnected"] = "忽略已离线"
@@ -802,8 +803,8 @@ L["Matches (Pattern)"] = "匹配(表达式)"
L[ [=[Matches stage number of encounter journal.
Intermissions are .5
E.g. 1;2;1;2;2.5;3]=] ] = "符合冒险指南的阶段。转阶段为.5。例如1;2;1;2;2.5;3"
L["Max Char "] = "最大字符数"
L["Max Char"] = "最大字符数"
L["Max Char "] = "最大字符数"
L["Max Charges"] = "最大充能次数"
L["Max Health"] = "最大生命值"
L["Max Power"] = "最大能量值"
@@ -860,7 +861,6 @@ L["Name of the (sub-)zone currently shown above the minimap."] = "(子)区
L["Name(s)"] = "名称"
L["Name/Realm of Caster's Target"] = "施法者目标的名称/服务器"
L["Nameplate"] = "姓名板"
L["Nameplate Type"] = "姓名板类型"
L["Nameplates"] = "姓名板"
L["Names of affected Players"] = "受影响玩家的姓名"
L["Names of unaffected Players"] = "未受影响玩家的姓名"
@@ -1068,8 +1068,8 @@ L["Progress Total"] = "进度总计"
L["Progress Value"] = "进度值"
L["Pulse"] = "脉动"
L["PvP Flagged"] = "PvP 状态"
L["PvP Talent selected"] = "PvP 天赋选择"
L["PvP Talent Selected"] = "已选择PvP天赋"
L["PvP Talent selected"] = "PvP 天赋选择"
L["Quality Id"] = "品质ID"
L["Quantity"] = "数量"
L["Quantity earned this week"] = "本周获取数量"
@@ -1335,8 +1335,8 @@ L["Talent"] = "天赋"
L["Talent |cFFFF0000Not|r Known"] = "天赋|cFFFF0000不|r可用"
L["Talent |cFFFF0000Not|r Selected"] = "天赋|cFFFF0000未|r选择"
L["Talent Known"] = "天赋可用"
L["Talent Selected"] = "天赋选择"
L["Talent selected"] = "天赋选择"
L["Talent Selected"] = "天赋选择"
L["Talent Specialization"] = "专精"
L["Tanking And Highest"] = "做T并且最高"
L["Tanking But Not Highest"] = "做T但不是最高"
+4 -2
View File
@@ -128,6 +128,8 @@ L["Ascending"] = "升冪"
L["Assigned Role"] = "指派的角色"
L["Assigned Role Icon"] = "所屬角色職責圖示"
L["Assist"] = "助理"
--[[Translation missing --]]
L["Assisted Combat Next Cast"] = "Assisted Combat Next Cast"
L["At Least One Enemy"] = "至少一個敵人"
L["At missing Value"] = "在缺少數值"
L["At Percent"] = "在百分比"
@@ -487,6 +489,7 @@ L["Error decompressing. This doesn't look like a WeakAuras import."] = "解壓
L["Error deserializing"] = "反序列化時出錯"
L["Error Frame"] = "錯誤訊息框架"
L["ERROR in '%s' unknown or incompatible sub element type '%s'"] = "“%s”中的錯誤未知或不相容的子元素類型“%s”"
L["Error in aura '%s'"] = "光環中的錯誤 '%s'"
L["Error not receiving display information from %s"] = "錯誤:無法收到來自 %s 的顯示資訊"
L["Essence"] = "精華"
L["Essence #1"] = "精華 #1"
@@ -849,7 +852,6 @@ L["Name of the (sub-)zone currently shown above the minimap."] = "小地圖當
L["Name(s)"] = "名字"
L["Name/Realm of Caster's Target"] = "施法者目標的名字/伺服器"
L["Nameplate"] = "血條/名條"
L["Nameplate Type"] = "血條/名條類型"
L["Nameplates"] = "血條/名條"
L["Names of affected Players"] = "受影響玩家的名字"
L["Names of unaffected Players"] = "未受影響玩家的名字"
@@ -1044,8 +1046,8 @@ L["Progress Total"] = "總進度"
L["Progress Value"] = "進度值"
L["Pulse"] = "跳動"
L["PvP Flagged"] = "PvP 標幟"
L["PvP Talent selected"] = "選擇的 PvP 天賦"
L["PvP Talent Selected"] = "已選擇的 PvP 天賦"
L["PvP Talent selected"] = "選擇的 PvP 天賦"
L["Quality Id"] = "品質id"
L["Quantity"] = "數量"
L["Quantity earned this week"] = "本週獲取數量"
Binary file not shown.
+111 -6
View File
@@ -4,6 +4,7 @@ local Private = select(2, ...)
local L = WeakAuras.L
-- Takes as input a table of display data and attempts to update it to be compatible with the current version
--- Modernizes the aura data
function Private.Modernize(data, oldSnapshot)
if not data.internalVersion or data.internalVersion < 2 then
WeakAuras.prettyPrint(string.format("Data for '%s' is too old, can't modernize.", data.id))
@@ -292,7 +293,7 @@ function Private.Modernize(data, oldSnapshot)
-- Version 18 was a migration for stance/form trigger, but deleted later because of migration issue
-- Version 19 were introduced in July 2019 in BfA
if WeakAuras.isAwesomeEnabled() then
if WeakAuras.IsAwesomeEnabled() then
if data.internalVersion < 19 then
if data.triggers then
for triggerId, triggerData in ipairs(data.triggers) do
@@ -809,9 +810,6 @@ function Private.Modernize(data, oldSnapshot)
end
end
-- To convert:
-- * actions
-- * conditions
data.progressPrecision = nil
data.totalPrecision = nil
end
@@ -993,6 +991,7 @@ function Private.Modernize(data, oldSnapshot)
["Totem"] = "spell",
["Ready Check"] = "event",
["BigWigs Message"] = "addons",
["Class/Spec"] = "unit",
["Stance/Form/Aura"] = "unit",
["Weapon Enchant"] = "item",
["Global Cooldown"] = "spell",
@@ -1498,7 +1497,7 @@ function Private.Modernize(data, oldSnapshot)
end
do
local loadFields = {
"level", "itemequiped", "itemequiped"
"level", "itemequiped"
}
for _, field in ipairs(loadFields) do
@@ -1736,6 +1735,24 @@ function Private.Modernize(data, oldSnapshot)
migrateToTable(data.load, "itemequiped")
end
if data.internalVersion < 70 then
local trigger_migration = {
Power = {
"power",
"power_operator"
}
}
for _, triggerData in ipairs(data.triggers) do
local t = triggerData.trigger
local fieldsToMigrate = trigger_migration[t.event]
if fieldsToMigrate then
for _, field in ipairs(fieldsToMigrate) do
migrateToTable(t, field)
end
end
end
end
if data.internalVersion < 71 then
if data.regionType == 'icon' or data.regionType == 'aurabar'
or data.regionType == 'progresstexture'
@@ -1946,6 +1963,7 @@ function Private.Modernize(data, oldSnapshot)
multi = true
}
}
local function fixData(data, fields)
for k, v in pairs(fields) do
if v == true and type(data[k]) == "table" then
@@ -1969,6 +1987,7 @@ function Private.Modernize(data, oldSnapshot)
end
end
end
for _, triggerData in ipairs(data.triggers) do
fixData(triggerData.trigger, triggerFix)
end
@@ -1995,6 +2014,7 @@ function Private.Modernize(data, oldSnapshot)
end
end
if data.internalVersion < 80 then
-- Use common names for anchor areas/points so
-- that up/down of sub regions can adapt that
@@ -2062,7 +2082,7 @@ function Private.Modernize(data, oldSnapshot)
end
if data.internalVersion < 83.25 then
-- Due to a Localisation issue and a bad implementation clear out all class/spec triggers that contain strings
-- Due to a Localisation issue and a bad implementation clear out all class/spec triggers that contain strings
local function replaceSpecData(data, field, bt2)
if data[field] then
if bt2 then
@@ -2106,6 +2126,91 @@ function Private.Modernize(data, oldSnapshot)
end
end
if data.internalVersion < 84 then
if data.triggers then
for _, triggerData in ipairs(data.triggers) do
local trigger = triggerData.trigger
if trigger and trigger.type == "addons" then
if trigger.event == "Boss Mod Timer" or trigger.event == "BigWigs Timer" or trigger.event == "DBM Timer" then
-- if trigger don't filter bars, show only those active in the addon config for triggers made before this option was added
-- show disabled bars when looking for specific ids/name
if not (trigger.use_message or trigger.use_spellId) then
trigger.use_isBarEnabled = true
end
end
end
end
end
end
if data.internalVersion < 85 then
-- Migrate raidMarkIndex and old Combo Points triggers and Happiness
if data.triggers then
local eventTypes = {
["Unit Characteristics"] = true,
["Health"] = true,
["Power"] = true,
["Alternate Power"] = true,
["Cast"] = true
}
for _, triggerData in ipairs(data.triggers) do
local trigger = triggerData.trigger
if trigger and trigger.type == "unit" then
-- Migrate raidMarkIndex
if eventTypes[trigger.event] then
local rt = trigger.raidMarkIndex
if type(rt) == "number" then
trigger.raidMarkIndex = {
single = rt
}
end
if trigger.use_raidMarkIndex == false then
trigger.use_raidMarkIndex = nil
end
end
-- Modernize Happiness
if trigger.event == "Power" and trigger.powertype == 4 then
trigger.powertype = 27
end
-- Migrate old Combo Points triggers
if trigger.event == "Combo Points" then
local newTrigger = {
type = "unit",
use_unit = true,
unit = "player",
use_powertype = true,
powertype = 4,
event = "Power"
}
if trigger.combopoints and trigger.combopoints_operator then
newTrigger.use_power = true
newTrigger.power = { trigger.combopoints }
newTrigger.power_operator = { trigger.combopoints_operator }
end
triggerData.trigger = newTrigger
end
end
end
end
-- Migrates the "power" and "power_operator" fields for the Power trigger again,
-- from internalVersion < 70. Previously missed the migration.
local trigger_migration = {
Power = {
"power",
"power_operator"
}
}
for _, triggerData in ipairs(data.triggers) do
local t = triggerData.trigger
local fieldsToMigrate = trigger_migration[t.event]
if fieldsToMigrate then
for _, field in ipairs(fieldsToMigrate) do
migrateToTable(t, field)
end
end
end
end
data.internalVersion = max(data.internalVersion or 0, WeakAuras.InternalVersion())
end
+631 -398
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -326,7 +326,7 @@ local sorters = {
end,
custom = function(data)
local sortStr = data.customSort or ""
local sortFunc = WeakAuras.LoadFunction("return " .. sortStr) or noop
local sortFunc = WeakAuras.LoadFunction("return " .. sortStr, data.id) or noop
local sortOn = nil
local events = WeakAuras.split(data.sortOn or "")
if #events > 0 then
@@ -415,7 +415,7 @@ local anchorers = {
end,
["CUSTOM"] = function(data)
local anchorStr = data.customAnchorPerUnit or ""
local anchorFunc = WeakAuras.LoadFunction("return " .. anchorStr) or noop
local anchorFunc = WeakAuras.LoadFunction("return " .. anchorStr, data.id) or noop
local anchorOn = nil
local events = WeakAuras.split(data.anchorOn or "")
@@ -971,7 +971,7 @@ local growers = {
end,
CUSTOM = function(data)
local growStr = data.customGrow or ""
local growFunc = WeakAuras.LoadFunction("return " .. growStr) or noop
local growFunc = WeakAuras.LoadFunction("return " .. growStr, data.id) or noop
local growOn = nil
local events = WeakAuras.split(data.growOn or "")
if #events > 0 then
+9 -5
View File
@@ -479,13 +479,17 @@ local function modify(parent, region, data)
-- If cooldown.inverse == false then effectiveReverse = not inverse
-- If cooldown.inverse == true then effectiveReverse = inverse
local effectiveReverse = not region.inverseDirection == not cooldown.inverse
cooldown:SetReverse(effectiveReverse)
local hasChanged = cooldown:GetReverse() ~= effectiveReverse
if hasChanged then
cooldown:SetReverse(effectiveReverse)
end
if (cooldown.expirationTime and cooldown.duration and cooldown:IsShown()) then
-- WORKAROUND SetReverse not applying until next frame
cooldown:SetCooldown(0, 0)
if hasChanged then
-- WORKAROUND SetReverse not applying until next frame
cooldown:SetCooldown(0, 0)
end
cooldown:SetCooldown(cooldown.expirationTime - cooldown.duration,
cooldown.duration,
cooldown.useCooldownModRate and cooldown.modRate or nil)
cooldown.duration)
end
end
+1 -1
View File
@@ -819,7 +819,7 @@ function Private.regionPrototype.modify(parent, region, data)
region:SetOffsetAnim(0, 0);
if data.anchorFrameType == "CUSTOM" and data.customAnchor then
region.customAnchorFunc = WeakAuras.LoadFunction("return " .. data.customAnchor)
region.customAnchorFunc = WeakAuras.LoadFunction("return " .. data.customAnchor, data.id)
else
region.customAnchorFunc = nil
end
+1 -1
View File
@@ -223,7 +223,7 @@ local function modify(parent, region, data)
local customTextFunc = nil
if containsCustomText and data.customText and data.customText ~= "" then
customTextFunc = WeakAuras.LoadFunction("return "..data.customText)
customTextFunc = WeakAuras.LoadFunction("return "..data.customText, data.id)
end
function region:ConfigureTextUpdate()
+1 -1
View File
@@ -203,7 +203,7 @@ local function modify(parent, region, parentData, data, first)
end
end
if containsCustomText and parentData.customText and parentData.customText ~= "" then
parent.customTextFunc = WeakAuras.LoadFunction("return "..parentData.customText)
parent.customTextFunc = WeakAuras.LoadFunction("return "..parentData.customText, data.id)
else
parent.customTextFunc = nil
end
+5 -5
View File
@@ -6,7 +6,7 @@ local WeakAuras = WeakAuras
local L = WeakAuras.L
-- Lua APIs
local time, format, floor, ceil = time, format, floor, ceil
local time, format, floor = time, format, floor
-- WoW APIs
local GetLocale = GetLocale
@@ -274,7 +274,7 @@ function SecondsToClock(seconds, displayZeroHours)
end
-- Deprecated. See SecondsFormatter for intended replacement
function SecondsToTime(seconds, noSeconds, notAbbreviated, maxCount, roundUp)
--[[function SecondsToTime(seconds, noSeconds, notAbbreviated, maxCount, roundUp)
local time = "";
local count = 0;
local tempTime;
@@ -344,7 +344,7 @@ function SecondsToTime(seconds, noSeconds, notAbbreviated, maxCount, roundUp)
end
end
return time;
end
end]]
-- Deprecated. See SecondsFormatter for intended replacement
function MinutesToTime(mins, hideDays)
@@ -373,7 +373,7 @@ function MinutesToTime(mins, hideDays)
end
-- Deprecated. See SecondsFormatter for intended replacement
function SecondsToTimeAbbrev(seconds, thresholdOverride)
--[[function SecondsToTimeAbbrev(seconds, thresholdOverride)
local tempTime;
local threshold = 1.5;
if thresholdOverride then
@@ -393,7 +393,7 @@ function SecondsToTimeAbbrev(seconds, thresholdOverride)
return L["MINUTE_ONELETTER_ABBR"], tempTime;
end
return L["SECOND_ONELETTER_ABBR"], seconds;
end
end]]
function FormatShortDate(day, month, year)
local LOCALE_enGB = (GetLocale() == "enUS") or (GetLocale() == "enGB")
+111 -56
View File
@@ -9,6 +9,8 @@ local LSM = LibStub("LibSharedMedia-3.0");
local wipe, tinsert = wipe, tinsert
local GetNumShapeshiftForms, GetShapeshiftFormInfo = GetNumShapeshiftForms, GetShapeshiftFormInfo
local WrapTextInColorCode = WrapTextInColorCode
local MAX_NUM_TALENTS = MAX_NUM_TALENTS or 40
local function WA_GetClassColor(classFilename)
local color = (CUSTOM_CLASS_COLORS or RAID_CLASS_COLORS)[classFilename]
@@ -29,7 +31,7 @@ Private.glow_frame_types = {
FRAMESELECTOR = L["Frame Selector"],
PARENTFRAME = L["Parent Frame"]
}
if WeakAuras.isAwesomeEnabled() then
if WeakAuras.IsAwesomeEnabled() then
Private.glow_frame_types.NAMEPLATE = L["Nameplate"]
end
@@ -735,7 +737,7 @@ Private.format_types = {
if unit and UnitPlayerControlled(unit) then
local classFilename = select(2, UnitClass(unit))
if classFilename then
return string.format("|c%s%s|r", WA_GetClassColor(classFilename), text)
return WrapTextInColorCode(text, WA_GetClassColor(classFilename))
end
end
return text
@@ -894,7 +896,7 @@ Private.format_types = {
if color == "class" then
colorFunc = function(class, text)
if class then
return string.format("|c%s%s|r", WA_GetClassColor(class), text)
return WrapTextInColorCode(text, WA_GetClassColor(class))
else
return text
end
@@ -1090,7 +1092,6 @@ Private.format_types = {
Private.format_types_display = {}
for k, v in pairs(Private.format_types) do Private.format_types_display[k] = v.display end
Private.sound_channel_types = {
Master = L["Master"],
SFX = ENABLE_SOUNDFX,
@@ -1137,7 +1138,6 @@ Private.aura_types = {
DEBUFF = L["Debuff"],
}
Private.debuff_class_types = {
magic = L["Magic"],
curse = L["Curse"],
@@ -1152,20 +1152,21 @@ Private.player_target_events = {
PLAYER_FOCUS_CHANGED = "focus",
}
Private.unit_types = {
player = L["Player"],
local target_unit_types = {
target = L["Target"],
focus = L["Focus"],
}
Private.unit_types = WeakAuras.Mixin({
player = L["Player"],
group = L["Group"],
member = L["Specific Unit"],
pet = L["Pet"],
multi = L["Multi-target"]
}
}, target_unit_types)
Private.unit_types_bufftrigger_2 = {
Private.unit_types_bufftrigger_2 = WeakAuras.Mixin({
player = L["Player"],
target = L["Target"],
focus = L["Focus"],
group = L["Smart Group"],
raid = L["Raid"],
party = L["Party"],
@@ -1174,29 +1175,24 @@ Private.unit_types_bufftrigger_2 = {
pet = L["Pet"],
member = L["Specific Unit"],
multi = L["Multi-target"]
}
if WeakAuras.isAwesomeEnabled() then
}, target_unit_types)
if WeakAuras.IsAwesomeEnabled() then
Private.unit_types_bufftrigger_2.nameplate = L["Nameplate"]
end
Private.actual_unit_types = {
Private.actual_unit_types = WeakAuras.Mixin({
player = L["Player"],
pet = L["Pet"],
target = L["Target"],
}
}, target_unit_types)
Private.actual_unit_types_with_specific = {
Private.actual_unit_types_with_specific = WeakAuras.Mixin({
player = L["Player"],
target = L["Target"],
focus = L["Focus"],
pet = L["Pet"],
member = L["Specific Unit"],
}
member = L["Specific Unit"]
}, target_unit_types)
Private.actual_unit_types_cast = {
Private.actual_unit_types_cast = WeakAuras.Mixin({
player = L["Player"],
target = L["Target"],
focus = L["Focus"],
group = L["Smart Group"],
party = L["Party"],
raid = L["Raid"],
@@ -1204,30 +1200,26 @@ Private.actual_unit_types_cast = {
arena = L["Arena"],
pet = L["Pet"],
member = L["Specific Unit"],
}
if WeakAuras.isAwesomeEnabled() then
}, target_unit_types)
if WeakAuras.IsAwesomeEnabled() then
Private.actual_unit_types_cast.nameplate = L["Nameplate"]
end
Private.actual_unit_types_cast_tooltip = L["• |cff00ff00Player|r, |cff00ff00Target|r, |cff00ff00Focus|r, and |cff00ff00Pet|r correspond directly to those individual unitIDs.\n• |cff00ff00Specific Unit|r lets you provide a specific valid unitID to watch.\n|cffff0000Note|r: The game will not fire events for all valid unitIDs, making some untrackable by this trigger.\n• |cffffff00Party|r, |cffffff00Raid|r, |cffffff00Boss|r, |cffffff00Arena|r, and |cffffff00Nameplate|r can match multiple corresponding unitIDs.\n• |cffffff00Smart Group|r adjusts to your current group type, matching just the \"player\" when solo, \"party\" units (including \"player\") in a party or \"raid\" units in a raid.\n\n|cffffff00*|r Yellow Unit settings will create clones for each matching unit while this trigger is providing Dynamic Info to the Aura."]
Private.threat_unit_types = {
target = L["Target"],
focus = L["Focus"],
Private.threat_unit_types = WeakAuras.Mixin({
boss = L["Boss"],
member = L["Specific Unit"],
none = L["At Least One Enemy"]
}
if WeakAuras.isAwesomeEnabled() then
}, target_unit_types)
if WeakAuras.IsAwesomeEnabled() then
Private.threat_unit_types.nameplate = L["Nameplate"]
end
Private.unit_types_range_check = {
target = L["Target"],
focus = L["Focus"],
Private.unit_types_range_check = WeakAuras.Mixin({
pet = L["Pet"],
member = L["Specific Unit"]
}
}, target_unit_types)
Private.unit_threat_situation_types = {
[-1] = L["Not On Threat Table"],
@@ -1239,9 +1231,13 @@ Private.unit_threat_situation_types = {
WeakAuras.class_types = {}
for i, class in ipairs(CLASS_SORT_ORDER) do
WeakAuras.class_types[class] = string.format("|c%s%s|r", WA_GetClassColor(class), LOCALIZED_CLASS_NAMES_MALE[class])
WeakAuras.class_types[class] = WrapTextInColorCode(LOCALIZED_CLASS_NAMES_MALE[class], WA_GetClassColor(class))
end
if WeakAuras.IsClassicPlusOrTBC() then
WeakAuras.class_types["DEATHKNIGHT"] = nil
end
-- missing localisation
WeakAuras.race_types = {
Human = "Human",
Orc = "Orc",
@@ -1352,7 +1348,7 @@ Private.anchor_frame_types = {
UNITFRAME = L["Unit Frames"],
CUSTOM = L["Custom"]
}
if WeakAuras.isAwesomeEnabled() then
if WeakAuras.IsAwesomeEnabled() then
Private.anchor_frame_types.NAMEPLATE = L["Nameplates"]
end
@@ -1469,8 +1465,18 @@ Private.power_types = {
[1] = RAGE,
[2] = FOCUS,
[3] = ENERGY,
[4] = HAPPINESS,
[6] = RUNIC_POWER,
[27] = HAPPINESS,
}
Private.power_types_player = {
[0] = MANA,
[1] = RAGE,
[2] = FOCUS,
[3] = ENERGY,
[4] = COMBAT_TEXT_SHOW_COMBO_POINTS_TEXT,
[6] = RUNIC_POWER,
[27] = HAPPINESS,
}
Private.miss_types = {
@@ -1616,7 +1622,7 @@ local function InitializeCurrencies()
local expanded = {}
for index = GetCurrencyListSize(), 1, -1 do
local name, isHeader, isExpanded, _, _, _, _, _, _ = GetCurrencyListInfo(index)
local name, isHeader, isExpanded = GetCurrencyListInfo(index)
if isHeader and not isExpanded then
ExpandCurrencyList(index, true)
expanded[name] = true
@@ -1624,11 +1630,18 @@ local function InitializeCurrencies()
end
for index = 1, GetCurrencyListSize() do
local name, isHeader, _, _, _, _, _, iconFileID, itemID = GetCurrencyListInfo(index)
local currencyLink = tonumber(itemID) and GetItemInfo(itemID)
local name, isHeader, _, _, _, _, currencyType, iconFileID, itemID = GetCurrencyListInfo(index)
if currencyLink then
local icon = iconFileID or "Interface\\Icons\\INV_Misc_QuestionMark" --iconFileID not available on first login
local icon
if currencyType == 1 then -- Arena points
icon = "Interface/PVPFrame/PVP-ArenaPoints-Icon"
elseif currencyType == 2 then -- Honor points
icon = UnitFactionGroup("player") == "Alliance" and
"Interface/Icons/inv_misc_tournaments_symbol_human" or
"Interface/Icons/Achievement_PVP_H_16"
end
if itemID and iconFileID then
icon = icon or iconFileID or "Interface\\Icons\\INV_Misc_QuestionMark" -- iconFileID not available on first login
Private.discovered_currencies[itemID] = "|T" .. icon .. ":0|t" .. name
Private.discovered_currencies_sorted[itemID] = index
elseif isHeader then
@@ -2407,11 +2420,6 @@ Private.eventend_types = {
["custom"] = L["Custom"]
}
Private.autoeventend_types = {
["auto"] = L["Automatic"],
["custom"] = L["Custom"]
}
Private.timedeventend_types = {
["timed"] = L["Timed"],
}
@@ -2455,7 +2463,7 @@ Private.grid_types = {
LV = L["Left, then Centered Vertical"],
RV = L["Right, then Centered Vertical"],
HV = L["Centered Horizontal, then Centered Vertical"],
VH = L["Centered Vertical, then Centered Horizontal"],
VH = L["Centered Vertical, then Centered Horizontal"]
}
Private.centered_types_h = {
@@ -2635,7 +2643,7 @@ Private.classification_types = {
normal = L["Normal"],
trivial = L["Trivial (Low Level)"]
}
if WeakAuras.isAwesomeEnabled() then
if WeakAuras.IsAwesomeEnabled() then
Private.classification_types.minus = L["Minus (Small Nameplate)"]
end
@@ -3498,8 +3506,8 @@ Private.array_entry_name_types = {
-- the rest is auto-populated with indices which are valid entry name sources
}
-- option types which can be used to generate entry names on arrays
Private.name_source_option_types = {
-- option types which can be used to generate entry names on arrays
input = true,
number = true,
range = true,
@@ -3549,7 +3557,7 @@ Private.multiUnitId = {
["partypetsonly"] = true,
["raid"] = true,
}
if WeakAuras.isAwesomeEnabled() then
if WeakAuras.IsAwesomeEnabled() then
Private.multiUnitId["nameplate"] = true
end
@@ -3560,7 +3568,7 @@ Private.multiUnitUnits = {
["party"] = {},
["raid"] = {}
}
if WeakAuras.isAwesomeEnabled() then
if WeakAuras.IsAwesomeEnabled() then
Private.multiUnitUnits["nameplate"] = {}
end
@@ -3583,7 +3591,6 @@ for i = 1, MAX_BOSS_FRAMES do
Private.baseUnitId["boss"..i] = true
Private.multiUnitUnits.boss["boss"..i] = true
end
for i = 1, 5 do
Private.baseUnitId["arena"..i] = true
Private.multiUnitUnits.arena["arena"..i] = true
@@ -3597,8 +3604,7 @@ for i = 1, 40 do
Private.multiUnitUnits.group["raidpet"..i] = true
Private.multiUnitUnits.raid["raidpet"..i] = true
end
if WeakAuras.isAwesomeEnabled() then
if WeakAuras.IsAwesomeEnabled() then
for i = 1, 100 do
Private.baseUnitId["nameplate"..i] = true
Private.multiUnitUnits.nameplate["nameplate"..i] = true
@@ -3707,6 +3713,55 @@ WeakAuras.StopMotion.animation_types = {
progress = L["Progress"]
}
do
local function addGlyphFromSpellID(id, sorted)
local name, _, icon = GetSpellInfo(id or 0)
if name and icon and not Private.glyph_types[id] then
Private.glyph_types[id] = "|T" .. icon .. ":0|t" .. name
table.insert(sorted, { glyphID = id, name = name })
end
end
local function addEquippedGlyphs(sorted)
for i = 1, GetNumGlyphSockets() or 6 do
local _, _, glyphID, icon = GetGlyphSocketInfo(i)
if glyphID and icon and not Private.glyph_types[glyphID] then
local name = GetSpellInfo(glyphID)
if name then
Private.glyph_types[glyphID] = "|T" .. icon .. ":0|t" .. name
table.insert(sorted, { glyphID = glyphID, name = name })
end
end
end
end
Private.InitializeGlyphs = function(glyphId)
Private.glyph_types = {}
Private.glyph_sorted = {}
local sorted = {}
addEquippedGlyphs(sorted)
if glyphId then
if glyphId.single then
addGlyphFromSpellID(glyphId.single, sorted)
end
if glyphId.multi then
for _, id in ipairs(glyphId.multi) do
addGlyphFromSpellID(id, sorted)
end
end
end
table.sort(sorted, function(a, b)
return a.name < b.name
end)
for _, glyph in ipairs(sorted) do
table.insert(Private.glyph_sorted, glyph.glyphID)
end
end
end
Private.id_to_faction = {
["21"] = L["Booty Bay"],
["47"] = L["Ironforge"],
+3 -1
View File
@@ -3,7 +3,9 @@ local AddonName = ...
local Private = select(2, ...)
-- Talent Data for the Project Epoch Realm "Kezan"
if GetRealmName() ~= "Kezan" then return end
if not WeakAuras.IsClassicPlus() then
return
end
Private.talentInfo = {
["DRUID"] = {
+2 -3
View File
@@ -3,9 +3,8 @@ local AddonName = ...
local Private = select(2, ...)
-- Talent Data for the Warmane TBC Realms "Onyxia" and "Blackrock TBC"
if GetRealmName() ~= "Onyxia" and
not (GetRealmName() == "Blackrock [PvP only]" and GetExpansionLevel() == 1) then
return
if not WeakAuras.IsTBC() then
return
end
Private.talentInfo = {
+2 -5
View File
@@ -3,11 +3,8 @@ local AddonName = ...
local Private = select(2, ...)
-- Talent Data for normal Wrath Realms
if GetRealmName() == "Onyxia" or
GetRealmName() == "Kezan" or
(GetRealmName() == "Blackrock [PvP only]" and GetExpansionLevel() == 1)
then
return
if not WeakAuras.IsWrath() then
return
end
Private.talentInfo = {
+74 -31
View File
@@ -1,7 +1,7 @@
local AddonName = ...
local Private = select(2, ...)
local internalVersion = 84
local internalVersion = 85
-- Lua APIs
local insert = table.insert
@@ -869,31 +869,41 @@ local function LoadCustomActionFunctions(data)
Private.customActionsFunctions[id] = {};
if (data.actions) then
if (data.actions.init and data.actions.init.do_custom and data.actions.init.custom) then
local func = WeakAuras.LoadFunction("return function() "..(data.actions.init.custom).."\n end");
Private.customActionsFunctions[id]["init"] = func;
if data.actions.init then
if data.actions.init.do_custom and data.actions.init.custom then
local func = WeakAuras.LoadFunction("return function() "..(data.actions.init.custom).."\n end", data.id);
Private.customActionsFunctions[id]["init"] = func
end
if data.actions.init.do_custom_load and data.actions.init.customOnLoad then
local func = WeakAuras.LoadFunction("return function() "..(data.actions.init.customOnLoad).."\n end", data.id);
Private.customActionsFunctions[id]["load"] = func
end
if data.actions.init.do_custom_unload and data.actions.init.customOnUnload then
local func = WeakAuras.LoadFunction("return function() "..(data.actions.init.customOnUnload).."\n end", data.id);
Private.customActionsFunctions[id]["unload"] = func
end
end
if (data.actions.start) then
if (data.actions.start.do_custom and data.actions.start.custom) then
local func = WeakAuras.LoadFunction("return function() "..(data.actions.start.custom).."\n end");
local func = WeakAuras.LoadFunction("return function() "..(data.actions.start.custom).."\n end", data.id);
Private.customActionsFunctions[id]["start"] = func;
end
if (data.actions.start.do_message and data.actions.start.message_custom) then
local func = WeakAuras.LoadFunction("return "..(data.actions.start.message_custom));
local func = WeakAuras.LoadFunction("return "..(data.actions.start.message_custom), data.id);
Private.customActionsFunctions[id]["start_message"] = func;
end
end
if (data.actions.finish) then
if (data.actions.finish.do_custom and data.actions.finish.custom) then
local func = WeakAuras.LoadFunction("return function() "..(data.actions.finish.custom).."\n end");
local func = WeakAuras.LoadFunction("return function() "..(data.actions.finish.custom).."\n end", data.id);
Private.customActionsFunctions[id]["finish"] = func;
end
if (data.actions.finish.do_message and data.actions.finish.message_custom) then
local func = WeakAuras.LoadFunction("return "..(data.actions.finish.message_custom));
local func = WeakAuras.LoadFunction("return "..(data.actions.finish.message_custom), data.id);
Private.customActionsFunctions[id]["finish_message"] = func;
end
end
@@ -1127,6 +1137,8 @@ function Private.Login(takeNewSnapshots)
db.history = nil
end
coroutine.yield(3000, "login check uid corruption")
local toAdd = {};
loginFinished = false
loginMessage = L["Options will open after the login process has completed."]
@@ -1444,7 +1456,7 @@ local function scanForLoadsImpl(toCheck, event, arg1, ...)
raidMemberType = raidMemberType + 2
end
local size, difficulty, instanceType = GetInstanceTypeAndSize()
local size, difficulty = GetInstanceTypeAndSize()
local group = Private.ExecEnv.GroupType()
local groupSize = GetNumGroupMembers()
@@ -1459,8 +1471,8 @@ local function scanForLoadsImpl(toCheck, event, arg1, ...)
if (data and not data.controlledChildren) then
local loadFunc = loadFuncs[id];
local loadOpt = loadFuncsForOptions[id];
shouldBeLoaded = loadFunc and loadFunc("ScanForLoads_Auras", inCombat, alive, pvp, vehicle, vehicleUi, mounted, player, realm, guild, class, race, faction, playerLevel, role, role, raidRole, group, groupSize, raidMemberType, zone, zoneId, subzone, size, difficulty);
couldBeLoaded = loadOpt and loadOpt("ScanForLoads_Auras", inCombat, alive, pvp, vehicle, vehicleUi, mounted, player, realm, guild, class, race, faction, playerLevel, role, role, raidRole, group, groupSize, raidMemberType, zone, zoneId, subzone, size, difficulty);
shouldBeLoaded = loadFunc and loadFunc("ScanForLoads_Auras", inCombat, alive, pvp, vehicle, vehicleUi, mounted, class, player, realm, guild, race, faction, playerLevel, role, role, raidRole, group, groupSize, raidMemberType, zone, zoneId, subzone, size, difficulty);
couldBeLoaded = loadOpt and loadOpt("ScanForLoads_Auras", inCombat, alive, pvp, vehicle, vehicleUi, mounted, class, player, realm, guild, race, faction, playerLevel, role, role, raidRole, group, groupSize, raidMemberType, zone, zoneId, subzone, size, difficulty);
if(shouldBeLoaded and not loaded[id]) then
changed = changed + 1;
@@ -1622,6 +1634,13 @@ local function UnloadAll()
for _, triggerSystem in pairs(triggerSystems) do
triggerSystem.UnloadAll();
end
for id in pairs(loaded) do
local func = Private.customActionsFunctions[id] and Private.customActionsFunctions[id]["unload"]
if func then
xpcall(func, Private.GetErrorHandlerId(id, "onUnload"))
end
end
wipe(loaded);
end
@@ -1669,21 +1688,34 @@ function Private.LoadDisplays(toLoad, ...)
for _, triggerSystem in pairs(triggerSystems) do
triggerSystem.LoadDisplays(toLoad, ...);
end
for id in pairs(toLoad) do
local func = Private.customActionsFunctions[id] and Private.customActionsFunctions[id]["load"]
if func then
xpcall(func, Private.GetErrorHandlerId(id, "onLoad"))
end
end
end
function Private.UnloadDisplays(toUnload, ...)
for id in pairs(toUnload) do
local func = Private.customActionsFunctions[id] and Private.customActionsFunctions[id]["unload"]
if func then
xpcall(func, Private.GetErrorHandlerId(id, "onUnload"))
end
end
for _, triggerSystem in pairs(triggerSystems) do
triggerSystem.UnloadDisplays(toUnload, ...);
end
for id in pairs(toUnload) do
for i = 1, triggerState[id].numTriggers do
if (triggerState[id][i]) then
wipe(triggerState[id][i]);
if triggerState[id] then
for i = 1, triggerState[id].numTriggers do
if (triggerState[id][i]) then
wipe(triggerState[id][i])
end
end
triggerState[id].show = nil
end
triggerState[id].show = nil;
if (timers[id]) then
for _, trigger in pairs(timers[id]) do
@@ -1738,6 +1770,11 @@ function WeakAuras.Delete(data)
local parentId = data.parent
local parentUid = data.parent and db.displays[data.parent].uid
if loaded[id] then
Private.UnloadDisplays({[id] = true})
end
Private.callbacks:Fire("AboutToDelete", uid, id, parentUid, parentId)
if(data.parent) then
@@ -2212,6 +2249,7 @@ local function loadOrder(tbl, idtable)
load(id, {});
coroutine.yield(100, "sort deps")
end
return order
end
@@ -2258,7 +2296,7 @@ function Private.AddMany(tbl, takeSnapshots)
else
if next(WeakAuras.LoadFromArchive("Repository", "migration").stores) ~= nil then
timer:ScheduleTimer(function()
prettyPrint(L["WeakAuras has detected empty settings. If this is unexpected, ask for assitance on https://discord.gg/weakauras."])
prettyPrint(L["WeakAuras has detected empty settings. If this is unexpected, ask for assitance on https://discord.gg/UXSc7nt."])
end, 1)
end
end
@@ -2701,7 +2739,7 @@ function WeakAuras.PreAdd(data, snapshot)
end
end
validateUserConfig(data, data.authorOptions, data.config)
if not(WeakAuras.isAwesomeEnabled()) then
if not(WeakAuras.IsAwesomeEnabled()) then
removeNameplateUnitsAndAnchors(data)
end
data.init_started = nil
@@ -2789,7 +2827,7 @@ function pAdd(data, simpleChange)
Private.ClearAuraEnvironment(parent.id);
end
db.displays[id] = data;
db.displays[id] = data
if (not data.triggers.activeTriggerMode or data.triggers.activeTriggerMode > #data.triggers) then
data.triggers.activeTriggerMode = Private.trigger_modes.first_active;
@@ -2811,11 +2849,11 @@ function pAdd(data, simpleChange)
loadEvents["SCAN_ALL"][id] = true
local loadForOptionsFuncStr = ConstructFunction(load_prototype, data.load, true);
local loadFunc = Private.LoadFunction(loadFuncStr);
local loadForOptionsFunc = Private.LoadFunction(loadForOptionsFuncStr);
local loadFunc = Private.LoadFunction(loadFuncStr, id);
local loadForOptionsFunc = Private.LoadFunction(loadForOptionsFuncStr, id);
local triggerLogicFunc;
if data.triggers.disjunctive == "custom" then
triggerLogicFunc = WeakAuras.LoadFunction("return "..(data.triggers.customTriggerLogic or ""));
triggerLogicFunc = WeakAuras.LoadFunction("return "..(data.triggers.customTriggerLogic or ""), data.id);
end
LoadCustomActionFunctions(data);
@@ -3005,8 +3043,8 @@ local function EnsureRegion(id)
-- So we go up the list of parents and collect auras that must be created
-- If we find a parent already exists, we can stop
local aurasToCreate = {}
while(id) do
local data = WeakAuras.GetData(id)
tinsert(aurasToCreate, data.id)
@@ -3771,17 +3809,11 @@ do
end
end
function WeakAuras.GetAuraTooltipInfo(unit, index, filter)
local tooltip = WeakAuras.GetHiddenTooltip();
tooltip:ClearLines();
tooltip:SetUnitAura(unit, index, filter);
local tooltipTextLine = select(3, tooltip:GetRegions())
local tooltipText = tooltipTextLine and tooltipTextLine:GetObjectType() == "FontString" and tooltipTextLine:GetText() or "";
function Private.ParseTooltipText(tooltipText)
local debuffType = "none";
local tooltipSize = {};
if(tooltipText) then
for t in tooltipText:gmatch("(%d[%d%.,]*)") do
for t in tooltipText:gmatch("(-?%d[%d%.,]*)") do
if (LARGE_NUMBER_SEPERATOR == ",") then
t = t:gsub(",", "");
else
@@ -3799,6 +3831,17 @@ function WeakAuras.GetAuraTooltipInfo(unit, index, filter)
end
end
function WeakAuras.GetAuraTooltipInfo(unit, index, filter)
local tooltipText = ""
local tooltip = WeakAuras.GetHiddenTooltip();
tooltip:ClearLines();
tooltip:SetUnitAura(unit, index, filter);
local tooltipTextLine = select(3, tooltip:GetRegions())
tooltipText = tooltipTextLine and tooltipTextLine:GetObjectType() == "FontString" and tooltipTextLine:GetText() or "";
return Private.ParseTooltipText(tooltipText)
end
local FrameTimes = {};
function WeakAuras.ProfileFrames(all)
UpdateAddOnCPUUsage();
+1 -1
View File
@@ -1,7 +1,7 @@
## Interface: 30300
## Title: WeakAuras
## Author: The WeakAuras Team
## Version: 5.19.9
## Version: 5.19.10
## X-Flavor: 3.3.5
## Notes: A powerful, comprehensive utility for displaying graphics and information based on buffs, debuffs, and other triggers.
## Notes-esES: Potente y completa aplicación que te permitirá mostrar por pantalla múltiples diseños, basados en beneficios, perjuicios y otros activadores.