5.19.10
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -42,15 +42,18 @@ Private.DiscordList = {
|
||||
[=[MetalMusicMan]=],
|
||||
[=[Murph]=],
|
||||
[=[Mynze]=],
|
||||
[=[NoM0Re]=],
|
||||
[=[Nona]=],
|
||||
[=[NostraDumAzz]=],
|
||||
[=[Oi]=],
|
||||
[=[opti]=],
|
||||
[=[Ora]=],
|
||||
[=[phoenix7700]=],
|
||||
[=[pit]=],
|
||||
[=[Putro]=],
|
||||
[=[reggie]=],
|
||||
[=[Reloe]=],
|
||||
[=[Saaggs]=],
|
||||
[=[Spaten]=],
|
||||
[=[Tel]=],
|
||||
[=[Translit]=],
|
||||
|
||||
+384
-231
File diff suppressed because it is too large
Load Diff
+27
-2
@@ -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
@@ -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"
|
||||
|
||||
@@ -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
@@ -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
@@ -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
@@ -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 it’s 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 it’s 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 d’unité spécifiques. • |cff00ff00Unité spécifique|r vous permet d’indiquer un identifiant d’unité valide à surveiller. |cffff0000Remarque|r : Le jeu ne déclenche pas d’événements pour tous les identifiants d’unité 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 d’unité associés. • |cffffff00Groupe intelligent|r s’ajuste 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 d’unité en jaune créeront des clones pour chaque unité correspondante tant que ce déclencheur fournit des informations dynamiques à l’aura."
|
||||
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
@@ -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
@@ -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"] = "참"
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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
@@ -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 上提交工单或是访问我们的 Discord:https://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但不是最高"
|
||||
|
||||
@@ -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
@@ -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
File diff suppressed because it is too large
Load Diff
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
@@ -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,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"] = {
|
||||
|
||||
@@ -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 = {
|
||||
|
||||
@@ -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
@@ -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,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.
|
||||
|
||||
Reference in New Issue
Block a user