mirror of
https://github.com/brues-code/pfUI.git
synced 2026-10-30 15:40:51 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f33a9068f2 | ||
|
|
187e057923 | ||
|
|
3899004957 | ||
|
|
ee73cde828 | ||
|
|
76efd5b490 | ||
|
|
393b37b8c3 | ||
|
|
7928db33bf | ||
|
|
5d8314b2d4 | ||
|
|
3987cfb8a0 | ||
|
|
796f20eadf | ||
|
|
26c55bddb0 | ||
|
|
8c22fdb850 | ||
|
|
2d275c53fa | ||
|
|
ba752056ad | ||
|
|
1ccf87c61a | ||
|
|
dc89f01dda | ||
|
|
a917a70b1c | ||
|
|
03ea3d5aa5 | ||
|
|
2b4d33d46a | ||
|
|
94dcfb3dad | ||
|
|
0890905eb6 | ||
|
|
6c76a88467 | ||
|
|
35c32f365e | ||
|
|
6dcb5162be | ||
|
|
8afafe71cf | ||
|
|
99ed538ee7 | ||
|
|
f382039f21 | ||
|
|
8307dd757e |
+1
-1
@@ -13,7 +13,7 @@ do
|
|||||||
-- on. There pfUI does load, and will throw wherever it reaches for something
|
-- on. There pfUI does load, and will throw wherever it reaches for something
|
||||||
-- the installed DLL doesn't have yet -- the popup names the cause so those
|
-- the installed DLL doesn't have yet -- the popup names the cause so those
|
||||||
-- errors aren't a mystery.
|
-- errors aren't a mystery.
|
||||||
local PFUI_CLASSIC_API_MIN = 11703 -- (X*10000 + Y*100 + Z)
|
local PFUI_CLASSIC_API_MIN = 11805 -- (X*10000 + Y*100 + Z)
|
||||||
local PFUI_CLASSIC_API_LATEST = PFUI_CLASSIC_API_MIN
|
local PFUI_CLASSIC_API_LATEST = PFUI_CLASSIC_API_MIN
|
||||||
local PFUI_CLASSIC_API_WEBSITE = "https://github.com/brues-code/ClassicAPI"
|
local PFUI_CLASSIC_API_WEBSITE = "https://github.com/brues-code/ClassicAPI"
|
||||||
local PFUI_CLASSIC_API_LATEST_URL = PFUI_CLASSIC_API_WEBSITE .. "/releases/latest"
|
local PFUI_CLASSIC_API_LATEST_URL = PFUI_CLASSIC_API_WEBSITE .. "/releases/latest"
|
||||||
|
|||||||
+9
-49
@@ -722,22 +722,9 @@ end
|
|||||||
function pfUI.api.CreateGoldString(money)
|
function pfUI.api.CreateGoldString(money)
|
||||||
if type(money) ~= "number" then return "-" end
|
if type(money) ~= "number" then return "-" end
|
||||||
|
|
||||||
if _G.GetCoinTextureString then
|
|
||||||
return "|cffffffff" .. _G.GetCoinTextureString(money) .. "|r"
|
return "|cffffffff" .. _G.GetCoinTextureString(money) .. "|r"
|
||||||
end
|
end
|
||||||
|
|
||||||
local gold = floor(money/ 100 / 100)
|
|
||||||
local silver = floor(mod((money/100),100))
|
|
||||||
local copper = floor(mod(money,100))
|
|
||||||
|
|
||||||
local string = ""
|
|
||||||
if gold > 0 then string = string .. "|cffffffff" .. gold .. "|cffffd700g" end
|
|
||||||
if silver > 0 or gold > 0 then string = string .. "|cffffffff " .. silver .. "|cffc7c7cfs" end
|
|
||||||
string = string .. "|cffffffff " .. copper .. "|cffeda55fc"
|
|
||||||
|
|
||||||
return string
|
|
||||||
end
|
|
||||||
|
|
||||||
-- [ Enable Movable ]
|
-- [ Enable Movable ]
|
||||||
-- Set all necessary functions to make a already existing frame movable.
|
-- Set all necessary functions to make a already existing frame movable.
|
||||||
-- 'name' [frame/string] Name of the Frame that should be movable
|
-- 'name' [frame/string] Name of the Frame that should be movable
|
||||||
@@ -1353,15 +1340,18 @@ end
|
|||||||
|
|
||||||
-- [ Bar Layout Options ] --
|
-- [ Bar Layout Options ] --
|
||||||
-- 'barsize' size of bar in number of buttons
|
-- 'barsize' size of bar in number of buttons
|
||||||
-- returns: array of options as strings for pfUI.gui.bar
|
-- returns: array of options as strings for pfUI.gui.bar: every grid
|
||||||
|
-- that fits the bar exactly, plus common uneven ones
|
||||||
function pfUI.api.BarLayoutOptions(barsize)
|
function pfUI.api.BarLayoutOptions(barsize)
|
||||||
assert(barsize > 0 and barsize <= NUM_ACTIONBAR_BUTTONS,"BarLayoutOptions: barsize "..tostring(barsize).." is invalid")
|
assert(barsize > 0 and barsize <= NUM_ACTIONBAR_BUTTONS,"BarLayoutOptions: barsize "..tostring(barsize).." is invalid")
|
||||||
local options, seen = {}, {}
|
local options, seen = {}, {}
|
||||||
local function add(option)
|
local function add(option)
|
||||||
if not seen[option] then table.insert(options, option); seen[option] = true end
|
if not seen[option] then table.insert(options, option); seen[option] = true end
|
||||||
end
|
end
|
||||||
for i,layout in ipairs(pfGridmath[barsize]) do
|
for cols = 1, barsize do
|
||||||
add(string.format("%d x %d",layout[1],layout[2]))
|
if barsize % cols == 0 then
|
||||||
|
add(string.format("%d x %d", cols, barsize / cols))
|
||||||
|
end
|
||||||
end
|
end
|
||||||
for _, option in ipairs({
|
for _, option in ipairs({
|
||||||
"1 x 12", "1 x 10", "2 x 10", "2 x 5", "3 x 10", "3 x 5", "3 x 3",
|
"1 x 12", "1 x 10", "2 x 10", "2 x 5", "3 x 10", "3 x 5", "3 x 3",
|
||||||
@@ -1381,31 +1371,10 @@ function pfUI.api.BarLayoutOptions(barsize)
|
|||||||
return options
|
return options
|
||||||
end
|
end
|
||||||
|
|
||||||
-- [ Bar Layout Formfactor ] --
|
-- 'formfactor' has to be a "cols x rows" string; the actionbar module resets
|
||||||
-- 'option' string option as used in pfUI_config.bars[bar].option
|
-- a stored layout that isn't one before it lays out a bar
|
||||||
-- returns: integer formfactor
|
|
||||||
local formfactors = {}
|
|
||||||
setmetatable(formfactors, {__mode = "v"}) -- weak table so values not referenced are collected on next gc
|
|
||||||
function pfUI.api.BarLayoutFormfactor(option)
|
|
||||||
if formfactors[option] then
|
|
||||||
return formfactors[option]
|
|
||||||
else
|
|
||||||
for barsize,_ in ipairs(pfGridmath) do
|
|
||||||
local options = pfUI.api.BarLayoutOptions(barsize)
|
|
||||||
for i,opt in ipairs(options) do
|
|
||||||
if opt == option then
|
|
||||||
formfactors[option] = i
|
|
||||||
return formfactors[option]
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local function ResolveBarLayout(barsize, formfactor, uneven)
|
local function ResolveBarLayout(barsize, formfactor, uneven)
|
||||||
local layout = tostring(formfactor or "")
|
local _, _, a, b = string.find(formfactor, "(%d+)%s*x%s*(%d+)")
|
||||||
local _, _, a, b = string.find(layout, "(%d+)%s*x%s*(%d+)")
|
|
||||||
if a and b then
|
|
||||||
local cols, rows = tonumber(a), tonumber(b)
|
local cols, rows = tonumber(a), tonumber(b)
|
||||||
cols = math.min(NUM_ACTIONBAR_BUTTONS, math.max(1, cols))
|
cols = math.min(NUM_ACTIONBAR_BUTTONS, math.max(1, cols))
|
||||||
rows = math.min(NUM_ACTIONBAR_BUTTONS, math.max(1, rows))
|
rows = math.min(NUM_ACTIONBAR_BUTTONS, math.max(1, rows))
|
||||||
@@ -1420,11 +1389,6 @@ local function ResolveBarLayout(barsize, formfactor, uneven)
|
|||||||
end
|
end
|
||||||
return cols, rows, mode, orientation
|
return cols, rows, mode, orientation
|
||||||
end
|
end
|
||||||
local index = pfUI.api.BarLayoutFormfactor(layout)
|
|
||||||
if not index then return nil end
|
|
||||||
local cols, rows = unpack(pfGridmath[barsize][index])
|
|
||||||
return cols, rows, "rows", "DOWN"
|
|
||||||
end
|
|
||||||
|
|
||||||
-- [ Bar Layout Size ] --
|
-- [ Bar Layout Size ] --
|
||||||
-- 'bar' frame reference,
|
-- 'bar' frame reference,
|
||||||
@@ -1434,7 +1398,6 @@ end
|
|||||||
function pfUI.api.BarLayoutSize(bar,barsize,formfactor,iconsize,bordersize,padding,uneven,fillmode)
|
function pfUI.api.BarLayoutSize(bar,barsize,formfactor,iconsize,bordersize,padding,uneven,fillmode)
|
||||||
assert(barsize > 0 and barsize <= NUM_ACTIONBAR_BUTTONS,"BarLayoutSize: barsize "..tostring(barsize).." is invalid")
|
assert(barsize > 0 and barsize <= NUM_ACTIONBAR_BUTTONS,"BarLayoutSize: barsize "..tostring(barsize).." is invalid")
|
||||||
local cols, rows = ResolveBarLayout(barsize, formfactor, uneven)
|
local cols, rows = ResolveBarLayout(barsize, formfactor, uneven)
|
||||||
if not cols or not rows then cols, rows = unpack(pfGridmath[barsize][1]) end
|
|
||||||
local width = (iconsize + bordersize*2+padding) * cols + padding
|
local width = (iconsize + bordersize*2+padding) * cols + padding
|
||||||
local height = (iconsize + bordersize*2+padding) * rows + padding
|
local height = (iconsize + bordersize*2+padding) * rows + padding
|
||||||
bar._size = {width,height}
|
bar._size = {width,height}
|
||||||
@@ -1452,9 +1415,6 @@ end
|
|||||||
function pfUI.api.BarButtonAnchor(button,basename,buttonindex,barsize,formfactor,iconsize,bordersize,padding,uneven,fillmode)
|
function pfUI.api.BarButtonAnchor(button,basename,buttonindex,barsize,formfactor,iconsize,bordersize,padding,uneven,fillmode)
|
||||||
assert(barsize > 0 and barsize <= NUM_ACTIONBAR_BUTTONS,"BarButtonAnchor: barsize "..tostring(barsize).." is invalid")
|
assert(barsize > 0 and barsize <= NUM_ACTIONBAR_BUTTONS,"BarButtonAnchor: barsize "..tostring(barsize).." is invalid")
|
||||||
local cols, rows, mode, orientation = ResolveBarLayout(barsize, formfactor, uneven)
|
local cols, rows, mode, orientation = ResolveBarLayout(barsize, formfactor, uneven)
|
||||||
if not cols or not rows then
|
|
||||||
cols, rows, mode, orientation = unpack(pfGridmath[barsize][1]), "rows", "DOWN"
|
|
||||||
end
|
|
||||||
|
|
||||||
-- fillmode: remap buttonindex to slotindex (grid position in native fill order)
|
-- fillmode: remap buttonindex to slotindex (grid position in native fill order)
|
||||||
-- only needed when fill direction differs from layout mode
|
-- only needed when fill direction differs from layout mode
|
||||||
|
|||||||
+1
-1
@@ -171,7 +171,6 @@ function pfUI:LoadConfig()
|
|||||||
pfUI:UpdateConfig("appearance", "bags", "newitem_color", "1,1,1,1")
|
pfUI:UpdateConfig("appearance", "bags", "newitem_color", "1,1,1,1")
|
||||||
pfUI:UpdateConfig("appearance", "bags", "borderlimit", "1")
|
pfUI:UpdateConfig("appearance", "bags", "borderlimit", "1")
|
||||||
pfUI:UpdateConfig("appearance", "bags", "borderonlygear", "0")
|
pfUI:UpdateConfig("appearance", "bags", "borderonlygear", "0")
|
||||||
pfUI:UpdateConfig("appearance", "bags", "fulltext", "1")
|
|
||||||
pfUI:UpdateConfig("appearance", "bags", "movable", "0")
|
pfUI:UpdateConfig("appearance", "bags", "movable", "0")
|
||||||
pfUI:UpdateConfig("appearance", "bags", "abovechat", "0")
|
pfUI:UpdateConfig("appearance", "bags", "abovechat", "0")
|
||||||
pfUI:UpdateConfig("appearance", "bags", "hidechat", "0")
|
pfUI:UpdateConfig("appearance", "bags", "hidechat", "0")
|
||||||
@@ -826,6 +825,7 @@ function pfUI:LoadConfig()
|
|||||||
pfUI:UpdateConfig("chat", "text", "timeformat", "%H:%M:%S")
|
pfUI:UpdateConfig("chat", "text", "timeformat", "%H:%M:%S")
|
||||||
pfUI:UpdateConfig("chat", "text", "timebracket", "[]")
|
pfUI:UpdateConfig("chat", "text", "timebracket", "[]")
|
||||||
pfUI:UpdateConfig("chat", "text", "timecolor", ".8,.8,.8,1")
|
pfUI:UpdateConfig("chat", "text", "timecolor", ".8,.8,.8,1")
|
||||||
|
pfUI:UpdateConfig("chat", "text", "copytime", "1")
|
||||||
pfUI:UpdateConfig("chat", "text", "tintunknown", "1")
|
pfUI:UpdateConfig("chat", "text", "tintunknown", "1")
|
||||||
pfUI:UpdateConfig("chat", "text", "unknowncolor", ".7,.7,.7,1")
|
pfUI:UpdateConfig("chat", "text", "unknowncolor", ".7,.7,.7,1")
|
||||||
pfUI:UpdateConfig("chat", "text", "channelnumonly", "1")
|
pfUI:UpdateConfig("chat", "text", "channelnumonly", "1")
|
||||||
|
|||||||
+111
-317
@@ -3,19 +3,19 @@ setfenv(1, pfUI:GetEnvironment())
|
|||||||
|
|
||||||
do -- statusbars
|
do -- statusbars
|
||||||
local animations = {}
|
local animations = {}
|
||||||
local stepsize, val
|
local stepsize
|
||||||
local width, height, point
|
|
||||||
|
|
||||||
-- ClassicAPI before v1.18.0 leaves the UI scale in the size of an anchored
|
-- native StatusBar methods the bar overrides
|
||||||
-- frame, so the bar has to divide it back out
|
local statusbar = CreateFrame("StatusBar")
|
||||||
local scaledsize = CLASSIC_API_VERSION < 11800
|
local SetValue, SetMinMaxValues = statusbar.SetValue, statusbar.SetMinMaxValues
|
||||||
|
local SetOrientation, SetFrameLevel = statusbar.SetOrientation, statusbar.SetFrameLevel
|
||||||
|
|
||||||
local animate = CreateFrame("Frame", "pfStatusBarAnimation", UIParent)
|
local animate = CreateFrame("Frame", "pfStatusBarAnimation", UIParent)
|
||||||
animate:SetScript("OnUpdate", function()
|
animate:SetScript("OnUpdate", function()
|
||||||
stepsize = tonumber(pfUI_config.unitframes.animation_speed)
|
stepsize = tonumber(pfUI_config.unitframes.animation_speed)
|
||||||
|
|
||||||
for bar in pairs(animations) do
|
for bar in pairs(animations) do
|
||||||
if not bar.val_ or abs(bar.val_ - bar.val) < stepsize or bar.instant then
|
if not bar.val_ or abs(bar.val_ - bar.val) < stepsize then
|
||||||
bar:DisplayValue(bar.val)
|
bar:DisplayValue(bar.val)
|
||||||
elseif bar.val ~= bar.val_ then
|
elseif bar.val ~= bar.val_ then
|
||||||
bar:DisplayValue(bar.val_ + min((bar.val-bar.val_) / stepsize, max(bar.val-bar.val_, 30 / GetFramerate())))
|
bar:DisplayValue(bar.val_ + min((bar.val-bar.val_) / stepsize, max(bar.val-bar.val_, 30 / GetFramerate())))
|
||||||
@@ -25,7 +25,8 @@ do -- statusbars
|
|||||||
|
|
||||||
local handlers = {
|
local handlers = {
|
||||||
["DisplayValue"] = function(self, val)
|
["DisplayValue"] = function(self, val)
|
||||||
val = Clamp(val, self.min, self.max)
|
local smin, smax = self:GetMinMaxValues()
|
||||||
|
val = Clamp(val, smin, smax)
|
||||||
|
|
||||||
-- remove animation queue
|
-- remove animation queue
|
||||||
if val == self.val_ then
|
if val == self.val_ then
|
||||||
@@ -34,53 +35,20 @@ do -- statusbars
|
|||||||
|
|
||||||
-- set current visible value
|
-- set current visible value
|
||||||
self.val_ = val
|
self.val_ = val
|
||||||
|
SetValue(self, val)
|
||||||
|
|
||||||
if self.mode == "vertical" then
|
-- the background fills the missing part, all of an empty range
|
||||||
height = self:GetHeight()
|
self.bg:SetValue(smax > smin and (smax - val) / (smax - smin) or 1)
|
||||||
if scaledsize then height = height / self:GetEffectiveScale() end
|
|
||||||
point = height / (self.max - self.min) * (val - self.min)
|
|
||||||
|
|
||||||
-- keep values in limits
|
|
||||||
point = Clamp(point, 0, height)
|
|
||||||
|
|
||||||
-- set point to zero if value and max is zero
|
|
||||||
if val == 0 then point = 0 end
|
|
||||||
|
|
||||||
-- set status bar position/size
|
|
||||||
self.bar:SetPoint("TOPLEFT", self, "TOPLEFT", 0, - height + point)
|
|
||||||
self.bar:SetPoint("BOTTOMRIGHT", self, "BOTTOMRIGHT", 0, 0)
|
|
||||||
|
|
||||||
-- set background bar position/size
|
|
||||||
self.bg:SetPoint("TOPLEFT", self, "TOPLEFT", 0, 0)
|
|
||||||
self.bg:SetPoint("BOTTOMRIGHT", self, "BOTTOMRIGHT", 0, point)
|
|
||||||
else
|
|
||||||
width = self:GetWidth()
|
|
||||||
if scaledsize then width = width / self:GetEffectiveScale() end
|
|
||||||
point = width / (self.max - self.min) * (val - self.min)
|
|
||||||
|
|
||||||
-- keep values in limits
|
|
||||||
point = Clamp(point, 0, width)
|
|
||||||
|
|
||||||
-- set point to zero if value and max is zero
|
|
||||||
if val == 0 then point = 0 end
|
|
||||||
|
|
||||||
-- set status bar position/size
|
|
||||||
self.bar:SetPoint("TOPLEFT", self, "TOPLEFT", 0, 0)
|
|
||||||
self.bar:SetPoint("BOTTOMRIGHT", self, "BOTTOMRIGHT", - width + point, 0)
|
|
||||||
|
|
||||||
-- set background bar position/size
|
|
||||||
self.bg:SetPoint("BOTTOMRIGHT", self, "BOTTOMRIGHT", 0, 0)
|
|
||||||
self.bg:SetPoint("TOPLEFT", self, "TOPLEFT", point, 0)
|
|
||||||
end
|
|
||||||
end,
|
end,
|
||||||
|
|
||||||
["SetMinMaxValues"] = function(self, smin, smax, smooth)
|
["SetMinMaxValues"] = function(self, smin, smax, smooth)
|
||||||
-- smoothen the transition by keeping the value at the same percentage as before
|
-- smoothen the transition by keeping the value at the same percentage as before
|
||||||
if smooth and self.max and self.max > 0 and smax > 0 and self.max ~= smax then
|
local _, oldmax = self:GetMinMaxValues()
|
||||||
self.val_ = (self.val_ or self.val) / self.max * smax
|
if smooth and oldmax > 0 and smax > 0 and oldmax ~= smax then
|
||||||
|
self.val_ = (self.val_ or self.val) / oldmax * smax
|
||||||
end
|
end
|
||||||
|
|
||||||
self.min, self.max = smin, smax
|
SetMinMaxValues(self, smin, smax)
|
||||||
self:DisplayValue(self.val_ or self.val)
|
self:DisplayValue(self.val_ or self.val)
|
||||||
end,
|
end,
|
||||||
|
|
||||||
@@ -93,41 +61,35 @@ do -- statusbars
|
|||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
|
|
||||||
["SetStatusBarTexture"] = function(self, r, g, b, a)
|
|
||||||
self.bar:SetTexture(r, g, b, a)
|
|
||||||
end,
|
|
||||||
|
|
||||||
["SetStatusBarColor"] = function(self, r, g, b, a)
|
|
||||||
self.bar:SetVertexColor(r, g, b, a)
|
|
||||||
end,
|
|
||||||
|
|
||||||
["SetStatusBarBackgroundTexture"] = function(self, r, g, b, a)
|
|
||||||
self.bg:SetTexture(r, g, b, a)
|
|
||||||
end,
|
|
||||||
|
|
||||||
["SetStatusBarBackgroundColor"] = function(self, r, g, b, a)
|
["SetStatusBarBackgroundColor"] = function(self, r, g, b, a)
|
||||||
self.bg:SetVertexColor(r, g, b, a)
|
self.bg:SetColorFill(r, g, b, a)
|
||||||
end,
|
end,
|
||||||
|
|
||||||
["SetOrientation"] = function(self, mode)
|
["SetOrientation"] = function(self, orientation)
|
||||||
self.mode = strlower(mode)
|
SetOrientation(self, orientation)
|
||||||
|
self.bg:SetOrientation(orientation)
|
||||||
|
end,
|
||||||
|
|
||||||
|
-- the background stays one level below the fill, under anything else
|
||||||
|
-- drawn on the fill's frame
|
||||||
|
["SetFrameLevel"] = function(self, level)
|
||||||
|
SetFrameLevel(self, level)
|
||||||
|
self.bg:SetFrameLevel(level - 1)
|
||||||
end,
|
end,
|
||||||
}
|
}
|
||||||
|
|
||||||
function pfUI.api.CreateStatusBar(name, parent)
|
function pfUI.api.CreateStatusBar(name, parent)
|
||||||
local f = CreateFrame("Button", name, parent)
|
local f = CreateFrame("StatusBar", name, parent)
|
||||||
f:EnableMouse(false)
|
SetMinMaxValues(f, 0, 100)
|
||||||
|
SetValue(f, 0)
|
||||||
|
f.val = 0
|
||||||
|
|
||||||
f.bar = f:CreateTexture(nil, "NORMAL")
|
f.bg = CreateFrame("StatusBar", nil, f)
|
||||||
f.bar:SetPoint("TOPLEFT", f, "TOPLEFT", 0, 0)
|
f.bg:SetFrameLevel(f:GetFrameLevel() - 1)
|
||||||
f.bar:SetPoint("BOTTOMRIGHT", f, "BOTTOMRIGHT", 0, 0)
|
f.bg:SetAllPoints(f)
|
||||||
|
f.bg:SetReverseFill(true)
|
||||||
f.bg = f:CreateTexture(nil, "BACKGROUND")
|
f.bg:SetMinMaxValues(0, 1)
|
||||||
f.bg:SetPoint("TOPLEFT", f, "TOPLEFT", 0, 0)
|
f.bg:SetValue(1)
|
||||||
f.bg:SetPoint("BOTTOMRIGHT", f, "BOTTOMRIGHT", 0, 0)
|
|
||||||
|
|
||||||
-- set some default values
|
|
||||||
f.min, f.max, f.val = 0, 100, 0
|
|
||||||
|
|
||||||
-- add all handler functions to the object
|
-- add all handler functions to the object
|
||||||
for name, func in pairs(handlers) do
|
for name, func in pairs(handlers) do
|
||||||
@@ -354,186 +316,28 @@ do -- dropdown
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function pfUI.api.CreateTabChild(self, title, bwidth, bheight, bottom, static)
|
-- [ pfUIScrollingEditBoxTemplate ]
|
||||||
-- create tab button
|
-- Mixin of the template in ui-widgets.xml: ClassicAPI's scrolling edit box
|
||||||
local b = CreateFrame("Button", "pfConfig" .. title .. "Button", self, "UIPanelButtonTemplate")
|
-- with pfUI's scroll bar beside it.
|
||||||
b:SetText(title)
|
_G.pfUIScrollingEditBoxMixin = {}
|
||||||
|
|
||||||
-- setup env
|
function pfUIScrollingEditBoxMixin:InitScrollBar()
|
||||||
local childcount = table.getn(self.childs) + 1
|
local scrollBox = self:GetScrollBox()
|
||||||
local button_width = bwidth
|
scrollBox:ClearAllPoints()
|
||||||
local button_height = bheight or 20
|
scrollBox:SetPoint("TOPLEFT")
|
||||||
local border = 4
|
scrollBox:SetPoint("BOTTOMRIGHT", self.ScrollBar, "BOTTOMLEFT")
|
||||||
|
ScrollUtil.RegisterScrollBoxWithScrollBar(scrollBox, self.ScrollBar)
|
||||||
if not button_width then
|
|
||||||
button_width = 150
|
|
||||||
elseif button_width == true then
|
|
||||||
button_width = _G["pfConfig" .. title .. "ButtonText"]:GetStringWidth() + 4 * border
|
|
||||||
end
|
end
|
||||||
|
|
||||||
-- set dimensions
|
-- The edit box takes its font from a font object and sets that object again
|
||||||
b:SetSize(button_width, button_height)
|
-- on every SetText, so a font path goes through a font object of the frame's own.
|
||||||
b:SetID(childcount)
|
function pfUIScrollingEditBoxMixin:SetFont(font, size, flags)
|
||||||
|
if not self.font then
|
||||||
if not self.align or self.align == "LEFT" then
|
self.font = CreateFont(self:GetName() .. "Font")
|
||||||
local outside = self.outside and -2 * border - button_width or 0
|
self:GetEditBox().fontName = self.font
|
||||||
if bottom then
|
|
||||||
b:SetPoint("BOTTOMLEFT", self, "BOTTOMLEFT", border + outside, (self.bottomcount-1) * (button_height) + (self.bottomcount * border) )
|
|
||||||
else
|
|
||||||
b:SetPoint("TOPLEFT", self, "TOPLEFT", border + outside, -(childcount-1) * (button_height) - (childcount * border) )
|
|
||||||
end
|
end
|
||||||
elseif self.align == "TOP" then
|
self.font:SetFont(font, size, flags)
|
||||||
local outside = self.outside and 2 * border + button_height or 0
|
self:SetFontObject(self.font)
|
||||||
local prev_button = self.buttons[getn(self.buttons)]
|
|
||||||
if prev_button then
|
|
||||||
b:SetPoint("TOPLEFT", prev_button, "TOPRIGHT", border, 0)
|
|
||||||
else
|
|
||||||
b:SetPoint("TOPLEFT", self, "TOPLEFT", border + (self.outside and -border), -border + outside )
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
SkinButton(b,.2,1,.8)
|
|
||||||
|
|
||||||
if childcount ~= 1 then
|
|
||||||
b:SetTextColor(.5,.5,.5)
|
|
||||||
else
|
|
||||||
b:SetTextColor(.2,1,.8)
|
|
||||||
end
|
|
||||||
|
|
||||||
b:SetScript("OnClick", function()
|
|
||||||
for k,v in pairs(self.childs) do
|
|
||||||
v:Hide()
|
|
||||||
end
|
|
||||||
self.childs[this:GetID()]:Show()
|
|
||||||
|
|
||||||
for k,v in pairs(self.buttons) do
|
|
||||||
v.active = false
|
|
||||||
v:SetTextColor(.5,.5,.5)
|
|
||||||
end
|
|
||||||
self.buttons[this:GetID()]:SetTextColor(.2,1,.8)
|
|
||||||
end)
|
|
||||||
|
|
||||||
self.buttons[childcount] = b
|
|
||||||
self.bottomcount = bottom and self.bottomcount + 1 or self.bottomcount
|
|
||||||
|
|
||||||
-- create child frame
|
|
||||||
local child, scrollchild = nil, nil
|
|
||||||
if not static then
|
|
||||||
child = CreateScrollFrame("pfConfig" .. title .. "Frame", self)
|
|
||||||
scrollchild = CreateScrollChild("pfConfig" .. title .. "ScrollChild", child)
|
|
||||||
else
|
|
||||||
child = CreateFrame("Frame", "pfConfig" .. title .. "Frame", self)
|
|
||||||
end
|
|
||||||
|
|
||||||
if childcount ~= 1 then child:Hide() end
|
|
||||||
|
|
||||||
if not self.align or self.align == "LEFT" then
|
|
||||||
child:SetPoint("TOPLEFT", self, "TOPLEFT", button_width + 2*border + 5, -border -5)
|
|
||||||
child:SetPoint("BOTTOMRIGHT", self, "BOTTOMRIGHT", -border -5 , border + 5)
|
|
||||||
elseif self.align == "TOP" then
|
|
||||||
if self.outside then
|
|
||||||
child:SetPoint("TOPLEFT", self, "TOPLEFT", 5, -5)
|
|
||||||
child:SetPoint("BOTTOMRIGHT", self, "BOTTOMRIGHT", -5, 5)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
CreateBackdrop(child)
|
|
||||||
SetAllPointsOffset(child.backdrop, child, -5,5)
|
|
||||||
|
|
||||||
local ret = scrollchild or child
|
|
||||||
ret.button = b
|
|
||||||
table.insert(self.childs, child)
|
|
||||||
return ret
|
|
||||||
end
|
|
||||||
|
|
||||||
function pfUI.api.CreateTabFrame(parent, align, outside)
|
|
||||||
local f = CreateFrame("Frame", nil, parent)
|
|
||||||
|
|
||||||
f:SetPoint("TOPLEFT", parent, "TOPLEFT", -5, 5)
|
|
||||||
f:SetPoint("BOTTOMRIGHT", parent, "BOTTOMRIGHT", 5, -5)
|
|
||||||
|
|
||||||
-- setup env
|
|
||||||
f.childs = { }
|
|
||||||
f.buttons = { }
|
|
||||||
f.align = align
|
|
||||||
f.outside = outside
|
|
||||||
f.bottomcount = 1
|
|
||||||
|
|
||||||
-- Create Child Frame
|
|
||||||
f.CreateTabChild = pfUI.api.CreateTabChild
|
|
||||||
|
|
||||||
return f
|
|
||||||
end
|
|
||||||
|
|
||||||
function pfUI.api.CreateScrollFrame(name, parent)
|
|
||||||
local f = CreateFrame("ScrollFrame", name, parent)
|
|
||||||
|
|
||||||
-- create slider
|
|
||||||
f.slider = CreateFrame("Slider", nil, f)
|
|
||||||
f.slider:SetOrientation('VERTICAL')
|
|
||||||
f.slider:SetPoint("TOPLEFT", f, "TOPRIGHT", -7, 0)
|
|
||||||
f.slider:SetPoint("BOTTOMRIGHT", 0, 0)
|
|
||||||
f.slider:SetThumbTexture(pfUI.media["img:col"])
|
|
||||||
f.slider.thumb = f.slider:GetThumbTexture()
|
|
||||||
f.slider.thumb:SetHeight(50)
|
|
||||||
f.slider.thumb:SetTexture(.3,1,.8,.5)
|
|
||||||
|
|
||||||
f.slider:SetScript("OnValueChanged", function()
|
|
||||||
f:SetVerticalScroll(this:GetValue())
|
|
||||||
f.UpdateScrollState()
|
|
||||||
end)
|
|
||||||
|
|
||||||
f.UpdateScrollState = function()
|
|
||||||
f.slider:SetMinMaxValues(0, f:GetVerticalScrollRange())
|
|
||||||
f.slider:SetValue(f:GetVerticalScroll())
|
|
||||||
|
|
||||||
local m = f:GetHeight()+f:GetVerticalScrollRange()
|
|
||||||
local v = f:GetHeight()
|
|
||||||
local ratio = v / m
|
|
||||||
|
|
||||||
if ratio < 1 then
|
|
||||||
local size = math.floor(v * ratio)
|
|
||||||
f.slider.thumb:SetHeight(size)
|
|
||||||
f.slider:Show()
|
|
||||||
else
|
|
||||||
f.slider:Hide()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
f.Scroll = function(self, step)
|
|
||||||
local step = step or 0
|
|
||||||
|
|
||||||
local current = f:GetVerticalScroll()
|
|
||||||
local max = f:GetVerticalScrollRange()
|
|
||||||
local new = current - step
|
|
||||||
|
|
||||||
f:SetVerticalScroll(Clamp(new, 0, max))
|
|
||||||
|
|
||||||
f:UpdateScrollState()
|
|
||||||
end
|
|
||||||
|
|
||||||
f:EnableMouseWheel(1)
|
|
||||||
f:SetScript("OnMouseWheel", function()
|
|
||||||
this:Scroll(arg1*10)
|
|
||||||
end)
|
|
||||||
|
|
||||||
return f
|
|
||||||
end
|
|
||||||
|
|
||||||
function pfUI.api.CreateScrollChild(name, parent)
|
|
||||||
local f = CreateFrame("Frame", name, parent)
|
|
||||||
|
|
||||||
-- dummy values required
|
|
||||||
f:SetSize(1, 1)
|
|
||||||
f:SetAllPoints(parent)
|
|
||||||
|
|
||||||
parent:SetScrollChild(f)
|
|
||||||
|
|
||||||
f:SetScript("OnUpdate", function()
|
|
||||||
this:GetParent():UpdateScrollState()
|
|
||||||
end)
|
|
||||||
|
|
||||||
return f
|
|
||||||
end
|
end
|
||||||
|
|
||||||
-- [ CreateTextBox ]
|
-- [ CreateTextBox ]
|
||||||
@@ -1266,7 +1070,7 @@ end
|
|||||||
-- survives filter changes -- a spell icon you picked still saves after you
|
-- survives filter changes -- a spell icon you picked still saves after you
|
||||||
-- switch the filter to "Items" and it drops out of the visible grid.
|
-- switch the filter to "Items" and it drops out of the visible grid.
|
||||||
--
|
--
|
||||||
-- name global-name prefix for the scroll frame and editboxes
|
-- name global-name prefix for the icon grid and editboxes
|
||||||
-- parent the popup frame to attach the widgets to
|
-- parent the popup frame to attach the widgets to
|
||||||
-- extraType IconDataProviderExtraType.* seed (Spellbook / Equipment)
|
-- extraType IconDataProviderExtraType.* seed (Spellbook / Equipment)
|
||||||
-- nameLabelText header shown above the name field
|
-- nameLabelText header shown above the name field
|
||||||
@@ -1336,17 +1140,13 @@ function pfUI.api.CreateIconPicker(name, parent, extraType, nameLabelText)
|
|||||||
parent.iconLabel:SetPoint("TOPLEFT", parent, "TOPLEFT", 14, -86)
|
parent.iconLabel:SetPoint("TOPLEFT", parent, "TOPLEFT", 14, -86)
|
||||||
parent.iconLabel:SetText(MACRO_POPUP_CHOOSE_ICON)
|
parent.iconLabel:SetText(MACRO_POPUP_CHOOSE_ICON)
|
||||||
|
|
||||||
-- Icon grid + scroll
|
-- Icon grid: the template keeps 5px around the grid and its 7px scroll bar,
|
||||||
local iconScroll = CreateFrame("ScrollFrame", name.."Scroll", parent, "FauxScrollFrameTemplate")
|
-- and the grid leaves 4px before the bar
|
||||||
iconScroll:SetPoint("TOPLEFT", parent, "TOPLEFT", 14, -116)
|
local gridWidth = ICON_GRID_COLS * (ICON_BTN_SIZE + ICON_BTN_PAD) - ICON_BTN_PAD
|
||||||
iconScroll:SetWidth(ICON_GRID_COLS * (ICON_BTN_SIZE + ICON_BTN_PAD) - ICON_BTN_PAD)
|
local gridHeight = ICON_GRID_ROWS * (ICON_BTN_SIZE + ICON_BTN_PAD) - ICON_BTN_PAD
|
||||||
iconScroll:SetHeight(ICON_GRID_ROWS * (ICON_BTN_SIZE + ICON_BTN_PAD) - ICON_BTN_PAD)
|
local grid = CreateFrame("Frame", name.."Icons", parent, "pfUIScrollBoxListTemplate")
|
||||||
|
grid:SetPoint("TOPLEFT", parent, "TOPLEFT", 9, -111)
|
||||||
local scrollbar = _G[name.."ScrollScrollBar"]
|
grid:SetSize(gridWidth + 4 + 7 + 10, gridHeight + 10)
|
||||||
scrollbar:ClearAllPoints()
|
|
||||||
scrollbar:SetPoint("TOPLEFT", iconScroll, "TOPRIGHT", 8, -16)
|
|
||||||
scrollbar:SetPoint("BOTTOMLEFT", iconScroll, "BOTTOMRIGHT", 8, 16)
|
|
||||||
SkinScrollbar(scrollbar)
|
|
||||||
|
|
||||||
-- Filter dropdown: All / Spells / Items
|
-- Filter dropdown: All / Spells / Items
|
||||||
local filterDropdown = CreateFrame("Frame", name.."Filter", parent, "UIDropDownMenuTemplate")
|
local filterDropdown = CreateFrame("Frame", name.."Filter", parent, "UIDropDownMenuTemplate")
|
||||||
@@ -1381,38 +1181,54 @@ function pfUI.api.CreateIconPicker(name, parent, extraType, nameLabelText)
|
|||||||
UIDropDownMenu_SetSelectedValue(filterDropdown, "all")
|
UIDropDownMenu_SetSelectedValue(filterDropdown, "all")
|
||||||
SkinDropDown(filterDropdown)
|
SkinDropDown(filterDropdown)
|
||||||
|
|
||||||
local iconButtons = {}
|
-- the selected icon gets a gold border in the grid and shows in the preview
|
||||||
for r = 1, ICON_GRID_ROWS do
|
local function UpdateSelection()
|
||||||
for c = 1, ICON_GRID_COLS do
|
grid.ScrollBox:ReinitializeFrames()
|
||||||
local i = (r - 1) * ICON_GRID_COLS + c
|
parent.selectedPreview.tex:SetTexture(selectedIconPath)
|
||||||
local btn = CreateFrame("Button", nil, parent)
|
end
|
||||||
btn:SetSize(ICON_BTN_SIZE, ICON_BTN_SIZE)
|
|
||||||
btn:SetPoint("TOPLEFT", iconScroll, "TOPLEFT", (c-1) * (ICON_BTN_SIZE + ICON_BTN_PAD), -(r-1) * (ICON_BTN_SIZE + ICON_BTN_PAD))
|
local function IconOnClick()
|
||||||
CreateBackdrop(btn)
|
|
||||||
btn.texture = btn:CreateTexture(nil, "ARTWORK")
|
|
||||||
btn.texture:SetAllPoints(btn)
|
|
||||||
btn.texture:SetTexCoord(.08, .92, .08, .92)
|
|
||||||
btn:SetScript("OnClick", function()
|
|
||||||
if this.iconIndex and provider then
|
|
||||||
local path = provider:GetIconByIndex(this.iconIndex)
|
local path = provider:GetIconByIndex(this.iconIndex)
|
||||||
if path then selectedIconPath = path end
|
if path then selectedIconPath = path end
|
||||||
RefreshIconGrid()
|
UpdateSelection()
|
||||||
end
|
end
|
||||||
end)
|
|
||||||
btn:SetScript("OnEnter", function()
|
local function IconOnEnter()
|
||||||
if not this.iconIndex or not provider then return end
|
|
||||||
local path = provider:GetIconByIndex(this.iconIndex)
|
local path = provider:GetIconByIndex(this.iconIndex)
|
||||||
if type(path) == "string" then
|
if type(path) == "string" then
|
||||||
GameTooltip:SetOwner(this, "ANCHOR_RIGHT")
|
GameTooltip:SetOwner(this, "ANCHOR_RIGHT")
|
||||||
GameTooltip:SetText(IconKey(path), 1, 1, 1)
|
GameTooltip:SetText(IconKey(path), 1, 1, 1)
|
||||||
GameTooltip:Show()
|
GameTooltip:Show()
|
||||||
end
|
end
|
||||||
end)
|
end
|
||||||
|
|
||||||
|
local function InitIconButton(btn, icon)
|
||||||
|
-- one-time setup of a pooled button
|
||||||
|
if not btn.texture then
|
||||||
|
CreateBackdrop(btn)
|
||||||
|
btn.texture = btn:CreateTexture(nil, "ARTWORK")
|
||||||
|
btn.texture:SetAllPoints(btn)
|
||||||
|
btn.texture:SetTexCoord(.08, .92, .08, .92)
|
||||||
|
btn:SetScript("OnClick", IconOnClick)
|
||||||
|
btn:SetScript("OnEnter", IconOnEnter)
|
||||||
btn:SetScript("OnLeave", GameTooltip_Hide)
|
btn:SetScript("OnLeave", GameTooltip_Hide)
|
||||||
iconButtons[i] = btn
|
end
|
||||||
|
|
||||||
|
btn.iconIndex = icon.index
|
||||||
|
local path = provider:GetIconByIndex(icon.index)
|
||||||
|
btn.texture:SetTexture(path)
|
||||||
|
if IconKey(path) == IconKey(selectedIconPath) then
|
||||||
|
btn.backdrop:SetBackdropBorderColor(1, 0.82, 0, 1)
|
||||||
|
else
|
||||||
|
btn.backdrop:SetBackdropBorderColor(pfUI.cache.er, pfUI.cache.eg, pfUI.cache.eb, pfUI.cache.ea)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local view = CreateScrollBoxListGridView(ICON_GRID_COLS, 0, 0, 0, 4, ICON_BTN_PAD, ICON_BTN_PAD)
|
||||||
|
view:SetElementSize(ICON_BTN_SIZE, ICON_BTN_SIZE)
|
||||||
|
view:SetElementInitializer("Button", InitIconButton)
|
||||||
|
ScrollUtil.InitScrollBoxListWithScrollBar(grid.ScrollBox, grid.ScrollBar, view)
|
||||||
|
|
||||||
-- Rebuild the search-filtered index list (provider indices whose icon
|
-- Rebuild the search-filtered index list (provider indices whose icon
|
||||||
-- basename contains the search text); nil when the search box is empty.
|
-- basename contains the search text); nil when the search box is empty.
|
||||||
function RebuildFilter()
|
function RebuildFilter()
|
||||||
@@ -1430,38 +1246,17 @@ function pfUI.api.CreateIconPicker(name, parent, extraType, nameLabelText)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- one grid entry per provider index the filter lets through, scrolled to the top
|
||||||
function RefreshIconGrid()
|
function RefreshIconGrid()
|
||||||
EnsureProvider()
|
EnsureProvider()
|
||||||
local numIcons = filtered and table.getn(filtered) or provider:GetNumIcons()
|
if filtered then
|
||||||
local numRows = math.ceil(numIcons / ICON_GRID_COLS)
|
grid.ScrollBox:SetDataProvider(CreateDataProviderWithAssignedKey(filtered, "index"))
|
||||||
FauxScrollFrame_Update(iconScroll, numRows, ICON_GRID_ROWS, ICON_BTN_SIZE + ICON_BTN_PAD)
|
|
||||||
local offset = FauxScrollFrame_GetOffset(iconScroll)
|
|
||||||
for i = 1, ICON_GRID_ROWS * ICON_GRID_COLS do
|
|
||||||
local listIdx = i + offset * ICON_GRID_COLS
|
|
||||||
local btn = iconButtons[i]
|
|
||||||
if listIdx <= numIcons then
|
|
||||||
btn:Show()
|
|
||||||
local providerIdx = filtered and filtered[listIdx] or listIdx
|
|
||||||
btn.iconIndex = providerIdx
|
|
||||||
local path = provider:GetIconByIndex(providerIdx)
|
|
||||||
btn.texture:SetTexture(path)
|
|
||||||
if IconKey(path) == IconKey(selectedIconPath) then
|
|
||||||
btn.backdrop:SetBackdropBorderColor(1, 0.82, 0, 1)
|
|
||||||
else
|
else
|
||||||
btn.backdrop:SetBackdropBorderColor(pfUI.cache.er, pfUI.cache.eg, pfUI.cache.eb, pfUI.cache.ea)
|
grid.ScrollBox:SetDataProvider(CreateDataProviderByIndexCount(provider:GetNumIcons()))
|
||||||
end
|
|
||||||
else
|
|
||||||
btn:Hide()
|
|
||||||
btn.iconIndex = nil
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
parent.selectedPreview.tex:SetTexture(selectedIconPath)
|
parent.selectedPreview.tex:SetTexture(selectedIconPath)
|
||||||
end
|
end
|
||||||
|
|
||||||
iconScroll:SetScript("OnVerticalScroll", function()
|
|
||||||
FauxScrollFrame_OnVerticalScroll(ICON_BTN_SIZE + ICON_BTN_PAD, function() RefreshIconGrid() end)
|
|
||||||
end)
|
|
||||||
|
|
||||||
-- Search box (bottom-left) filters the grid by icon name.
|
-- Search box (bottom-left) filters the grid by icon name.
|
||||||
parent.searchLabel = parent:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
parent.searchLabel = parent:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
||||||
parent.searchLabel:SetPoint("BOTTOMLEFT", parent, "BOTTOMLEFT", 16, 18)
|
parent.searchLabel:SetPoint("BOTTOMLEFT", parent, "BOTTOMLEFT", 16, 18)
|
||||||
@@ -1476,13 +1271,14 @@ function pfUI.api.CreateIconPicker(name, parent, extraType, nameLabelText)
|
|||||||
parent.search:SetScript("OnTextChanged", function()
|
parent.search:SetScript("OnTextChanged", function()
|
||||||
searchText = strupper(strtrim(this:GetText()))
|
searchText = strupper(strtrim(this:GetText()))
|
||||||
RebuildFilter()
|
RebuildFilter()
|
||||||
scrollbar:SetValue(0)
|
|
||||||
RefreshIconGrid()
|
RefreshIconGrid()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Release the provider when the popup closes so its icon cache GCs.
|
-- Release the provider when the popup closes so its icon cache GCs, and
|
||||||
|
-- the grid's entries that index into it.
|
||||||
parent:HookScript("OnHide", function()
|
parent:HookScript("OnHide", function()
|
||||||
if provider then provider:Release(); provider = nil end
|
if provider then provider:Release(); provider = nil end
|
||||||
|
grid.ScrollBox:RemoveDataProvider()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
local handle = { editbox = parent.editbox, search = parent.search }
|
local handle = { editbox = parent.editbox, search = parent.search }
|
||||||
@@ -1490,15 +1286,13 @@ function pfUI.api.CreateIconPicker(name, parent, extraType, nameLabelText)
|
|||||||
function handle.SetIcon(path) selectedIconPath = path or QUESTION_MARK end
|
function handle.SetIcon(path) selectedIconPath = path or QUESTION_MARK end
|
||||||
function handle.Refresh() RefreshIconGrid() end
|
function handle.Refresh() RefreshIconGrid() end
|
||||||
function handle.SetIconAreaShown(shown)
|
function handle.SetIconAreaShown(shown)
|
||||||
local method = shown and "Show" or "Hide"
|
grid:SetShown(shown)
|
||||||
iconScroll[method](iconScroll)
|
parent.iconLabel:SetShown(shown)
|
||||||
for _, b in ipairs(iconButtons) do b[method](b) end
|
parent.selectedLabel:SetShown(shown)
|
||||||
parent.iconLabel[method](parent.iconLabel)
|
parent.selectedPreview:SetShown(shown)
|
||||||
parent.selectedLabel[method](parent.selectedLabel)
|
filterDropdown:SetShown(shown)
|
||||||
parent.selectedPreview[method](parent.selectedPreview)
|
parent.searchLabel:SetShown(shown)
|
||||||
filterDropdown[method](filterDropdown)
|
parent.search:SetShown(shown)
|
||||||
parent.searchLabel[method](parent.searchLabel)
|
|
||||||
parent.search[method](parent.search)
|
|
||||||
end
|
end
|
||||||
return handle
|
return handle
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -0,0 +1,105 @@
|
|||||||
|
<Ui xmlns="http://www.blizzard.com/wow/ui/">
|
||||||
|
<!--
|
||||||
|
pfUI's scroll bar for ClassicAPI's ScrollBox: a thin track with a flat
|
||||||
|
thumb. ScrollBarMixin needs Back and Forward steppers, so they exist but
|
||||||
|
stay hidden. Hook it up with ScrollUtil.InitScrollBoxListWithScrollBar.
|
||||||
|
-->
|
||||||
|
<EventFrame name="pfUIScrollBarTemplate" inherits="VerticalScrollBarTemplate" virtual="true">
|
||||||
|
<Size x="7"/>
|
||||||
|
<KeyValues>
|
||||||
|
<KeyValue key="hideIfUnscrollable" value="true" type="boolean"/>
|
||||||
|
</KeyValues>
|
||||||
|
<Frames>
|
||||||
|
<Frame parentKey="Track" setAllPoints="true" enableMouse="true">
|
||||||
|
<Frames>
|
||||||
|
<EventButton parentKey="Thumb">
|
||||||
|
<Size x="7"/>
|
||||||
|
<Layers>
|
||||||
|
<Layer level="ARTWORK">
|
||||||
|
<Texture setAllPoints="true">
|
||||||
|
<Color r=".3" g="1" b=".8" a=".5"/>
|
||||||
|
</Texture>
|
||||||
|
</Layer>
|
||||||
|
</Layers>
|
||||||
|
</EventButton>
|
||||||
|
</Frames>
|
||||||
|
</Frame>
|
||||||
|
<EventButton parentKey="Back" hidden="true"/>
|
||||||
|
<EventButton parentKey="Forward" hidden="true"/>
|
||||||
|
</Frames>
|
||||||
|
</EventFrame>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
A ScrollFrame for free-form content, with pfUIScrollBarTemplate inside its
|
||||||
|
right edge. Put the content in frame.Content, which spans the frame: the
|
||||||
|
engine measures the scroll range from the shown frames inside it, so the
|
||||||
|
content needs no height. Changes inside it are not measured until
|
||||||
|
frame:UpdateScrollChildRect().
|
||||||
|
-->
|
||||||
|
<ScrollFrame name="pfUIScrollFrameTemplate" virtual="true">
|
||||||
|
<Frames>
|
||||||
|
<EventFrame parentKey="ScrollBar" inherits="pfUIScrollBarTemplate">
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="TOPRIGHT"/>
|
||||||
|
<Anchor point="BOTTOMRIGHT"/>
|
||||||
|
</Anchors>
|
||||||
|
</EventFrame>
|
||||||
|
</Frames>
|
||||||
|
<ScrollChild>
|
||||||
|
<Frame parentKey="Content">
|
||||||
|
<Size x="1" y="1"/>
|
||||||
|
</Frame>
|
||||||
|
</ScrollChild>
|
||||||
|
<Scripts>
|
||||||
|
<OnLoad>
|
||||||
|
self.Content:SetAllPoints()
|
||||||
|
self:EnableMouseWheel(true)
|
||||||
|
ScrollUtil.InitScrollFrameWithScrollBar(self, self.ScrollBar)
|
||||||
|
</OnLoad>
|
||||||
|
</Scripts>
|
||||||
|
</ScrollFrame>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
A WowScrollBoxList with pfUIScrollBarTemplate beside it, both 5px inside the
|
||||||
|
frame so CreateBackdrop(frame, nil, true) can frame them. Fill it with
|
||||||
|
ScrollUtil.InitScrollBoxListWithScrollBar(frame.ScrollBox, frame.ScrollBar, view).
|
||||||
|
-->
|
||||||
|
<Frame name="pfUIScrollBoxListTemplate" virtual="true">
|
||||||
|
<Frames>
|
||||||
|
<EventFrame parentKey="ScrollBar" inherits="pfUIScrollBarTemplate">
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="TOPRIGHT" x="-5" y="-5"/>
|
||||||
|
<Anchor point="BOTTOMRIGHT" x="-5" y="5"/>
|
||||||
|
</Anchors>
|
||||||
|
</EventFrame>
|
||||||
|
<Frame parentKey="ScrollBox" inherits="WowScrollBoxList">
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="TOPLEFT" x="5" y="-5"/>
|
||||||
|
<Anchor point="BOTTOMRIGHT" relativeKey="$parent.ScrollBar" relativePoint="BOTTOMLEFT"/>
|
||||||
|
</Anchors>
|
||||||
|
</Frame>
|
||||||
|
</Frames>
|
||||||
|
</Frame>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
ClassicAPI's ScrollingEditBoxTemplate with pfUIScrollBarTemplate beside the
|
||||||
|
text. The frame needs a name: SetFont(font, size, flags) names its font
|
||||||
|
object after it.
|
||||||
|
-->
|
||||||
|
<Frame name="pfUIScrollingEditBoxTemplate" inherits="ScrollingEditBoxTemplate" mixin="pfUIScrollingEditBoxMixin" virtual="true">
|
||||||
|
<KeyValues>
|
||||||
|
<KeyValue key="maxLetters" value="0" type="number"/>
|
||||||
|
</KeyValues>
|
||||||
|
<Frames>
|
||||||
|
<EventFrame parentKey="ScrollBar" inherits="pfUIScrollBarTemplate">
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="TOPRIGHT"/>
|
||||||
|
<Anchor point="BOTTOMRIGHT"/>
|
||||||
|
</Anchors>
|
||||||
|
</EventFrame>
|
||||||
|
</Frames>
|
||||||
|
<Scripts>
|
||||||
|
<OnLoad method="InitScrollBar" inherit="prepend"/>
|
||||||
|
</Scripts>
|
||||||
|
</Frame>
|
||||||
|
</Ui>
|
||||||
+62
-42
@@ -235,7 +235,50 @@ function pfUI.api.GetUnitStats(unitstr)
|
|||||||
end
|
end
|
||||||
|
|
||||||
local aggrodata = { }
|
local aggrodata = { }
|
||||||
local aggroScan = nil -- static { u, t, tt } triples, built once so the hot scan allocates nothing
|
|
||||||
|
-- every unit whose target or target's target UnitHasAggro checks, as static
|
||||||
|
-- { u, t, tt } triples so the hot scan allocates nothing
|
||||||
|
local aggroScan = { }
|
||||||
|
do
|
||||||
|
local function add(u)
|
||||||
|
local t = u .. "target"
|
||||||
|
table.insert(aggroScan, { u = u, t = t, tt = t .. "target" })
|
||||||
|
end
|
||||||
|
|
||||||
|
add("pet")
|
||||||
|
add("player")
|
||||||
|
add("target")
|
||||||
|
add("mouseover")
|
||||||
|
|
||||||
|
add("focus")
|
||||||
|
add("focustarget")
|
||||||
|
add("focustargettarget")
|
||||||
|
|
||||||
|
add("pettarget")
|
||||||
|
add("playertarget")
|
||||||
|
add("targettarget")
|
||||||
|
add("mouseovertarget")
|
||||||
|
add("targettargettarget")
|
||||||
|
|
||||||
|
for i=1,4 do
|
||||||
|
add("party" .. i)
|
||||||
|
add("party" .. i .. "target")
|
||||||
|
add("partypet" .. i)
|
||||||
|
add("partypet" .. i .. "target")
|
||||||
|
end
|
||||||
|
|
||||||
|
for i=1,40 do
|
||||||
|
add("raid" .. i)
|
||||||
|
add("raid" .. i .. "target")
|
||||||
|
|
||||||
|
add("raidpet" .. i)
|
||||||
|
add("raidpet" .. i .. "target")
|
||||||
|
|
||||||
|
add("nameplate" .. i)
|
||||||
|
add("nameplate" .. i .. "target")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function pfUI.api.UnitHasAggro(unit)
|
function pfUI.api.UnitHasAggro(unit)
|
||||||
local now = GetTime()
|
local now = GetTime()
|
||||||
local data = aggrodata[unit]
|
local data = aggrodata[unit]
|
||||||
@@ -250,16 +293,6 @@ function pfUI.api.UnitHasAggro(unit)
|
|||||||
data.state = 0
|
data.state = 0
|
||||||
|
|
||||||
if UnitExists(unit) and UnitIsFriend(unit, "player") then
|
if UnitExists(unit) and UnitIsFriend(unit, "player") then
|
||||||
-- pfValidUnits never changes after load, so precompute the "<u>target" /
|
|
||||||
-- "<u>targettarget" token strings once instead of concatenating per call.
|
|
||||||
if not aggroScan then
|
|
||||||
aggroScan = {}
|
|
||||||
for u in pairs(pfValidUnits) do
|
|
||||||
local t = u .. "target"
|
|
||||||
table.insert(aggroScan, { u = u, t = t, tt = t .. "target" })
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
for i = 1, table.getn(aggroScan) do
|
for i = 1, table.getn(aggroScan) do
|
||||||
local s = aggroScan[i]
|
local s = aggroScan[i]
|
||||||
if UnitExists(s.t) and UnitIsUnit(s.t, unit) and UnitCanAttack(s.u, unit) then
|
if UnitExists(s.t) and UnitIsUnit(s.t, unit) and UnitCanAttack(s.u, unit) then
|
||||||
@@ -349,11 +382,10 @@ function pfUI.uf:UpdateVisibility()
|
|||||||
|
|
||||||
-- this runs for every frame five times a second, so only touch the
|
-- this runs for every frame five times a second, so only touch the
|
||||||
-- attribute when the unit actually changed
|
-- attribute when the unit actually changed
|
||||||
local unitstr = (self.label or "") .. (self.id or "")
|
local unitstr = self.label .. self.id
|
||||||
local unit = unitstr ~= "" and unitstr or nil
|
if unitstr ~= self.unitstr then
|
||||||
if unit ~= self.unitstr then
|
self.unitstr = unitstr
|
||||||
self.unitstr = unit
|
self:SetAttribute("unit", unitstr)
|
||||||
self:SetAttribute("unit", unit)
|
|
||||||
end
|
end
|
||||||
-- anything but "show"/"hide" means "show if the unit exists"
|
-- anything but "show"/"hide" means "show if the unit exists"
|
||||||
local visibility = "exists"
|
local visibility = "exists"
|
||||||
@@ -395,9 +427,7 @@ function pfUI.uf:UpdateVisibility()
|
|||||||
self:RegisterUnitEvents(visibility ~= "hide" and self.unitstr or nil)
|
self:RegisterUnitEvents(visibility ~= "hide" and self.unitstr or nil)
|
||||||
|
|
||||||
-- vanilla visibility
|
-- vanilla visibility
|
||||||
if self.unitname then
|
if visibility == "hide" then
|
||||||
self:Show()
|
|
||||||
elseif visibility == "hide" then
|
|
||||||
self:Hide()
|
self:Hide()
|
||||||
elseif visibility == "show" then
|
elseif visibility == "show" then
|
||||||
self:Show()
|
self:Show()
|
||||||
@@ -508,6 +538,8 @@ function pfUI.uf:UpdateConfig()
|
|||||||
if tonumber(f.config.height) < 0 then f.hp:Hide() end
|
if tonumber(f.config.height) < 0 then f.hp:Hide() end
|
||||||
pfUI.api.CreateBackdrop(f.hp, default_border)
|
pfUI.api.CreateBackdrop(f.hp, default_border)
|
||||||
|
|
||||||
|
-- one level above the backdrop for the bar's background, one more for its fill
|
||||||
|
f.hp.bar:SetFrameLevel(f.hp.backdrop:GetFrameLevel() + 2)
|
||||||
f.hp.bar:SetStatusBarTexture(pfUI.media[f.config.bartexture])
|
f.hp.bar:SetStatusBarTexture(pfUI.media[f.config.bartexture])
|
||||||
f.hp.bar:SetAllPoints(f.hp)
|
f.hp.bar:SetAllPoints(f.hp)
|
||||||
if f.config.verticalbar == "1" then
|
if f.config.verticalbar == "1" then
|
||||||
@@ -522,7 +554,7 @@ function pfUI.uf:UpdateConfig()
|
|||||||
if custombg == "1" then
|
if custombg == "1" then
|
||||||
local cr, cg, cb, ca = GetStringColor(custombgcolor)
|
local cr, cg, cb, ca = GetStringColor(custombgcolor)
|
||||||
cr, cg, cb, ca = tonumber(cr), tonumber(cg), tonumber(cb), tonumber(ca)
|
cr, cg, cb, ca = tonumber(cr), tonumber(cg), tonumber(cb), tonumber(ca)
|
||||||
f.hp.bar:SetStatusBarBackgroundTexture(cr,cg,cb,ca)
|
f.hp.bar:SetStatusBarBackgroundColor(cr,cg,cb,ca)
|
||||||
end
|
end
|
||||||
|
|
||||||
f.power:ClearAllPoints()
|
f.power:ClearAllPoints()
|
||||||
@@ -531,7 +563,7 @@ function pfUI.uf:UpdateConfig()
|
|||||||
if tonumber(f.config.pheight) < 0 then f.power:Hide() end
|
if tonumber(f.config.pheight) < 0 then f.power:Hide() end
|
||||||
|
|
||||||
pfUI.api.CreateBackdrop(f.power, default_border)
|
pfUI.api.CreateBackdrop(f.power, default_border)
|
||||||
f.power.bar:SetFrameLevel(f.power.backdrop:GetFrameLevel() + 1)
|
f.power.bar:SetFrameLevel(f.power.backdrop:GetFrameLevel() + 2)
|
||||||
f.power.bar:SetStatusBarTexture(pfUI.media[f.config.pbartexture])
|
f.power.bar:SetStatusBarTexture(pfUI.media[f.config.pbartexture])
|
||||||
f.power.bar:SetAllPoints(f.power)
|
f.power.bar:SetAllPoints(f.power)
|
||||||
|
|
||||||
@@ -541,7 +573,7 @@ function pfUI.uf:UpdateConfig()
|
|||||||
if custompbg == "1" then
|
if custompbg == "1" then
|
||||||
local cr, cg, cb, ca = GetStringColor(custompbgcolor)
|
local cr, cg, cb, ca = GetStringColor(custompbgcolor)
|
||||||
cr, cg, cb, ca = tonumber(cr), tonumber(cg), tonumber(cb), tonumber(ca)
|
cr, cg, cb, ca = tonumber(cr), tonumber(cg), tonumber(cb), tonumber(ca)
|
||||||
f.power.bar:SetStatusBarBackgroundTexture(cr,cg,cb,ca)
|
f.power.bar:SetStatusBarBackgroundColor(cr,cg,cb,ca)
|
||||||
end
|
end
|
||||||
|
|
||||||
local fontname, fontsize, fontstyle
|
local fontname, fontsize, fontstyle
|
||||||
@@ -1019,6 +1051,8 @@ function pfUI.uf.OnEvent()
|
|||||||
this.update_pvp = true
|
this.update_pvp = true
|
||||||
elseif event == "UNIT_COMBAT" then
|
elseif event == "UNIT_COMBAT" then
|
||||||
CombatFeedback_OnCombatEvent(arg2, arg3, arg4, arg5)
|
CombatFeedback_OnCombatEvent(arg2, arg3, arg4, arg5)
|
||||||
|
elseif event == "INCOMING_RESURRECT_CHANGED" then
|
||||||
|
this.update_indicators = true
|
||||||
else
|
else
|
||||||
this.update_base = true
|
this.update_base = true
|
||||||
end
|
end
|
||||||
@@ -1189,10 +1223,6 @@ function pfUI.uf.OnUpdate()
|
|||||||
this.incHeal:Hide()
|
this.incHeal:Hide()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- update ressurections
|
|
||||||
local ress = libpredict:UnitHasIncomingResurrection(unit)
|
|
||||||
this.ressIcon:SetShown(ress and UnitIsDeadOrGhost(unit))
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -1244,8 +1274,6 @@ function pfUI.uf.OnUpdate()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if not this.label or this.label == "" then return end
|
|
||||||
|
|
||||||
-- update portrait on first visible frame
|
-- update portrait on first visible frame
|
||||||
if this.portrait and this.portrait.model and this.portrait.model.update then
|
if this.portrait and this.portrait.model and this.portrait.model.update then
|
||||||
this.portrait.model.lastUnit = UnitName(this.portrait.model.update)
|
this.portrait.model.lastUnit = UnitName(this.portrait.model.update)
|
||||||
@@ -1272,6 +1300,7 @@ local UNIT_EVENTS = {
|
|||||||
"UNIT_PORTRAIT_UPDATE", "UNIT_MODEL_CHANGED",
|
"UNIT_PORTRAIT_UPDATE", "UNIT_MODEL_CHANGED",
|
||||||
"UNIT_FACTION",
|
"UNIT_FACTION",
|
||||||
"UNIT_AURA", -- frame=buff, frame=debuff
|
"UNIT_AURA", -- frame=buff, frame=debuff
|
||||||
|
"INCOMING_RESURRECT_CHANGED", -- frame=ressIcon
|
||||||
}
|
}
|
||||||
|
|
||||||
-- Point this frame's unit-event subscriptions at `unitstr`, or drop them when
|
-- Point this frame's unit-event subscriptions at `unitstr`, or drop them when
|
||||||
@@ -1332,12 +1361,8 @@ end
|
|||||||
-- ============================================================
|
-- ============================================================
|
||||||
|
|
||||||
function pfUI.uf.OnClick()
|
function pfUI.uf.OnClick()
|
||||||
if not this.label and this.unitname then
|
|
||||||
TargetByName(this.unitname, true)
|
|
||||||
else
|
|
||||||
pfUI.uf:ClickAction(arg1)
|
pfUI.uf:ClickAction(arg1)
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
function pfUI.uf:ClickAction(button)
|
function pfUI.uf:ClickAction(button)
|
||||||
local label = this.label or ""
|
local label = this.label or ""
|
||||||
@@ -1433,13 +1458,6 @@ function pfUI.uf:CreateUnitFrame(unit, id, config, tick)
|
|||||||
f.config = config or pfUI_config.unitframes.fallback
|
f.config = config or pfUI_config.unitframes.fallback
|
||||||
f.tick = tick
|
f.tick = tick
|
||||||
|
|
||||||
-- disable events for unknown unitstrings
|
|
||||||
if not pfValidUnits[strlower(unit) .. id] then
|
|
||||||
f.unitname = unit
|
|
||||||
f.label, f.id = "", ""
|
|
||||||
f.RegisterEvent = function() return end
|
|
||||||
end
|
|
||||||
|
|
||||||
CreateBackdropShadow(f)
|
CreateBackdropShadow(f)
|
||||||
|
|
||||||
f.hp = CreateFrame("Frame",nil, f)
|
f.hp = CreateFrame("Frame",nil, f)
|
||||||
@@ -1490,7 +1508,7 @@ function pfUI.uf:CreateUnitFrame(unit, id, config, tick)
|
|||||||
|
|
||||||
f.incHeal = CreateFrame("Frame", nil, f.hp)
|
f.incHeal = CreateFrame("Frame", nil, f.hp)
|
||||||
-- Texture lives on hp.bar for correct draw order:
|
-- Texture lives on hp.bar for correct draw order:
|
||||||
-- hp.bar.bg (BACKGROUND) < incHeal (BORDER) < hp.bar.bar (NORMAL)
|
-- hp.bar.bg (a level below) < incHeal (BORDER) < hp.bar's fill (ARTWORK)
|
||||||
f.incHeal.texture = f.hp.bar:CreateTexture(nil, "BORDER")
|
f.incHeal.texture = f.hp.bar:CreateTexture(nil, "BORDER")
|
||||||
f.incHeal.texture:SetAllPoints(f.incHeal)
|
f.incHeal.texture:SetAllPoints(f.incHeal)
|
||||||
-- Override Show/Hide since texture lives on hp.bar, not incHeal
|
-- Override Show/Hide since texture lives on hp.bar, not incHeal
|
||||||
@@ -1556,9 +1574,7 @@ function pfUI.uf:CreateUnitFrame(unit, id, config, tick)
|
|||||||
f:Hide()
|
f:Hide()
|
||||||
end
|
end
|
||||||
|
|
||||||
if f.label ~= "" then
|
|
||||||
f:SetAttribute("unit", f.label .. f.id)
|
f:SetAttribute("unit", f.label .. f.id)
|
||||||
end
|
|
||||||
|
|
||||||
-- register frame for clique
|
-- register frame for clique
|
||||||
_G.ClickCastFrames = ClickCastFrames or {}
|
_G.ClickCastFrames = ClickCastFrames or {}
|
||||||
@@ -1632,6 +1648,10 @@ function pfUI.uf:RefreshIndicators(unit)
|
|||||||
unit.pvpIcon:SetShown(unit.config.showPVP == "1" and UnitIsPVP(unitstr))
|
unit.pvpIcon:SetShown(unit.config.showPVP == "1" and UnitIsPVP(unitstr))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if unit.ressIcon then -- Resurrection Icon
|
||||||
|
unit.ressIcon:SetShown(libpredict:UnitHasResurrection(unitstr))
|
||||||
|
end
|
||||||
|
|
||||||
if unit.restIcon and unit:GetName() == "pfPlayer" then -- Rest Icon
|
if unit.restIcon and unit:GetName() == "pfPlayer" then -- Rest Icon
|
||||||
unit.restIcon:SetShown(C.unitframes.player.showRest == "1" and UnitIsUnit(unitstr, "player") and IsResting())
|
unit.restIcon:SetShown(C.unitframes.player.showRest == "1" and UnitIsUnit(unitstr, "player") and IsResting())
|
||||||
end
|
end
|
||||||
|
|||||||
Vendored
+677
@@ -0,0 +1,677 @@
|
|||||||
|
-- Classic Era GlobalStrings (DE) that the combat log reads
|
||||||
|
-- and the 1.12 client lacks. Generated; do not edit by hand.
|
||||||
|
pfUI_locale["deDE"]["combatlog"] = {
|
||||||
|
ACTION_DAMAGE_SHIELD = "verletzt",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT = "%2$s von %1$s reflektiert %9$s %7$s auf %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT_NO_SOURCE = "%2$s reflektiert %9$s %7$s auf %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED = "verfehlt",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK = "(Geblockt)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT = "%4$s blockt %2$s von %1$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s blockt %2$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT = "(Abgewehrt)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT = "%4$s wehrt %2$s von %1$s ab.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%4$s wehrt %2$s ab.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE = "(Ausgewichen)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT = "%4$s weicht %2$s von %1$s aus.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s weicht %2$s aus.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED = "(Entkommen)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT = "%4$s entkommt %2$s von %1$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%4$s entkommt %2$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT = "%1$s wirkt %2$s auf %4$s an und verfehlt.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT_NO_SOURCE = "%2$s verfehlt %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE = "(Immun)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT = "%2$s von %1$s schlägt fehl. %4$s ist immun.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s schlägt fehl. %4$s ist immun.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS = "(Verfehlt)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT = "%1$s wirkt %2$s auf %4$s und verfehlt.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s verfehlt %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY = "(Pariert)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT = "%1$s pariert %2$s von %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%4$s pariert %2$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST = "(Widerstanden)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT = "%4$s widersteht %2$s von %1$s vollständig.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s widersteht %2$s vollständig.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SPLIT = "teilt Schaden",
|
||||||
|
ACTION_DAMAGE_SPLIT_ABSORBED_FULL_TEXT = "%2$s von %1$s wurde durch %6$s von %4$s absorbiert.",
|
||||||
|
ACTION_DAMAGE_SPLIT_FULL_TEXT = "%2$s von %1$s verursacht bei %4$s %9$s.",
|
||||||
|
ACTION_DAMAGE_SPLIT_POSSESSIVE = "0",
|
||||||
|
ACTION_DAMAGE_SPLIT_RESULT_FULL_TEXT = "%2$s von %1$s fügt %6$s von %4$s %9$s Schaden zu.",
|
||||||
|
ACTION_ENCHANT_APPLIED = "verzaubert",
|
||||||
|
ACTION_ENCHANT_APPLIED_FULL_TEXT = "%1$s wirkt %2$s auf %5$s von %4$s.",
|
||||||
|
ACTION_ENCHANT_APPLIED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENCHANT_REMOVED = "Verzauberung schwindet",
|
||||||
|
ACTION_ENCHANT_REMOVED_FULL_TEXT = "%2$s auf %5$s von %4$s schwindet.",
|
||||||
|
ACTION_ENCHANT_REMOVED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE = "verletzt",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING = "Ertrinken",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_FULL_TEXT = "%4$s ertrinkt und verliert %9$s Gesundheit.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING = "Sturz",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_FULL_TEXT = "%4$s stürzt und verliert %9$s Gesundheit.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE = "Erschöpfung",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_FULL_TEXT = "%4$s ist erschöpft und verliert %9$s Gesundheit.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE = "Feuer",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_FULL_TEXT = "%4$s erleidet %9$s Feuerschaden.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FULL_TEXT = "%4$s verliert durch Umgebungsschaden %9$s Gesundheit.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA = "Lava",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_FULL_TEXT = "%4$s verliert durch das Schwimmen in Lava %9$s Gesundheit. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME = "Schleim",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_FULL_TEXT = "%4$s verliert durch das Schwimmen in Schleim %9$s Gesundheit. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL = "besiegt",
|
||||||
|
ACTION_PARTY_KILL_FULL_TEXT = "%1$s besiegt %4$s!",
|
||||||
|
ACTION_PARTY_KILL_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS = "umgehauen",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_FULL_TEXT = "%1$s hat %4$s umgehauen!",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_RANGED = "Schuss",
|
||||||
|
ACTION_RANGE_DAMAGE = "trifft",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT = "%1$s schießt auf %4$s, verursacht %5$s.%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT_NO_SOURCE = "Ein Distanzangriff trifft %4$s, verursacht %5$s.%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED = "verfehlt",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB = "(Absorbiert)",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_FULL_TEXT = "%4$s absorbiert den Schuss von %1$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK = "(Geblockt)",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_FULL_TEXT = "%4$s blockt den Schuss von %1$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT = "(Abgewehrt)",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_FULL_TEXT = "%4$s wehrt den Schuss von %1$s ab.",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DODGE = "(Ausgewichen)",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_FULL_TEXT = "%4$s weicht dem Schuss von %1$s aus.",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_EVADE = "(Entkommen)",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_FULL_TEXT = "%4$s entkommt dem Schuss von %1$s.",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_FULL_TEXT = "%1$s schießt auf %4$s und verfehlt.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE = "(Immun)",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_FULL_TEXT = "Der Schuss von %1$s schlägt fehl. %4$s ist immun.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE = "(Verfehlt)",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_FULL_TEXT = "%1$s schießt auf %4$s und verfehlt.",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISS = "(Verfehlt)",
|
||||||
|
ACTION_RANGE_MISSED_MISS_FULL_TEXT = "%1$s schießt auf %4$s und verfehlt.",
|
||||||
|
ACTION_RANGE_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_PARRY = "(Pariert)",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_FULL_TEXT = "%4$s pariert den Schuss von %1$s.",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_RESIST = "(Widerstanden)",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_FULL_TEXT = "%4$s widersteht dem Schuss von %1$s vollständig.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED = "wirkt",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF = "wirkt",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT = "%4$s gewinnt %1$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT_NO_SOURCE = "%4$s gewinnt %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT = "%4$s gewinnt %1$s %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s gewinnt %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF = "beeinträchtigt",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT = "%4$s wird durch %2$s von %1$s beeinträchtigt.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s wird von %2$s beeinträchtigt.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT = "%4$s wird durch %2$s von %1$s beeinträchtigt. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s wird von %2$s beeinträchtigt. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE = "Stapel",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF = "Stapel",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT = "%4$s gewinnt %1$s %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%4$s erhält %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF = "peinigt",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT = "%4$s wird durch %2$s von %1$s beeinträchtigt. (%9$s)",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s wird von %2$s beeinträchtigt (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN = "bricht",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF = "bricht",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT = "%2$s von %4$s wird durch %1$s gebrochen.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT_NO_SOURCE = "%2$s von %1$s wird durch jemanden gebrochen.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF = "bricht",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT = "%2$s von %4$s wird durch %1$s gebrochen.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s von %1$s wurde durch jemanden gebrochen.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF = "bricht",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT = "%1$s bricht %2$s von %4$s durch %5$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT_NO_SOURCE = "%5$s bricht %2$s von %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF = "bricht",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT = "%1$s bricht %2$s von %4$s durch %5$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT_NO_SOURCE = "%5$s bricht %2$s von %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH = "aufgefrischt",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF = "aufgefrischt",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT = "Das auf %4$s wirkende %2$s von %1$s wird aufgefrischt.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT_NO_SOURCE = "Das auf %4$s wirkende %2$s wird aufgefrischt.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT = "Das auf %4$s wirkende %2$s von %1$s wird aufgefrischt. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "Das auf %4$s wirkende %2$s wird aufgefrischt. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF = "aufgefrischt",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT = "Das auf %4$s wirkende %2$s von %1$s wird aufgefrischt.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT_NO_SOURCE = "Das auf %4$s wirkende %2$s wird aufgefrischt.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT = "Das auf %4$s wirkende %2$s von %1$s wird aufgefrischt. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "Das auf %4$s wirkende %2$s wird aufgefrischt. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REMOVED = "entfernt",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF = "schwindet",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT = "Das auf %4$s wirkende %2$s von %1$s schwindet.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT_NO_SOURCE = "Das auf %4$s wirkende %2$s schwindet.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT = "Das auf %4$s wirkende %2$s von %1$s schwindet. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "Das auf %4$s wirkende %2$s schwindet. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF = "erlischt",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT = "Das auf %4$s wirkende %2$s von %1$s erlischt.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT_NO_SOURCE = "Das auf %4$s wirkende %2$s erlischt.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT = "Das auf %4$s wirkende %2$s von %1$s erlischt. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "Das auf %4$s wirkende %2$s erlischt. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE = "verringert",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF = "verringert",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT = "%2$s von %1$s lässt nach. (%9$s)",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%2$s (%9$s) lässt nach.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF = "lässt nach",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT = "%2$s von %1$s nimmt ab. (%9$s)",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s (%9$s) nimmt ab.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT = "Das auf %4$s wirkende %2$s von %1$s wird entfernt.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT_NO_SOURCE = "Das auf %4$s wirkende %2$s von %1$s wird entfernt.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE = "trifft",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT = "%2$s von %1$s trifft %4$s für %5$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s trifft %4$s für %5$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL = "repariert",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT = "%2$s von %1$s repariert %4$s für %9$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT_NO_SOURCE = "%2$s repariert %4$s für %9$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED = "schlägt fehl",
|
||||||
|
ACTION_SPELL_CAST_FAILED_FULL_TEXT = "%1$s kann %2$s nicht wirken.%6$s",
|
||||||
|
ACTION_SPELL_CAST_FAILED_MASTER = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_START = "initiiert",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT = "%1$s beginnt, %2$s auf %4$s zu wirken.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_DEST = "%1$s beginnt, %2$s zu wirken.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_SOURCE = "Etwas beginnt, %2$s auf %4$s zu wirken.",
|
||||||
|
ACTION_SPELL_CAST_START_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_START_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS = "wirkt",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT = "%1$s wirkt %2$s auf %4$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_DEST = "%1$s wirkt %2$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_SOURCE = "Etwas wirkt %2$s auf %4$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CREATE = "erschafft",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT = "%4$s wird von %1$s durch %2$s erschaffen.%6$s",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT_NO_SOURCE = "%4$s wird durch %2$s erschaffen.%6$s",
|
||||||
|
ACTION_SPELL_CREATE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DAMAGE = "trifft",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT = "%1$s trifft %4$s mit %2$s für %5$s.%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s trifft %4$s für %5$s.%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL = "bannt",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF = "bannt",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT = "%5$s auf %4$s wird von %1$s durch %2$s gebannt.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT_NO_SOURCE = "%5$s auf %4$s wird durch %2$s gebannt.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF = "läutert",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT = "%5$s auf %4$s wird von %1$s durch %2$s geläutert.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT_NO_SOURCE = "%5$s auf %4$s wird durch %2$s geläutert.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED = "Magiebannung schlägt fehl",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT = "%2$s von %1$s kann %5$s auf %4$s nicht bannen.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT_NO_SOURCE = "%2$s kann %5$s auf %4$s nicht bannen.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DRAIN = "entzieht",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT = "%1$s entzieht von %4$s durch %2$s %9$s %8$s.",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT_NO_SOURCE = " %2$s entzieht von %4$s %9$s %8$s.",
|
||||||
|
ACTION_SPELL_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE = "Haltbarkeitsverlust",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL = "kompletter Haltbarkeitsverlust",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_FULL_TEXT = "%2$s von %1$s trifft %4$s: Alle Gegenstände beschädigt.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_FULL_TEXT = "%2$s von %1$s trifft %4$s: %5$s beschädigt.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE = "aufgeladen",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT = "%4$s gewinnt durch %2$s von %1$s %9$s %8$s.",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s gewinnt durch %2$s %9$s %8$s.",
|
||||||
|
ACTION_SPELL_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE_RESULT = "%9$s %8$s gewonnen.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS = "gewährt zusätzliche Angriffe",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT = "%1$s werden durch %2$s %9$s zusätzliche Angriffe gewährt.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT_NO_SOURCE = "%2$s gewährt %9$s zusätzliche Angriffe.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_HEAL = "heilt",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT = "%2$s von %1$s heilt %4$s um %9$s.%6$s",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT_NO_SOURCE = "%2$s heilt %4$s um %9$s.%6$s",
|
||||||
|
ACTION_SPELL_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL = "besiegt",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT = "%1$s besiegt %4$s durch %2$s sofort.",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT_NO_SOURCE = "%2$s besiegt %4$s sofort.",
|
||||||
|
ACTION_SPELL_INSTAKILL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS = "umgehauen",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT = "%1$s %2$s haut %4$s um.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT_NO_SOURCE = "%2$s haut %4$s um.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INTERRUPT = "unterbricht",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT = "%1$s unterbricht %4$s durch %2$s beim Wirken von %5$s.",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT_NO_SOURCE = "%2$s unterbricht %4$s beim Wirken von %5$s.",
|
||||||
|
ACTION_SPELL_INTERRUPT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH = "entzieht",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT = "%1$s entzieht durch %2$s %9$s %8$s von %4$s. %1$s gewinnt %10$s %8$s.",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT_NO_SOURCE = "%2$s entzieht %4$s %9$s %8$s.",
|
||||||
|
ACTION_SPELL_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH_RESULT = "%10$s %8$s gewonnen",
|
||||||
|
ACTION_SPELL_MISSED = "verfehlt",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB = "Absorbiert",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT = "%4$s absorbiert %2$s von %1$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%4$s absorbiert %2$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK = "Geblockt",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT = "%4$s blockt %2$s von %1$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s blockt %2$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT = "Abgewehrt",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT = "%4$s wehrt %2$s von %1$s ab.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%4$s wehrt %2$s ab.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DODGE = "Ausgewichen",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT = "%4$s weicht %2$s von %1$s aus.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s weicht %2$s aus.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_EVADE = "Entkommen",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT = "%4$s entkommt %2$s von %1$s.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT_NO_SOURCE = "%4$s entkommt %2$s.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT = "%1$s wirkt %2$s auf %4$s und verfehlt.",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT_NO_SOURCE = "%2$s verfehlt %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE = "Immun",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT = "%2$s von %1$s schlägt fehl. %4$s ist immun.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s schlägt fehl. %4$s ist immun.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE = "Verfehlt",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT = "%1$s wirkt %2$s auf %4$s und verfehlt.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT_NO_SOURCE = "%2$s verfehlt %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_MISS = "Verfehlt",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT = "%1$s wirkt %2$s auf %4$s und verfehlt.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s verfehlt %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_PARRY = "Pariert",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT = "%4$s pariert %2$s von %1$s.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%4$s pariert %2$s.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT = "Reflektiert",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT = "%2$s von %1$s wird durch %4$s reflektiert.",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT_NO_SOURCE = "%2$s wird durch %4$s reflektiert.",
|
||||||
|
ACTION_SPELL_MISSED_RESIST = "Widerstanden",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT = "%4$s widersteht %2$s von %1$s vollständig.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s widersteht %2$s vollständig.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE = "verletzt",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT = "%4$s erleidet durch %2$s von %1$s %5$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT_NO_SOURCE = "%4$s erleidet durch %2$s %5$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN = "entzieht",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT = "%1$s entzieht durch %2$s %9$s %8$s von %4$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s entzieht %4$s %9$s %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE = "aufgeladen",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT = "%4$s gewinnt durch %2$s von %1$s %9$s %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s gewinnt durch %2$s %9$s %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_RESULT = "$extraAmount %8$s gewonnen.",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL = "heilt",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT = "%4$s gewinnt durch %2$s von %1$s %9$s Gesundheit.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT_NO_SOURCE = "%4$s gewinnt durch %2$s %9$s Gesundheit.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH = "entzieht",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT = "%1$s entzieht durch %2$s %9$s %8$s von %4$s. %1$s gewinnt %10$s %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT_NO_SOURCE = "%2$s entzieht %9$s %8$s von %4$s. %1$s gewinnt %10$s %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_RESULT = "(%10$s %8$s gewonnen)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED = "verfehlt",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB = "(%1$s absorbiert)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT = "%2$s von %1$s wurde durch %4$s absorbiert.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%2$s wurde durch %4$s absorbiert.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK = "(Tick geblockt)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT = "%4$s blockt %2$s von %1$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s blockt %2$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED = "(Tick abgewehrt)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT = "%4$s wehrt %2$s von %1$s für einen Moment ab.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT_NO_SOURCE = "%4$s wehrt %2$s für einen Moment ab.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE = "(Tick ausgewichen)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT = "%4$s weicht %2$s von %1$s für einen Moment aus.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s weicht %2$s für einen Moment aus.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED = "(Tick entkommen)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT = "%4$s entkommt %2$s von %1$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%4$s entkommt %2$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT = "%2$s von %1$s verfehlt %4$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT_NO_SOURCE = "%2$s verfehlt %4$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE = "(Immun)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT = "%4$s ist gegen %2$s von %1$s immun.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%4$s ist gegen %2$s immun.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS = "(Tick verfehlt)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT = "%2$s von %1$s verfehlt %4$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s verfehlt %4$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY = "(Tick pariert)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT = "%4$s pariert %2$s von %1$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%4$s pariert %2$s für einen Moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST = "(Tick widerstanden)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT = "%4$s wird nicht vom Effekt %2$s von %1$s betroffen. %4$s hat widerstanden.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s wird nicht vom Effekt %2$s betroffen. %4$s hat widerstanden.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_RESURRECT = "wiederbelebt",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT = "%2$s von %1$s belebt %4$s wieder.%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT_NO_SOURCE = "%2$s belebt %4$s wieder.%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN = "stiehlt",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF = "stiehlt",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT = "%2$s von %1$s stiehlt %5$s auf %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT_NO_SOURCE = "%2$s stiehlt %5$s auf %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF__POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF = "stiehlt",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT = "%1$s überträgt durch %2$s den auf %4$s wirkenden Zauber $extraSpell zu %1$s.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s überträgt $extraSpell von %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT = "%2$s von %1$s stiehlt %5$s auf %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT_NO_SOURCE = "%2$s stiehlt %5$s auf %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_SUMMON = "beschwört",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT = "%1$s ruft durch %2$s %4$s herbei.%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT_NO_SOURCE = "%2$s ruft %4$s herbei.%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING = "Schlag",
|
||||||
|
ACTION_SWING_DAMAGE = "trifft",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT = "%1$s schlägt %4$s im Nahkampf, verursacht %5$s.%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT_NO_SOURCE = "Ein Nahkampfschlag trifft %4$s, verursacht %5$s.%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED = "verfehlt",
|
||||||
|
ACTION_SWING_MISSED_ABSORB = "(Absorbiert)",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_FULL_TEXT = "%4$s absorbiert den Angriff von %1$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_BLOCK = "(Geblockt)",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_FULL_TEXT = "%4$s blockt den Angriff von %1$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT = "(Abgewehrt)",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_FULL_TEXT = "%4$s wehrt den Angriff von %1$s ab.",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DODGE = "(Ausgewichen)",
|
||||||
|
ACTION_SWING_MISSED_DODGE_FULL_TEXT = "%4$s weicht dem Angriff von %1$s aus.",
|
||||||
|
ACTION_SWING_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_EVADE = "(Entkommen)",
|
||||||
|
ACTION_SWING_MISSED_EVADE_FULL_TEXT = "%4$s entkommt dem Angriff von %1$s.",
|
||||||
|
ACTION_SWING_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_FULL_TEXT = "%1$s greift %4$s an und verfehlt.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE = "(Immun)",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_FULL_TEXT = "Der Angriff von %1$s schlägt fehl. %4$s ist immun.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE = "(Verfehlt)",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_FULL_TEXT = "Der Angriff von %1$s verfehlt %4$s.",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISS = "(Verfehlt)",
|
||||||
|
ACTION_SWING_MISSED_MISS_FULL_TEXT = "%1$s greift %4$s an und verfehlt.",
|
||||||
|
ACTION_SWING_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_PARRY = "(Pariert)",
|
||||||
|
ACTION_SWING_MISSED_PARRY_FULL_TEXT = "%4$s pariert den Angriff von %1$s.",
|
||||||
|
ACTION_SWING_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_RESIST = "(Widerstanden)",
|
||||||
|
ACTION_SWING_MISSED_RESIST_FULL_TEXT = "%4$s widersteht dem Angriff von %1$s vollständig.%6$s",
|
||||||
|
ACTION_SWING_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_UNIT_BECCOMES_UNCONSCIOUS = "bricht zusammen",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_FULL_TEXT = "%4$s bricht zusammen.",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DESTROYED = "zerstört",
|
||||||
|
ACTION_UNIT_DESTROYED_FULL_TEXT = "%4$s wird zerstört.",
|
||||||
|
ACTION_UNIT_DESTROYED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DIED = "stirbt",
|
||||||
|
ACTION_UNIT_DIED_FULL_TEXT = "%4$s stirbt.",
|
||||||
|
ACTION_UNIT_DIED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DISSIPATES = "schwindet",
|
||||||
|
ACTION_UNIT_DISSIPATES_FULL_TEXT = "%4$s schwindet.",
|
||||||
|
ACTION_UNIT_DISSIPATES_POSSESSIVE = "0",
|
||||||
|
ADD = "Hinzufügen",
|
||||||
|
ADDITIONAL_FILTERS = "Zusätzliche Filter",
|
||||||
|
ADD_FILTER = "Filter hinz.",
|
||||||
|
AURAS = "Auren",
|
||||||
|
AURAS_COMBATLOG_TOOLTIP = "Zeigt Nachrichten über vorteilhafte und schädliche Statuseffekte an.",
|
||||||
|
BENEFICIAL = "Vorteilhaft",
|
||||||
|
BENEFICIAL_AURA_COMBATLOG_TOOLTIP = "Anzeigen, wenn Ihr eine vorteilhafte Aura erhaltet oder verliert.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_BOTH = "Alles anzeigen, das %s betrifft?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_EVERYTHING = "Alles anzeigen",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_INCOMING = "Was ist mit %s geschehen?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING = "Anzeigen, was %s tat?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING_ME = "Was hat %s mit mir getan?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_RESET = "Rücksetzen",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SAVE = "Als neuen Filter speichern",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_HIDE = "Nachrichten wie diese ausblenden.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_LINK = "%s zum Chat verlinken.",
|
||||||
|
BY_SOURCE = "Nach Quelle",
|
||||||
|
BY_SOURCE_COMBATLOG_TOOLTIP = "Zeilenfarbe basierend auf dem Zaubernden.",
|
||||||
|
BY_TARGET = "Nach Ziel",
|
||||||
|
BY_TARGET_COMBATLOG_TOOLTIP = "Zeilenfarbe basierend auf dem Ziel.",
|
||||||
|
COLORIZE = "Einfärben:",
|
||||||
|
COLORS = "Farben",
|
||||||
|
COLOR_BY_SCHOOL = "Farbe nach Art",
|
||||||
|
COMBATLOG_DEFAULTS = "Kampflog: Standard",
|
||||||
|
COMBATLOG_FILTER_STRING_CUSTOM_UNIT = "Benutzerdefinierte Einheit",
|
||||||
|
COMBATLOG_FILTER_STRING_FRIENDLY_UNITS = "Freundliche Einheiten",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_PLAYERS = "Gegnerische Spieler",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_UNITS = "Feindliche Einheiten",
|
||||||
|
COMBATLOG_FILTER_STRING_ME = "Spieler",
|
||||||
|
COMBATLOG_FILTER_STRING_MY_PET = "Begleiter",
|
||||||
|
COMBATLOG_FILTER_STRING_NEUTRAL_UNITS = "Neutrale Einheiten",
|
||||||
|
COMBATLOG_FILTER_STRING_UNKNOWN_UNITS = "Unbekannt",
|
||||||
|
COMBATLOG_HIGHLIGHT_ABILITY = "Fähigkeit",
|
||||||
|
COMBATLOG_HIGHLIGHT_DAMAGE = "Schaden",
|
||||||
|
COMBATLOG_HIGHLIGHT_KILL = "Sieg",
|
||||||
|
COMBATLOG_HIGHLIGHT_SCHOOL = "Magieart",
|
||||||
|
COMBATLOG_UNKNOWN_UNIT = "Etwas",
|
||||||
|
COMBAT_FACTION_CHANGE = "Ruf",
|
||||||
|
COMBAT_HONOR_GAIN = "Ehre",
|
||||||
|
COMBAT_LOG_UNIT_YOU_ENABLED = "1",
|
||||||
|
COMBAT_MISC_INFO = "Versch. Infos",
|
||||||
|
COMBAT_XP_GAIN = "Erfahrung",
|
||||||
|
CONFIRM_COMBAT_FILTER_DEFAULTS = "Wollt Ihr Eure Filter wirklich auf die Standardeinstellungen zurücksetzen?",
|
||||||
|
CONFIRM_COMBAT_FILTER_DELETE = "Wollt Ihr diesen Filter wirklich löschen?",
|
||||||
|
COPY_FILTER = "Filter kop.",
|
||||||
|
DAMAGE_NUMBER = "Schadenszahl",
|
||||||
|
DAMAGE_SCHOOL_TEXT = "Schadensart",
|
||||||
|
DAMAGE_SHIELD = "Schadensschilde",
|
||||||
|
DAMAGE_SHIELD_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit als Reaktion auf einen Nahkampfangriff Schaden verursacht, z.B. Dornen.",
|
||||||
|
DEATHS_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn etwas stirbt.",
|
||||||
|
DEFAULT_COMBATLOG_FILTER_NAME = "Filter %d",
|
||||||
|
DISPELS = "Bannungen",
|
||||||
|
DISPEL_AURA_COMBATLOG_TOOLTIP = "Anzeigen, wenn eine Aura entfernt, unterbrochen oder gestohlen wird.",
|
||||||
|
DONE_BY = "Aktion von:",
|
||||||
|
DONE_TO = "Aktion auf:",
|
||||||
|
DRAINS = "Entzüge",
|
||||||
|
ENTER_FILTER_NAME = "Filternamen eingeben:",
|
||||||
|
ENTIRE_LINE = "Gesamte Zeile",
|
||||||
|
ENTIRE_LINE_COMBATLOG_TOOLTIP = "Die gesamte Zeile basierend auf der unteren Auswahl einfärben.",
|
||||||
|
ENVIRONMENTAL_DAMAGE = "Umgebungsschaden",
|
||||||
|
ENVIRONMENTAL_DAMAGE_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn jemand Schaden durch Stürze, durch Ertrinken oder das Schwimmen in Lava erhält.",
|
||||||
|
EXAMPLE_SPELL_FIREBALL = "Feuerball",
|
||||||
|
EXAMPLE_SPELL_FROSTBOLT = "Frostblitz",
|
||||||
|
EXAMPLE_TARGET_MONSTER = "Monster",
|
||||||
|
EXAMPLE_TEXT = "Beispieltext:",
|
||||||
|
EXTRA_ATTACKS = "Zusatzangriffe",
|
||||||
|
FAILURES = "Fehlschläge",
|
||||||
|
FILTER_BY_ENEMIES_COMBATLOG_TOOLTIP = "Aktionen, die von feindlichen Kreaturen und Begleitern durchgeführt werden.",
|
||||||
|
FILTER_BY_FRIENDS_COMBATLOG_TOOLTIP = "Aktionen, die von freundlichen Spielern, Begleitern und Kreaturen durchgeführt werden.",
|
||||||
|
FILTER_BY_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Aktionen, die von feindlichen Spielern durchgeführt werden.",
|
||||||
|
FILTER_BY_ME_COMBATLOG_TOOLTIP = "Aktionen, die von Euch, Euren Fallen und Euren Zaubern durchgeführt werden.",
|
||||||
|
FILTER_BY_NEUTRAL_COMBATLOG_TOOLTIP = "Aktionen, die von neutralen Kreaturen durchgeführt werden.",
|
||||||
|
FILTER_BY_PET_COMBATLOG_TOOLTIP = "Aktionen, die von Euren Begleitern, beschworenen Wächtern oder von Euch bezauberten Spielern durchgeführt werden.",
|
||||||
|
FILTER_BY_UNKNOWN_COMBATLOG_TOOLTIP = "Aktionen, die von unbestimmten Quellen durchgeführt werden, so wie Sturz, Säure oder Lava.",
|
||||||
|
FILTER_NAME = "Filtername",
|
||||||
|
FILTER_TO_FRIENDS_COMBATLOG_TOOLTIP = "Aktionen, die auf freundliche Spieler, Begleiter und Kreaturen durchgeführt werden.",
|
||||||
|
FILTER_TO_HOSTILE_COMBATLOG_TOOLTIP = "Aktionen, die auf feindliche Begleiter und Kreaturen durchgeführt werden.",
|
||||||
|
FILTER_TO_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Aktionen, die auf gegnerische Spieler durchgeführt werden.",
|
||||||
|
FILTER_TO_ME_COMBATLOG_TOOLTIP = "Aktionen, die auf Euch durchgeführt werden.",
|
||||||
|
FILTER_TO_NEUTRAL_COMBATLOG_TOOLTIP = "Aktionen, die auf neutrale Kreaturen durchgeführt werden.",
|
||||||
|
FILTER_TO_PET_COMBATLOG_TOOLTIP = "Aktionen, die auf Eure Begleiter, beschworene Wächter oder von Euch bezauberte Spieler durchgeführt werden.",
|
||||||
|
FILTER_TO_UNKNOWN_COMBATLOG_TOOLTIP = "Aktionen, die auf unsichtbare Ziele durchgeführt werden.",
|
||||||
|
FORMATTING = "Format",
|
||||||
|
FULL_TEXT_COMBATLOG_TOOLTIP = "Kampflogeinträge als vollständige Sätze anzeigen.",
|
||||||
|
HARMFUL_AURA_COMBATLOG_TOOLTIP = "Anzeigen, wenn Ihr eine schädliche Aura erhaltet oder verliert.",
|
||||||
|
HEALS = "Heilungen",
|
||||||
|
HIGHLIGHTING = "Hervorhebung:",
|
||||||
|
HIGHLIGHT_ABILITY_COMBATLOG_TOOLTIP = "Hebt in den Kampfnachrichten die Namen von Fähigkeiten hervor.",
|
||||||
|
HIGHLIGHT_DAMAGE_COMBATLOG_TOOLTIP = "Hebt in den Kampfnachrichten die Schadenszahlen hervor.",
|
||||||
|
HIGHLIGHT_KILL_COMBATLOG_TOOLTIP = "Hebt die gesamte Zeile hervor, wenn Ihr oder ein Mitglied Eurer Gruppe einen Feind besiegt.",
|
||||||
|
HIGHLIGHT_SCHOOL_COMBATLOG_TOOLTIP = "Hebt in den Kampfnachrichten die Zauberarten hervor.",
|
||||||
|
HOSTILE = "Feindlich",
|
||||||
|
INTERRUPTS = "Unterbrechungen",
|
||||||
|
ITEM_NAMES = "Gegenstandsnamen",
|
||||||
|
ITEM_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Klammern um Namen von Gegenständen anzeigen.",
|
||||||
|
KILLS_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Mitglied Eurer Gruppe etwas tötet.",
|
||||||
|
MELEE = "Nahkampf",
|
||||||
|
MELEE_COMBATLOG_TOOLTIP = "Zeigt gewöhnliche Nahkampfangriffe an.",
|
||||||
|
MESSAGE_SOURCES = "Nachrichtenquellen",
|
||||||
|
MISSES = "Verfehlen",
|
||||||
|
MOVE_FILTER_DOWN = "Filter nach unten",
|
||||||
|
MOVE_FILTER_UP = "Filter nach oben",
|
||||||
|
OTHER = "Anderes",
|
||||||
|
PERIODIC = "Regelmäßig",
|
||||||
|
POWER_GAINS = "Machtgewinn",
|
||||||
|
POWER_GAINS_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit Mana, Energie, Wut, Fokus, Chi, heilige Kraft oder Schattenkugeln wiederherstellt.",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING = "Alles",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING_TOOLTIP = "Alle Kampfnachrichten anzeigen.",
|
||||||
|
QUICKBUTTON_NAME_KILLS = "Todesstöße",
|
||||||
|
QUICKBUTTON_NAME_KILLS_TOOLTIP = "Alle Tode und Todesstöße anzeigen.",
|
||||||
|
QUICKBUTTON_NAME_ME = "Was ist mit mir geschehen?",
|
||||||
|
QUICKBUTTON_NAME_ME_TOOLTIP = "Alles mir Zugefügte anzeigen.",
|
||||||
|
QUICKBUTTON_NAME_SELF = "Selbst",
|
||||||
|
QUICKBUTTON_NAME_SELF_TOOLTIP = "Zeigt Nachrichten für von Euch und an Euch ausgeführte Aktionen.",
|
||||||
|
QUICK_BUTTON_COMBATLOG_TOOLTIP = "Platziert im Chatfenster eine Verknüpfung zu diesem Filter.",
|
||||||
|
RANGED = "Distanz",
|
||||||
|
RANGED_COMBATLOG_TOOLTIP = "Zeigt Angriffe mit Bögen, Schusswaffen, Wurfwaffen und Zauberstäben an.",
|
||||||
|
RANGE_DAMAGE_COMBATLOG_TOOLTIP = "Zeigt Distanzangriffe an, die den vollen oder teilweisen Schaden verursachen.",
|
||||||
|
RANGE_MISSED_COMBATLOG_TOOLTIP = "Zeigt fehlgeschlagene Distanzangriffe an, die keinen Schaden verursachen.",
|
||||||
|
RESURRECT = "Wiederbelebung",
|
||||||
|
SETTINGS = "Optionen",
|
||||||
|
SHOW_BRACES = "Klammern anzeigen",
|
||||||
|
SHOW_BRACES_COMBATLOG_TOOLTIP = "Klammern um Hyperlinks im Kampflog anzeigen.",
|
||||||
|
SHOW_QUICK_BUTTON = "Schnelltaste anzeigen",
|
||||||
|
SHOW_TIMESTAMP = "Zeitstempel anzeigen",
|
||||||
|
SOURCE = "Quelle",
|
||||||
|
SPECIAL = "Spezial",
|
||||||
|
SPELLS_COMBATLOG_TOOLTIP = "Zeigt Nachrichten über Zauber und Spezialfähigkeiten an.",
|
||||||
|
SPELL_CASTING = "Zauberwirken",
|
||||||
|
SPELL_CASTING_COMBATLOG_TOOLTIP = "Nachrichten über das Wirken von Zaubern anzeigen.",
|
||||||
|
SPELL_CAST_FAILED_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber nicht gewirkt werden kann oder nicht abgeschlossen wird.",
|
||||||
|
SPELL_CAST_START_COMBATLOG_TOOLTIP = "Nachricht anzeigen, wenn das Wirken eines Zaubers begonnen wird.",
|
||||||
|
SPELL_CAST_SUCCESS_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber erfolgreich abgeschlossen wird.",
|
||||||
|
SPELL_COLOR_BY_SCHOOL_COMBATLOG_TOOLTIP = "Zauber basierend auf der Art einfärben.",
|
||||||
|
SPELL_DAMAGE_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit Schaden verursacht.",
|
||||||
|
SPELL_DAMAGE_NUMBER_COMBATLOG_TOOLTIP = "Färbt die Schadenszahl von Schwüngen, die nicht im Nahkampf stattfinden.",
|
||||||
|
SPELL_DAMAGE_SCHOOL_COMBATLOG_TOOLTIP = "Den Namen der Schadensart einfärben. (z.B. Schatten)",
|
||||||
|
SPELL_DRAIN_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit Mana, Energie, Wut oder Fokus verringert.",
|
||||||
|
SPELL_EXTRA_ATTACKS_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit zusätzliche Angriffe gewährt.",
|
||||||
|
SPELL_HEAL_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit Schaden heilt.",
|
||||||
|
SPELL_INSTAKILL_COMBATLOG_TOOLTIP = "Nachrichten über spezielle Zauberarten anzeigen, die beispielsweise Haltbarkeitsverlust verursachen oder Schaden mit einem Begleiter teilen.",
|
||||||
|
SPELL_INTERRUPT_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit einen anderen Zauber unterbricht.",
|
||||||
|
SPELL_MISSED_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit keinen Schaden verursachen kann. Das schließt Ausweichen, Parieren, Blocken, Abwehren, Immunität, Absorbieren und Entkommen ein.",
|
||||||
|
SPELL_NAMES = "Zaubernamen",
|
||||||
|
SPELL_NAMES_COMBATLOG_TOOLTIP = "Namen von Zaubern einfärben.",
|
||||||
|
SPELL_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Klammern um Namen von Zaubern anzeigen.",
|
||||||
|
SPELL_PERIODIC_COMBATLOG_TOOLTIP = "Zauber anzeigen, die einen regelmäßigen Effekt ausführen.",
|
||||||
|
SPELL_PERIODIC_DAMAGE_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit regelmäßigen Schaden verursacht, z.B. Schattenwort: Schmerz oder Verderbnis.",
|
||||||
|
SPELL_PERIODIC_HEAL_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit regelmäßig Schaden heilt, z.B. Erneuerung oder Verjüngung.",
|
||||||
|
SPELL_PERIODIC_MISSED_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn der regelmäßige Schaden eines Zaubers oder einer Fähigkeit versagt. Das schließt Immunität, Absorbieren und Entkommen ein.",
|
||||||
|
SPELL_PERIODIC_OTHER_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit regelmäßig einen Effekt ausführt, z.B. das Wiederherstellen oder Entziehen von Mana.",
|
||||||
|
SPELL_RESURRECT_COMBATLOG_TOOLTIP = "Nachrichten anzeigen, wenn ein Zauber oder eine Fähigkeit einen Spieler oder eine Kreatur wiedererweckt.",
|
||||||
|
SPELL_SUMMON_COMBATLOG_TOOLTIP = "Nachricht anzeigen, wenn ein Zauber oder eine Fähigkeit eine Kreatur beschwört oder ein Objekt erschafft.",
|
||||||
|
START = "Start",
|
||||||
|
STRING_SCHOOL_UNKNOWN = "Unbekannt",
|
||||||
|
SUCCESS = "Erfolg",
|
||||||
|
SUMMONS = "Herbeiruf.",
|
||||||
|
SWING_DAMAGE_COMBATLOG_TOOLTIP = "Zeigt Nahkampfangriffe an, die den vollen oder teilweise Schaden verursachen.",
|
||||||
|
SWING_MISSED_COMBATLOG_TOOLTIP = "Zeigt fehlgeschlagene Nahkampfangriffe an, die keinen Schaden verursachen.",
|
||||||
|
TEXT_MODE_A = "A",
|
||||||
|
TEXT_MODE_A_STRING_1 = "%s %s %s %s %s. %s %11$s",
|
||||||
|
TEXT_MODE_A_STRING_2 = "%1$s %3$s %2$s %4$s %5$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_3 = "%1$s %5$s %3$s %4$s %2$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_ACTION = "|Haction:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_ITEM = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_SPELL = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_UNIT = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_DEST_ICON = "|Hicon:%d:dest|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_DEST_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_ITEM = "|Hitem:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_POSSESSIVE = "%s",
|
||||||
|
TEXT_MODE_A_STRING_REMAINING_POINTS = "(%s verbleiben)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_ABSORB = "(%s absorbiert)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_BLOCK = "(%s geblockt)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL = "(Kritisch)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL_SPELL = "(Kritisch)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRUSHING = "(Schmetternd)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_FORMAT = "$resultAmount $resultType",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_GLANCING = "(Gestreift)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_MULTISTRIKE = "(Mehrfachschlag)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERENERGIZE = "(%s Überaufladung)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERHEALING = "(%s Überheilung)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERKILLING = "(%s Schaden über Tod)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_PARRY = "(%d pariert)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_REFLECT = "Reflektiert",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_RESIST = "(%s widerstanden)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_VULNERABILITY = "(%s Verletzlichkeitsschaden)",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_ICON = "|Hicon:%s:source|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL_EXTRA = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_TIMESTAMP = "%s> %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_SCHOOL = "%s %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_TYPE = "%s (%s)",
|
||||||
|
TEXT_MODE_A_TIMESTAMP = "%H:%M:%S",
|
||||||
|
TIMESTAMP_COMBATLOG_TOOLTIP = "Den Zeitstempel für Nachrichten im Kampflog anzeigen.",
|
||||||
|
UNIT_COLORS = "Einheitenfarben:",
|
||||||
|
UNIT_NAMES = "Einheitennamen",
|
||||||
|
UNIT_NAMES_COMBATLOG_TOOLTIP = "Namen von Einheiten einfärben.",
|
||||||
|
UNIT_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Klammern um Namen von Einheiten anzeigen.",
|
||||||
|
UNIT_YOU = "Ihr",
|
||||||
|
UNIT_YOU_DEST = "Euch",
|
||||||
|
UNIT_YOU_DEST_POSSESSIVE = "Euer",
|
||||||
|
UNIT_YOU_SOURCE = "Euer Charakter",
|
||||||
|
UNIT_YOU_SOURCE_POSSESSIVE = "Euer",
|
||||||
|
USE_FULL_TEXT_MODE = "Volltextmodus verwenden",
|
||||||
|
}
|
||||||
Vendored
+677
@@ -0,0 +1,677 @@
|
|||||||
|
-- Classic Era GlobalStrings (GB) that the combat log reads
|
||||||
|
-- and the 1.12 client lacks. Generated; do not edit by hand.
|
||||||
|
pfUI_locale["enUS"]["combatlog"] = {
|
||||||
|
ACTION_DAMAGE_SHIELD = "damages",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT = "%1$s %2$s reflects %9$s %7$s damage to %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT_NO_SOURCE = "%2$s reflects %9$s %7$s damage to %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED = "missed",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK = "(Blocked)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT = "%1$s %2$s was blocked by %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s was blocked by %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT = "(Deflected)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT = "%1$s %2$s was deflected by %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%2$s was deflected by %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE = "(Dodged)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT = "%1$s %2$s was dodged by %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s was dodged by %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED = "(Evaded)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT = "%1$s %2$s was evaded by %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%2$s was evaded by %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT = "%1$s %2$s missed %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT_NO_SOURCE = "%2$s missed %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE = "(Immune)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT = "%1$s %2$s failed. %4$s was immune.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s failed. %4$s was immune.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS = "(Missed)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT = "%1$s %2$s misses %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s misses %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY = "(Parried)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT = "%1$s %2$s was parried by %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s was parried by %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST = "(Resisted)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT = "%1$s %2$s was fully resisted by %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s was fully resisted by %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SPLIT = "shared damage",
|
||||||
|
ACTION_DAMAGE_SPLIT_ABSORBED_FULL_TEXT = "%1$s's %2$s damage was absorbed by %4$s %6$s.",
|
||||||
|
ACTION_DAMAGE_SPLIT_FULL_TEXT = "%1$s %2$s causes %9$s damage to %4$s.",
|
||||||
|
ACTION_DAMAGE_SPLIT_POSSESSIVE = "0",
|
||||||
|
ACTION_DAMAGE_SPLIT_RESULT_FULL_TEXT = "%1$s's %2$s causes %9$s damage to %4$s %6$s.",
|
||||||
|
ACTION_ENCHANT_APPLIED = "enchanted",
|
||||||
|
ACTION_ENCHANT_APPLIED_FULL_TEXT = "%1$s cast %2$s on %4$s %5$s.",
|
||||||
|
ACTION_ENCHANT_APPLIED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENCHANT_REMOVED = "enchant faded",
|
||||||
|
ACTION_ENCHANT_REMOVED_FULL_TEXT = "%2$s fades from %4$s %5$s.",
|
||||||
|
ACTION_ENCHANT_REMOVED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE = "damaged",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING = "Drowning",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_FULL_TEXT = "%4$s is drowning and loses %9$s health.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING = "Falling",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_FULL_TEXT = "%4$s falls and loses %9$s health.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE = "Fatigue",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_FULL_TEXT = "%4$s is exhausted and loses %9$s health.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE = "Fire",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_FULL_TEXT = "%4$s suffers %9$s fire damage.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FULL_TEXT = "%4$s loses %9$s health from environmental damage.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA = "Lava",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_FULL_TEXT = "%4$s loses %9$s health from swimming in lava. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME = "Slime",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_FULL_TEXT = "%4$s loses %9$s health for swimming in slime. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL = "killed",
|
||||||
|
ACTION_PARTY_KILL_FULL_TEXT = "%1$s has slain %4$s!",
|
||||||
|
ACTION_PARTY_KILL_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS = "knocked out",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_FULL_TEXT = "%1$s has knocked out %4$s!",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_RANGED = "Shot",
|
||||||
|
ACTION_RANGE_DAMAGE = "hit",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT = "%1$s ranged shot hit %4$s for %5$s.%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT_NO_SOURCE = "A ranged shot hit %4$s for %5$s.%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED = "missed",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB = "(Absorbed)",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_FULL_TEXT = "%1$s shot was absorbed by %4$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK = "(Blocked)",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_FULL_TEXT = "%1$s shot was blocked by %4$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT = "(Deflected)",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_FULL_TEXT = "%1$s shot was deflected by %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DODGE = "(Dodged)",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_FULL_TEXT = "%1$s shot was dodged by %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_EVADE = "(Evaded)",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_FULL_TEXT = "%1$s shot was evaded by %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_FULL_TEXT = "%1$s shot misses %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE = "(Immune)",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_FULL_TEXT = "%1$s shot failed. %4$s was immune.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE = "(Misfired)",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_FULL_TEXT = "%1$s shot misfired on %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISS = "(Missed)",
|
||||||
|
ACTION_RANGE_MISSED_MISS_FULL_TEXT = "%1$s shot misses %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_PARRY = "(Parried)",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_FULL_TEXT = "%1$s shot was parried by %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_RESIST = "(Resisted)",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_FULL_TEXT = "%1$s shot was fully resisted by %4$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED = "applied",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF = "applied",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT = "%4$s gains %1$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT_NO_SOURCE = "%4$s gains %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT = "%4$s gains %1$s %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s gains %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF = "afflicted",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT = "%4$s is afflicted by %1$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s is afflicted by %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT = "%4$s is afflicted by %1$s %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s is afflicted by %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE = "stacked",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF = "stacked",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT = "%4$s gains %1$s %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%4$s gains %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF = "afflicted",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT = "%4$s is afflicted by %1$s %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s is afflicted by %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN = "broke",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF = "broke",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT = "%1$s broke %4$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT_NO_SOURCE = "%1$s %2$s was broken by someone.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF = "broke",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT = "%1$s broke %4$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%1$s %2$s was broken by someone.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF = "broke",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT = "%1$s %5$s broke %4$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT_NO_SOURCE = "%5$s broke %4$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF = "broke",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT = "%1$s %5$s broke %4$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT_NO_SOURCE = "%5$s broke %4$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH = "refreshed",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF = "refreshed",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT = "%1$s %2$s is refreshed on %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT_NO_SOURCE = "%2$s is refreshed on %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s is refreshed on %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s is refreshed on %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF = "refreshed",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT = "%1$s %2$s is refreshed on %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s is refreshed on %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s is refreshed on %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s is refreshed on %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REMOVED = "removed",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF = "faded",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT = "%1$s %2$s fades from %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT_NO_SOURCE = "%2$s fades from %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s fades from %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s fades from %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF = "dissipated",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT = "%1$s %2$s dissipates from %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s dissipates from %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s dissipates from %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s dissipates from %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE = "reduced",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF = "reduced",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT = "%1$s %2$s (%9$s) diminishes.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%2$s (%9$s) diminishes.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF = "diminished",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT = "%1$s %2$s (%9$s) subsides.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s (%9$s) subsides.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT = "%1$s %2$s was removed from %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT_NO_SOURCE = "%1$s %2$s was removed from %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE = "strikes",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT = "%1$s %2$s strikes %4$s for %5$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s strike %4$s for %5$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL = "repaired",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT = "%1$s %2$s repairs %4$s for %9$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT_NO_SOURCE = "%2$s repairs %4$s for %9$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED = "failed",
|
||||||
|
ACTION_SPELL_CAST_FAILED_FULL_TEXT = "%1$s %2$s failed.%6$s",
|
||||||
|
ACTION_SPELL_CAST_FAILED_MASTER = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_START = "began to cast",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT = "%1$s begins casting %2$s at %4$s.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_DEST = "%1$s begins casting %2$s.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_SOURCE = "Something begins casting %2$s at %4$s.",
|
||||||
|
ACTION_SPELL_CAST_START_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_START_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS = "cast",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT = "%1$s casts %2$s at %4$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_DEST = "%1$s casts %2$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_SOURCE = "Something cast %2$s at %4$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CREATE = "created",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT = "%1$s %2$s creates a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT_NO_SOURCE = "%2$s creates a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_CREATE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DAMAGE = "hit",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT = "%1$s %2$s hits %4$s for %5$s.%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s hits %4$s for %5$s.%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL = "dispelled",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF = "dispelled",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT = "%4$s %5$s is dispelled by %1$s %2$s.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT_NO_SOURCE = "%4$s %5$s is dispelled by %2$s.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF = "cleansed",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT = "%4$s %5$s is cleansed by %1$s %2$s.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s %5$s cleansed by %2$s.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED = "dispel failed",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT = "%1$s %2$s fails to dispel %4$s %5$s.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT_NO_SOURCE = "%2$s fails to dispel %4$s %5$s.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DRAIN = "drained",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT = "%1$s %2$s drains %9$s %8$s from %4$s.",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT_NO_SOURCE = " %2$s drains %9$s %8$s from %4$s.",
|
||||||
|
ACTION_SPELL_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE = "durability loss",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL = "full durability loss",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_FULL_TEXT = "%1$s %2$s damages %4$s: all items damaged.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_FULL_TEXT = "%1$s %2$s damages %4$s: %5$s damaged.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE = "energized",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT = "%4$s gains %9$s %8$s from %1$s %2$s.",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s gains %9$s %8$s from %2$s.",
|
||||||
|
ACTION_SPELL_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE_RESULT = "%9$s %8$s Gained",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS = "granted extra attacks",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT = "%1$s gains %9$s extra attacks through %2$s.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT_NO_SOURCE = "%9$s extra attacks granted by %2$s.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_HEAL = "healed",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT = "%1$s %2$s heals %4$s for %9$s.%6$s",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT_NO_SOURCE = "%2$s heals %4$s for %9$s.%6$s",
|
||||||
|
ACTION_SPELL_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL = "killed",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT = "%1$s %2$s instantly kills %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT_NO_SOURCE = "%2$s instantly kills %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS = "knocked out",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT = "%1$s %2$s knocks out %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT_NO_SOURCE = "%2$s knocks out %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INTERRUPT = "interrupted",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT = "%1$s %2$s interrupts %4$s %5$s.",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT_NO_SOURCE = "%2$s interrupts %4$s %5$s.",
|
||||||
|
ACTION_SPELL_INTERRUPT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH = "drained",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT = "%1$s %2$s drains %9$s %8$s from %4$s. %1$s gains %10$s %8$s.",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT_NO_SOURCE = "%2$s drains %9$s %8$s from %4$s.",
|
||||||
|
ACTION_SPELL_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH_RESULT = "%10$s %8$s Gained",
|
||||||
|
ACTION_SPELL_MISSED = "missed",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB = "Absorbed",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT = "%1$s %2$s was absorbed by %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%2$s was absorbed by %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK = "Blocked",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT = "%1$s %2$s was blocked by %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s was blocked by %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT = "Deflected",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT = "%1$s %2$s was deflected by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%2$s was deflected by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DODGE = "Dodged",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT = "%1$s %2$s was dodged by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s was dodged by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_EVADE = "Evaded",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT = "%1$s %2$s was evaded by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT_NO_SOURCE = "%2$s was evaded by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT = "%1$s %2$s missed %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT_NO_SOURCE = "%2$s missed %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE = "Immune",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT = "%1$s %2$s failed. %4$s was immune.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s failed. %4$s was immune.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE = "Misfired",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT = "%1$s %2$s misfired on %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT_NO_SOURCE = "%2$s misfired on %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_MISS = "Missed",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT = "%1$s %2$s misses %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s misses %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_PARRY = "Parried",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT = "%1$s %2$s was parried by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s was parried by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT = "reflected",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT = "%1$s %2$s was reflected by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT_NO_SOURCE = "%2$s was reflected by %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_RESIST = "resisted",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT = "%1$s %2$s was fully resisted by %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s was fully resisted by %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE = "damaged",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT = "%4$s suffers %5$s damage from %1$s %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT_NO_SOURCE = "%4$s suffers %5$s damage from %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN = "drained",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT = "%1$s %2$s drains %9$s %8$s from %4$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s drains %9$s %8$s from %4$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE = "energized",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT = "%4$s gains %9$s %8$s from %1$s %2$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s gains %9$s %8$s from %2$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_RESULT = "$extraAmount %8$s Gained",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL = "healed",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT = "%4$s gains %9$s Health from %1$s %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT_NO_SOURCE = "%4$s gains %9$s health from %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH = "drained",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT = "%1$s %2$s drains %9$s %8$s from %4$s. %1$s gains %10$s %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT_NO_SOURCE = "%2$s drains %9$s %8$s from %4$s. %1$s gains %10$s %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_RESULT = "(%10$s %8$s Gained)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED = "missed",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB = "(%1$s Absorbed)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT = "%1$s %2$s was absorbed by %4$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%2$s was absorbed by %4$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK = "(Tick Blocked)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT = "%1$s %2$s was blocked by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s was blocked by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED = "(Tick Deflected)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT = "%1$s %2$s was deflected by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT_NO_SOURCE = "%2$s was deflected by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE = "(Tick Dodged)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT = "%1$s %2$s was dodged by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s was dodged by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED = "(Tick Evaded)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT = "%1$s %2$s was evaded by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%2$s was evaded by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT = "%1$s %2$s does not affect %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT_NO_SOURCE = "%2$s does not affect %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE = "(Immune)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT = "%4$s was immune to %1$s %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%4$s was immune to %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS = "(Tick Missed)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT = "%1$s %2$s missed %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s missed %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY = "(Tick Parried)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT = "%1$s %2$s was parried by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s was parried by %4$s for a moment.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST = "(Tick Resisted)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT = "%1$s %2$s does not affect %4$s. %4$s resisted.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s does not affect %4$s. %4$s resisted.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_RESURRECT = "resurrected",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT = "%1$s %2$s resurrects %4$s.%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT_NO_SOURCE = "%2$s resurrects %4$s.%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN = "stole",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF = "stole",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT = "%1$s %2$s steals %4$s %5$s.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT_NO_SOURCE = "%2$s steals %4$s %5$s.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF__POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF = "stole",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT = "%1$s %2$s transfers %4$s $extraSpell to %1$s.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s transfers %4$s $extraSpell.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT = "%1$s %2$s steals %4$s %5$s.",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT_NO_SOURCE = "%2$s steals %4$s %5$s.",
|
||||||
|
ACTION_SPELL_STOLEN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_SUMMON = "summoned",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT = "%1$s %2$s summons %4$s.%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT_NO_SOURCE = "%2$s summons %4$s.%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING = "Melee",
|
||||||
|
ACTION_SWING_DAMAGE = "hit",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT = "%1$s melee swing hits %4$s for %5$s.%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT_NO_SOURCE = "A melee swing hit %4$s for %5$s.%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED = "missed",
|
||||||
|
ACTION_SWING_MISSED_ABSORB = "(Absorbed)",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_FULL_TEXT = "%1$s attack was absorbed by %4$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_BLOCK = "(Blocked)",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_FULL_TEXT = "%1$s attack was blocked by %4$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT = "(Deflected)",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_FULL_TEXT = "%1$s attack was deflected by %4$s.",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DODGE = "(Dodged)",
|
||||||
|
ACTION_SWING_MISSED_DODGE_FULL_TEXT = "%1$s attack was dodged by %4$s.",
|
||||||
|
ACTION_SWING_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_EVADE = "(Evaded)",
|
||||||
|
ACTION_SWING_MISSED_EVADE_FULL_TEXT = "%1$s attack was evaded by %4$s.",
|
||||||
|
ACTION_SWING_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_FULL_TEXT = "%1$s attack misses %4$s.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE = "(Immune)",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_FULL_TEXT = "%1$s attack failed. %4$s was immune.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE = "(Misfired)",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_FULL_TEXT = "%1$s attack misfired on %4$s.",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISS = "(Missed)",
|
||||||
|
ACTION_SWING_MISSED_MISS_FULL_TEXT = "%1$s attack misses %4$s.",
|
||||||
|
ACTION_SWING_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_PARRY = "(Parried)",
|
||||||
|
ACTION_SWING_MISSED_PARRY_FULL_TEXT = "%1$s attack was parried by %4$s.",
|
||||||
|
ACTION_SWING_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_RESIST = "(Resisted)",
|
||||||
|
ACTION_SWING_MISSED_RESIST_FULL_TEXT = "%1$s attack was fully resisted by %4$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_UNIT_BECCOMES_UNCONSCIOUS = "collapses",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_FULL_TEXT = "%4$s collapses.",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DESTROYED = "destroyed",
|
||||||
|
ACTION_UNIT_DESTROYED_FULL_TEXT = "%4$s was destroyed.",
|
||||||
|
ACTION_UNIT_DESTROYED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DIED = "died",
|
||||||
|
ACTION_UNIT_DIED_FULL_TEXT = "%4$s died.",
|
||||||
|
ACTION_UNIT_DIED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DISSIPATES = "dissipates",
|
||||||
|
ACTION_UNIT_DISSIPATES_FULL_TEXT = "%4$s dissipates.",
|
||||||
|
ACTION_UNIT_DISSIPATES_POSSESSIVE = "0",
|
||||||
|
ADD = "Add",
|
||||||
|
ADDITIONAL_FILTERS = "Additional Filters",
|
||||||
|
ADD_FILTER = "Add Filter",
|
||||||
|
AURAS = "Auras",
|
||||||
|
AURAS_COMBATLOG_TOOLTIP = "Shows message about beneficial and harmful state effects.",
|
||||||
|
BENEFICIAL = "Beneficial",
|
||||||
|
BENEFICIAL_AURA_COMBATLOG_TOOLTIP = "Show when you gain or lose a beneficial aura.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_BOTH = "Show everything involving %s?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_EVERYTHING = "Show everything",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_INCOMING = "What happened to %s?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING = "What did %s do?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING_ME = "What did %s do to you?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_RESET = "Reset",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SAVE = "Save as a new filter",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_HIDE = "Hide messages like this one.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_LINK = "Link %s to chat.",
|
||||||
|
BY_SOURCE = "By Source",
|
||||||
|
BY_SOURCE_COMBATLOG_TOOLTIP = "Line color based on caster.",
|
||||||
|
BY_TARGET = "By Target",
|
||||||
|
BY_TARGET_COMBATLOG_TOOLTIP = "Line color based on target.",
|
||||||
|
COLORIZE = "Colorize:",
|
||||||
|
COLORS = "Colors",
|
||||||
|
COLOR_BY_SCHOOL = "Color-by-School",
|
||||||
|
COMBATLOG_DEFAULTS = "Combat Log Defaults",
|
||||||
|
COMBATLOG_FILTER_STRING_CUSTOM_UNIT = "Custom Unit",
|
||||||
|
COMBATLOG_FILTER_STRING_FRIENDLY_UNITS = "Friends",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_PLAYERS = "Enemy Players",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_UNITS = "Enemy Units",
|
||||||
|
COMBATLOG_FILTER_STRING_ME = "Me",
|
||||||
|
COMBATLOG_FILTER_STRING_MY_PET = "Pet",
|
||||||
|
COMBATLOG_FILTER_STRING_NEUTRAL_UNITS = "Neutral",
|
||||||
|
COMBATLOG_FILTER_STRING_UNKNOWN_UNITS = "Unknown",
|
||||||
|
COMBATLOG_HIGHLIGHT_ABILITY = "Ability",
|
||||||
|
COMBATLOG_HIGHLIGHT_DAMAGE = "Damage",
|
||||||
|
COMBATLOG_HIGHLIGHT_KILL = "Kill",
|
||||||
|
COMBATLOG_HIGHLIGHT_SCHOOL = "School",
|
||||||
|
COMBATLOG_UNKNOWN_UNIT = "Something",
|
||||||
|
COMBAT_FACTION_CHANGE = "Reputation",
|
||||||
|
COMBAT_HONOR_GAIN = "Honor",
|
||||||
|
COMBAT_LOG_UNIT_YOU_ENABLED = "1",
|
||||||
|
COMBAT_MISC_INFO = "Misc Info",
|
||||||
|
COMBAT_XP_GAIN = "Experience",
|
||||||
|
CONFIRM_COMBAT_FILTER_DEFAULTS = "Do you really want to reset your filters to their default values?",
|
||||||
|
CONFIRM_COMBAT_FILTER_DELETE = "Do you really want to delete this filter?",
|
||||||
|
COPY_FILTER = "Copy Filter",
|
||||||
|
DAMAGE_NUMBER = "Damage Number",
|
||||||
|
DAMAGE_SCHOOL_TEXT = "Damage School",
|
||||||
|
DAMAGE_SHIELD = "Damage Shields",
|
||||||
|
DAMAGE_SHIELD_COMBATLOG_TOOLTIP = "Show messages when a spell or ability deals damage in reaction to a melee swing, such as Thorns.",
|
||||||
|
DEATHS_COMBATLOG_TOOLTIP = "Show messages when something dies.",
|
||||||
|
DEFAULT_COMBATLOG_FILTER_NAME = "Filter %d",
|
||||||
|
DISPELS = "Dispels",
|
||||||
|
DISPEL_AURA_COMBATLOG_TOOLTIP = "Show when an aura is removed, broken, or stolen.",
|
||||||
|
DONE_BY = "Done By:",
|
||||||
|
DONE_TO = "Done To:",
|
||||||
|
DRAINS = "Drains",
|
||||||
|
ENTER_FILTER_NAME = "Enter filter name:",
|
||||||
|
ENTIRE_LINE = "Entire Line",
|
||||||
|
ENTIRE_LINE_COMBATLOG_TOOLTIP = "Color the entire line based on the selection below.",
|
||||||
|
ENVIRONMENTAL_DAMAGE = "Environmental Damage",
|
||||||
|
ENVIRONMENTAL_DAMAGE_COMBATLOG_TOOLTIP = "Show messages when someone takes damage from falling, drowning or swimming in lava.",
|
||||||
|
EXAMPLE_SPELL_FIREBALL = "Fireball",
|
||||||
|
EXAMPLE_SPELL_FROSTBOLT = "Frostbolt",
|
||||||
|
EXAMPLE_TARGET_MONSTER = "Monster",
|
||||||
|
EXAMPLE_TEXT = "Example Text:",
|
||||||
|
EXTRA_ATTACKS = "Extra Attacks",
|
||||||
|
FAILURES = "Failures",
|
||||||
|
FILTER_BY_ENEMIES_COMBATLOG_TOOLTIP = "Actions performed by hostile creatures and pets.",
|
||||||
|
FILTER_BY_FRIENDS_COMBATLOG_TOOLTIP = "Actions performed by friendly players, pets, and creatures.",
|
||||||
|
FILTER_BY_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Actions performed by hostile players.",
|
||||||
|
FILTER_BY_ME_COMBATLOG_TOOLTIP = "Actions performed by you, your traps, and your spells.",
|
||||||
|
FILTER_BY_NEUTRAL_COMBATLOG_TOOLTIP = "Actions performed by neutral creatures.",
|
||||||
|
FILTER_BY_PET_COMBATLOG_TOOLTIP = "Actions performed by your pets, summoned guardians, and charmed players.",
|
||||||
|
FILTER_BY_UNKNOWN_COMBATLOG_TOOLTIP = "Actions performed by undefined sources such as falling, acid, or lava.",
|
||||||
|
FILTER_NAME = "Filter Name",
|
||||||
|
FILTER_TO_FRIENDS_COMBATLOG_TOOLTIP = "Actions performed on friendly players, pets, and creatures.",
|
||||||
|
FILTER_TO_HOSTILE_COMBATLOG_TOOLTIP = "Actions performed on hostile pets and creatures.",
|
||||||
|
FILTER_TO_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Actions performed on hostile players.",
|
||||||
|
FILTER_TO_ME_COMBATLOG_TOOLTIP = "Actions performed on you.",
|
||||||
|
FILTER_TO_NEUTRAL_COMBATLOG_TOOLTIP = "Actions performed on neutral creatures.",
|
||||||
|
FILTER_TO_PET_COMBATLOG_TOOLTIP = "Actions performed on your pets, summoned guardians, and charmed players.",
|
||||||
|
FILTER_TO_UNKNOWN_COMBATLOG_TOOLTIP = "Actions performed on invisible targets.",
|
||||||
|
FORMATTING = "Formatting",
|
||||||
|
FULL_TEXT_COMBATLOG_TOOLTIP = "Show combat log entries as full sentences.",
|
||||||
|
HARMFUL_AURA_COMBATLOG_TOOLTIP = "Show when you gain or lose a harmful aura.",
|
||||||
|
HEALS = "Heals",
|
||||||
|
HIGHLIGHTING = "Highlighting:",
|
||||||
|
HIGHLIGHT_ABILITY_COMBATLOG_TOOLTIP = "Highlight ability names in combat messages.",
|
||||||
|
HIGHLIGHT_DAMAGE_COMBATLOG_TOOLTIP = "Highlight damage numbers in combat messages.",
|
||||||
|
HIGHLIGHT_KILL_COMBATLOG_TOOLTIP = "Highlights the entire line when you or a party member makes a kill.",
|
||||||
|
HIGHLIGHT_SCHOOL_COMBATLOG_TOOLTIP = "Highlight the school of a spell in combat messages.",
|
||||||
|
HOSTILE = "Hostile",
|
||||||
|
INTERRUPTS = "Interrupts",
|
||||||
|
ITEM_NAMES = "Item Names",
|
||||||
|
ITEM_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Show braces around item names.",
|
||||||
|
KILLS_COMBATLOG_TOOLTIP = "Show messages when a member of your party kills something.",
|
||||||
|
MELEE = "Melee",
|
||||||
|
MELEE_COMBATLOG_TOOLTIP = "Shows natural melee swings.",
|
||||||
|
MESSAGE_SOURCES = "Message Sources",
|
||||||
|
MISSES = "Misses",
|
||||||
|
MOVE_FILTER_DOWN = "Move Filter Down",
|
||||||
|
MOVE_FILTER_UP = "Move Filter Up",
|
||||||
|
OTHER = "Other",
|
||||||
|
PERIODIC = "Periodic",
|
||||||
|
POWER_GAINS = "Power Gains",
|
||||||
|
POWER_GAINS_COMBATLOG_TOOLTIP = "Show messages when a spell or ability restores mana, energy, rage, focus, chi, holy power, or shadow orbs.",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING = "Everything",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING_TOOLTIP = "Show all combat messages.",
|
||||||
|
QUICKBUTTON_NAME_KILLS = "Kills",
|
||||||
|
QUICKBUTTON_NAME_KILLS_TOOLTIP = "Show all deaths and kills.",
|
||||||
|
QUICKBUTTON_NAME_ME = "What happened to me?",
|
||||||
|
QUICKBUTTON_NAME_ME_TOOLTIP = "Show everything done to me.",
|
||||||
|
QUICKBUTTON_NAME_SELF = "Self",
|
||||||
|
QUICKBUTTON_NAME_SELF_TOOLTIP = "Show messages of actions done by you and done to you.",
|
||||||
|
QUICK_BUTTON_COMBATLOG_TOOLTIP = "Places a shortcut to this filter on the chat window.",
|
||||||
|
RANGED = "Ranged",
|
||||||
|
RANGED_COMBATLOG_TOOLTIP = "Shows attacks from bows, guns, thrown weapons, and wands.",
|
||||||
|
RANGE_DAMAGE_COMBATLOG_TOOLTIP = "Show ranged shots that deal full or partial damage.",
|
||||||
|
RANGE_MISSED_COMBATLOG_TOOLTIP = "Show ranged shots that fail to deal damage.",
|
||||||
|
RESURRECT = "Resurrections",
|
||||||
|
SETTINGS = "Settings",
|
||||||
|
SHOW_BRACES = "Show Braces",
|
||||||
|
SHOW_BRACES_COMBATLOG_TOOLTIP = "Display braces around hyperlinks in combat log messages.",
|
||||||
|
SHOW_QUICK_BUTTON = "Show Quick Button",
|
||||||
|
SHOW_TIMESTAMP = "Show Timestamp",
|
||||||
|
SOURCE = "Source:",
|
||||||
|
SPECIAL = "Special",
|
||||||
|
SPELLS_COMBATLOG_TOOLTIP = "Shows messages about spells and special abilities.",
|
||||||
|
SPELL_CASTING = "Spell Casting",
|
||||||
|
SPELL_CASTING_COMBATLOG_TOOLTIP = "Show messages about spell casting.",
|
||||||
|
SPELL_CAST_FAILED_COMBATLOG_TOOLTIP = "Show messages when a spell cannot be cast or fails to cast.",
|
||||||
|
SPELL_CAST_START_COMBATLOG_TOOLTIP = "Show messages when a spell begins casting.",
|
||||||
|
SPELL_CAST_SUCCESS_COMBATLOG_TOOLTIP = "Show messages when a spell successfully completes.",
|
||||||
|
SPELL_COLOR_BY_SCHOOL_COMBATLOG_TOOLTIP = "Color spell names by school.",
|
||||||
|
SPELL_DAMAGE_COMBATLOG_TOOLTIP = "Show messages when a spell or ability deals damage.",
|
||||||
|
SPELL_DAMAGE_NUMBER_COMBATLOG_TOOLTIP = "Colorizes the damage number on non-melee swings.",
|
||||||
|
SPELL_DAMAGE_SCHOOL_COMBATLOG_TOOLTIP = "Color the damage school name. (e.g. shadow)",
|
||||||
|
SPELL_DRAIN_COMBATLOG_TOOLTIP = "Show messages when a spell or ability reduces mana, energy, rage, or focus.",
|
||||||
|
SPELL_EXTRA_ATTACKS_COMBATLOG_TOOLTIP = "Show messages when a spell or ability grants additional attacks.",
|
||||||
|
SPELL_HEAL_COMBATLOG_TOOLTIP = "Show messages when a spell or ability heals damage.",
|
||||||
|
SPELL_INSTAKILL_COMBATLOG_TOOLTIP = "Show messages about special spell types, such as those that inflict durability loss or share damage with a pet.",
|
||||||
|
SPELL_INTERRUPT_COMBATLOG_TOOLTIP = "Show messages when a spell or ability interrupts another spell.",
|
||||||
|
SPELL_MISSED_COMBATLOG_TOOLTIP = "Show messages when a spell or ability fails to deal damage. This includes dodges, parries, blocks, deflections, immunes, absorbs and evades.",
|
||||||
|
SPELL_NAMES = "Spell Names",
|
||||||
|
SPELL_NAMES_COMBATLOG_TOOLTIP = "Color spell names.",
|
||||||
|
SPELL_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Show braces around spell names.",
|
||||||
|
SPELL_PERIODIC_COMBATLOG_TOOLTIP = "Show spells that perform an effect incrementally.",
|
||||||
|
SPELL_PERIODIC_DAMAGE_COMBATLOG_TOOLTIP = "Show messages when a spell or ability periodically deals damage, such as Shadow Word: Pain or Corruption.",
|
||||||
|
SPELL_PERIODIC_HEAL_COMBATLOG_TOOLTIP = "Show messages when a spell or ability periodically heals damage, such as Renew or Rejuvenation.",
|
||||||
|
SPELL_PERIODIC_MISSED_COMBATLOG_TOOLTIP = "Show messages when a spell or ability fails to periodically deal damage. This includes immunes, absorbs and evades.",
|
||||||
|
SPELL_PERIODIC_OTHER_COMBATLOG_TOOLTIP = "Show messages when a spell or ability periodically performs any other effect, such as restoring or draining mana.",
|
||||||
|
SPELL_RESURRECT_COMBATLOG_TOOLTIP = "Show messages when a spell or ability resurrects another player or creature.",
|
||||||
|
SPELL_SUMMON_COMBATLOG_TOOLTIP = "Show messages when a spell or ability summons a creature or creates an object.",
|
||||||
|
START = "Start",
|
||||||
|
STRING_SCHOOL_UNKNOWN = "Unknown",
|
||||||
|
SUCCESS = "Success",
|
||||||
|
SUMMONS = "Summons",
|
||||||
|
SWING_DAMAGE_COMBATLOG_TOOLTIP = "Shows melee swings that deal full or partial damage.",
|
||||||
|
SWING_MISSED_COMBATLOG_TOOLTIP = "Show melee swings that do not deal damage.",
|
||||||
|
TEXT_MODE_A = "A",
|
||||||
|
TEXT_MODE_A_STRING_1 = "%s %s %s %s %s. %s %11$s",
|
||||||
|
TEXT_MODE_A_STRING_2 = "%1$s %3$s %2$s %4$s %5$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_3 = "%1$s %5$s %3$s %4$s %2$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_ACTION = "|Haction:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_ITEM = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_SPELL = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_UNIT = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_DEST_ICON = "|Hicon:%d:dest|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_DEST_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_ITEM = "|Hitem:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_POSSESSIVE = "%s's",
|
||||||
|
TEXT_MODE_A_STRING_REMAINING_POINTS = "(%s Remaining)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_ABSORB = "(%s Absorbed)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_BLOCK = "(%s Blocked)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL = "(Critical)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL_SPELL = "(Critical)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRUSHING = "(Crushing)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_FORMAT = "$resultAmount $resultType",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_GLANCING = "(Glancing)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_MULTISTRIKE = "(Multistrike)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERENERGIZE = "(%s Overenergized)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERHEALING = "(%s Overhealed)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERKILLING = "(%s Overkill)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_PARRY = "(%d Parried)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_REFLECT = "Reflected",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_RESIST = "(%s Resisted)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_VULNERABILITY = "(%s Vulnerability Damage)",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_ICON = "|Hicon:%s:source|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL_EXTRA = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_TIMESTAMP = "%s> %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_SCHOOL = "%s %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_TYPE = "%s (%s)",
|
||||||
|
TEXT_MODE_A_TIMESTAMP = "%H:%M:%S",
|
||||||
|
TIMESTAMP_COMBATLOG_TOOLTIP = "Display the timestamp for combat log messages.",
|
||||||
|
UNIT_COLORS = "Unit Colors:",
|
||||||
|
UNIT_NAMES = "Unit Names",
|
||||||
|
UNIT_NAMES_COMBATLOG_TOOLTIP = "Color unit names.",
|
||||||
|
UNIT_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Show braces around unit names.",
|
||||||
|
UNIT_YOU = "You",
|
||||||
|
UNIT_YOU_DEST = "You",
|
||||||
|
UNIT_YOU_DEST_POSSESSIVE = "Your",
|
||||||
|
UNIT_YOU_SOURCE = "You",
|
||||||
|
UNIT_YOU_SOURCE_POSSESSIVE = "Your",
|
||||||
|
USE_FULL_TEXT_MODE = "Use Verbose Mode",
|
||||||
|
}
|
||||||
Vendored
+677
@@ -0,0 +1,677 @@
|
|||||||
|
-- Classic Era GlobalStrings (ES) that the combat log reads
|
||||||
|
-- and the 1.12 client lacks. Generated; do not edit by hand.
|
||||||
|
pfUI_locale["esES"]["combatlog"] = {
|
||||||
|
ACTION_DAMAGE_SHIELD = "daña",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT = "%2$s de %1$s refleja %9$s daño %7$s a %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT_NO_SOURCE = "%2$s refleja %9$s daño %7$s a %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED = "fallado",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK = "(Bloqueado)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT = "%4$s bloqueó %2$s de %1$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s bloqueó %2$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT = "(Desviado)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT = "%4$s desvió %2$s de %1$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%4$s desvió %2$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE = "(Esquivado)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT = "%4$s esquivó %2$s de %1$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s esquivó %2$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED = "(Evadido)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT = "%4$s evadió %2$s de %1$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%4$s evadió %2$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT = "%2$s de %1$s no alcanzó a %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT_NO_SOURCE = "%2$s no alcanzó a %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE = "(Inmune)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT = "%2$s de %1$s falló. %4$s era inmune.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s falló. %4$s era inmune.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS = "(Fallado)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT = "%2$s de %1$s no alcanza a %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s no alcanza a %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY = "(Parado)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT = "%4$s paró %2$s de %1$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%4$s paró %2$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST = "(Resistido)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT = "%4$s resistió por completo %2$s de %1$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s resistió por completo %2$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SPLIT = "daño transferido",
|
||||||
|
ACTION_DAMAGE_SPLIT_ABSORBED_FULL_TEXT = "%4$s absorbió el daño de %2$s de %1$s. %6$s.",
|
||||||
|
ACTION_DAMAGE_SPLIT_FULL_TEXT = "%2$s de %1$s inflige %9$s de daño a %4$s.",
|
||||||
|
ACTION_DAMAGE_SPLIT_POSSESSIVE = "0",
|
||||||
|
ACTION_DAMAGE_SPLIT_RESULT_FULL_TEXT = "%2$s de %1$s inflige %9$s de daño a %4$s. %6$s.",
|
||||||
|
ACTION_ENCHANT_APPLIED = "aplicado a",
|
||||||
|
ACTION_ENCHANT_APPLIED_FULL_TEXT = "%1$s lanza %2$s a %5$s de %4$s.",
|
||||||
|
ACTION_ENCHANT_APPLIED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENCHANT_REMOVED = "eliminado de",
|
||||||
|
ACTION_ENCHANT_REMOVED_FULL_TEXT = "%2$s se desvanece de %5$s de %4$s.",
|
||||||
|
ACTION_ENCHANT_REMOVED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE = "dañó",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING = "Ahogamiento",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_FULL_TEXT = "%4$s se está ahogando y pierde %9$s salud.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING = "Caída",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_FULL_TEXT = "%4$s cae y pierde %9$s salud.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE = "Fatiga",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_FULL_TEXT = "%4$s sufre agotamiento y pierde %9$s salud.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE = "Fuego",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_FULL_TEXT = "%4$s sufre %9$s daño de Fuego.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FULL_TEXT = "%4$s pierde %9$s salud por daño recibido del entorno.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA = "Lava",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_FULL_TEXT = "%4$s pierde %9$s salud por nadar en lava. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME = "Cieno",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_FULL_TEXT = "%4$s pierde %9$s salud por nadar en el cieno. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL = "mató",
|
||||||
|
ACTION_PARTY_KILL_FULL_TEXT = "¡%1$s mató a %4$s!",
|
||||||
|
ACTION_PARTY_KILL_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS = "está fuera de combate",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_FULL_TEXT = "¡%1$s ha dejado fuera de combate a %4$s!",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_RANGED = "disparo",
|
||||||
|
ACTION_RANGE_DAMAGE = "alcanzó",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT = "%1$s da a %4$s un golpe a distancia y le inflige %5$s.%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT_NO_SOURCE = "Un golpe a distancia alcanza a %4$s y le inflige %5$s.%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED = "falló",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB = "(Absorbido)",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_FULL_TEXT = "%4$s absorbió el golpe de %1$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK = "(Bloqueado)",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_FULL_TEXT = "%4$s bloqueó el golpe de %1$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT = "(Desviado)",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_FULL_TEXT = "%4$s desvió el golpe de %1$s.",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DODGE = "(Esquivado)",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_FULL_TEXT = "%4$s esquivó el golpe de %1$s.",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_EVADE = "(Evadido)",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_FULL_TEXT = "%4$s evadió el golpe de %1$s.",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_FULL_TEXT = "El golpe de %1$s no alcanza a %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE = "(Inmune)",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_FULL_TEXT = "El golpe de %1$s falló. %4$s era inmune.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE = "(Lanzamiento fallado)",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_FULL_TEXT = "El golpe de %1$s ha fallado al lanzarse hacia %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISS = "(Fallado)",
|
||||||
|
ACTION_RANGE_MISSED_MISS_FULL_TEXT = "El golpe de %1$s no alcanza a %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_PARRY = "(Parado)",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_FULL_TEXT = "%4$s paró el golpe de %1$s.",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_RESIST = "(Resistido)",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_FULL_TEXT = "%4$s resistió por completo el golpe de %1$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED = "aplicó",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF = "aplicó",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT = "%4$s gana %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT_NO_SOURCE = "%4$s gana %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT = "%4$s gana %1$s de %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s gana %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF = "afectó",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT = "A %4$s le afecta %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT_NO_SOURCE = "A %4$s le afecta %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT = "A %4$s le afecta %1$s de %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "A %4$s le afecta %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE = "acumuló",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF = "acumuló",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT = "%4$s gana %2$s de %1$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%4$s gana %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF = "afectó",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT = "A %4$s le afecta %2$s de %1$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "A %4$s le afecta %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN = "rompió",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF = "rompió",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT = "%1$s rompió %2$s de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT_NO_SOURCE = "Alguien ha roto %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF = "rompió",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT = "%1$s rompió %2$s de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT_NO_SOURCE = "Alguien ha roto %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF = "rompió",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT = "%1$s %5$s rompió %4$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT_NO_SOURCE = "%5$s rompió %2$s de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF = "rompió",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT = "%1$s %5$s rompió %4$s %2$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT_NO_SOURCE = "%5$s rompió %2$s de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH = "restableció",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF = "restableció",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT = "%2$s de %1$s restablecido en %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT_NO_SOURCE = "%2$s se restablece en %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s restablecido en %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s se restablece en %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF = "restableció",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT = "%2$s de %1$s restablecido en %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s se restablece en %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s restablecido en %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s se restablece en %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REMOVED = "eliminó",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF = "perdió",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT = "%2$s de %1$s se desvanece de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT_NO_SOURCE = "%2$s se desvanece de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s se desvanece de %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s se desvanece de %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF = "disipó",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT = "%2$s de %1$s se disipa de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s se disipa de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s se disipa de %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s se disipa de %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE = "redujo",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF = "redujo",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT = "%2$s de %1$s (%9$s) disminuye.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%2$s (%9$s) disminuye.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF = "disminuyó",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT = "%2$s de %1$s (%9$s) decrece.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s (%9$s) decrece.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT = "%2$s de %1$s se eliminó de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT_NO_SOURCE = "%2$s de %1$s se eliminó de %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE = "golpea",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT = "%1$s %2$s golpea a %4$s por %5$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s golpea a %4$s por %5$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL = "reparado",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT = "%1$s %2$s repairs %4$s durante %9$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT_NO_SOURCE = "%2$s repara %4$s durante %9$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED = "falló",
|
||||||
|
ACTION_SPELL_CAST_FAILED_FULL_TEXT = "%2$s de %1$s falló.%6$s",
|
||||||
|
ACTION_SPELL_CAST_FAILED_MASTER = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_START = "comenzó a lanzar",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT = "%1$s comienza a lanzar %2$s a %4$s.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_DEST = "%1$s comienza a lanzar %2$s.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_SOURCE = "Algo comienza a lanzar %2$s a %4$s.",
|
||||||
|
ACTION_SPELL_CAST_START_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_START_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS = "lanzó",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT = "%1$s lanza %2$s a %4$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_DEST = "%1$s lanza %2$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_SOURCE = "Algo lanza %2$s a %4$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CREATE = "creó",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT = "%2$s de %1$s crea %4$s.%6$s",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT_NO_SOURCE = "%2$s crea %4$s.%6$s",
|
||||||
|
ACTION_SPELL_CREATE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DAMAGE = "alcanzó",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT = "%2$s de %1$s golpea a %4$s y le inflige %5$s.%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s golpea a %4$s y le inflige %5$s.%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL = "disipó",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF = "disipó",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT = "%2$s de %1$s disipa %4$s de %5$s.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT_NO_SOURCE = "%2$s disipa %4$s de %5$s.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF = "limpió",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT = "%2$s de %1$s limpia %5$s de %4$s.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s limpia %5$s de %4$s.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED = "error al disipar",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT = "%2$s de %1$s no logra disipar %4$s de %5$s.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT_NO_SOURCE = "%2$s no logró disipar %4$s %5$s.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DRAIN = "drenó",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT = "%2$s de %1$s drena %9$s %8$s de %4$s.",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s drena %9$s p. de %8$s de %4$s.",
|
||||||
|
ACTION_SPELL_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE = "pérdida de durabilidad",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL = "pérdida total de durabilidad",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_FULL_TEXT = "%2$s de %1$s daña %4$s: todos los objetos dañados.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_FULL_TEXT = "%2$s de %1$s daña %4$s: %5$s dañado.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE = "energizó",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT = "%4$s gana %9$s de %8$s gracias a %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s gana %9$s de %8$s gracias a %2$s.",
|
||||||
|
ACTION_SPELL_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE_RESULT = "%9$s %8$s ganado",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS = "otorgó ataques extra",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT = "%1$s gana %9$s ataques extra con %2$s.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT_NO_SOURCE = "%2$s otorga %9$s ataques extra.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_HEAL = "sanó",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT = "%2$s de %1$s sana %9$s a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT_NO_SOURCE = "%2$s sana %9$s a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL = "mató",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT = "%2$s de %1$s mata al instante a %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT_NO_SOURCE = "%2$s mata a %4$s al instante.",
|
||||||
|
ACTION_SPELL_INSTAKILL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS = "está fuera de combate",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT = "%1$s %2$s deja fuera de combate a %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT_NO_SOURCE = "%2$s deja fuera de combate a %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INTERRUPT = "interrumpió",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT = "%2$s de %1$s interrumpe %5$s de %4$s.",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT_NO_SOURCE = "%2$s interrumpe %5$s de %4$s.",
|
||||||
|
ACTION_SPELL_INTERRUPT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH = "drenó",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT = "%1$s %2$s drena %9$s %8$s de %4$s. %1$s gana %10$s %8$s.",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT_NO_SOURCE = "%2$s drena %9$s %8$s de %4$s.",
|
||||||
|
ACTION_SPELL_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH_RESULT = "%10$s %8$s ganado",
|
||||||
|
ACTION_SPELL_MISSED = "fallado",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB = "Absorbido",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT = "%4$s absorbió %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%4$s absorbió %2$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK = "Bloqueado",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT = "%4$s bloqueó %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s bloqueó %2$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT = "Desviado",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT = "%4$s desvió %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%4$s desvió %2$s.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DODGE = "Esquivado",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT = "%4$s esquivó %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s esquivó %2$s.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_EVADE = "Evadido",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT = "%4$s evadió %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT_NO_SOURCE = "%4$s evadió %2$s.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT = "%2$s de %1$s no alcanzó a %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT_NO_SOURCE = "%2$s no alcanzó a %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE = "Inmune",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT = "%2$s de %1$s falló. %4$s era inmune.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s falló. %4$s era inmune.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE = "Lanzamiento fallado",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT = "%2$s de %1$s ha fallado al lanzarse hacia %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT_NO_SOURCE = "%2$s ha fallado al lanzarse hacia %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_MISS = "Fallado",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT = "%2$s de %1$s no alcanza a %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s no alcanza a %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_PARRY = "Parado",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT = "%4$s paró %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%4$s paró %2$s.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT = "reflejado",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT = "%4$s reflejó %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT_NO_SOURCE = "%4$s reflejó %2$s.",
|
||||||
|
ACTION_SPELL_MISSED_RESIST = "resistido",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT = "%4$s resistió por completo %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s resistió por completo %2$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE = "dañó",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT = "%4$s sufre %5$s daño de %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT_NO_SOURCE = "%4$s sufre %5$s daño de %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN = "drenó",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT = "%2$s de %1$s drena %9$s %8$s de %4$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s drena %9$s %8$s de %4$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE = "energizó",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT = "%4$s gana %9$s de %8$s gracias a %2$s de %1$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s gana %9$s de %8$s gracias a %2$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_RESULT = "$extraAmount %8$s ganado",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL = "sanó",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT = "%4$s gana %9$s salud gracias a %1$s %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT_NO_SOURCE = "%4$s gana %9$s salud gracias a %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH = "drenó",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT = "%1$s %2$s drena %9$s %8$s de %4$s. %1$s gana %10$s %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT_NO_SOURCE = "%2$s drena %9$s %8$s de %4$s. %1$s gana %10$s %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_RESULT = "(%10$s %8$s ganado)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED = "falla tic",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB = "(%1$s Absorbido)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT = "%4$s absorbió %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%4$s absorbió %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK = "(Bloqueado)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT = "%4$s bloqueó el efecto periódico de %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s bloqueó el efecto periódico de %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED = "(Desviado)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT = "%4$s desvió el efecto periódico de %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT_NO_SOURCE = "%4$s desvió el efecto periódico de %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE = "(Esquivado)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT = "%4$s esquivó el efecto periódico de %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s esquivó el efecto periódico de %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED = "(Evadido)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT = "%4$s evadió el efecto periódico de %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%4$s evadió el efecto periódico de %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT = "%2$s de %1$s no tiene efecto periódico sobre %4$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT_NO_SOURCE = "%2$s no tiene efecto periódico sobre %4$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE = "(Inmune)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT = "%4$s era inmune a %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%4$s era inmune a %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS = "(Fallado)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT = "El efecto periódico de %2$s de %1$s no alcanzó a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT_NO_SOURCE = "El efecto periódico de %2$s no alcanzó a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY = "(Parado)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT = "%4$s paró el efecto periódico de %2$s de %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%4$s paró el efecto periódico de %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST = "(Resistido)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT = "%2$s de %1$s no afecta a %4$s. %4$s resistió.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s no afecta a %4$s. %4$s resistió.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_RESURRECT = "resucitado",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT = "%1$s %2$s resucita a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT_NO_SOURCE = "%2$s resucita a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN = "robó",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF = "robó",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT = "%2$s de %1$s roba %5$s de %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT_NO_SOURCE = "%2$s roba %5$s de %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF__POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF = "robó",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT = "%2$s de %1$s transfiere $extraSpell de %4$s a %1$s.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s transfiere $extraSpell de %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT = "%2$s de %1$s roba %5$s de %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT_NO_SOURCE = "%2$s roba %5$s de %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_SUMMON = "invocó",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT = "%2$s de %1$s invoca a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT_NO_SOURCE = "%2$s invoca a %4$s.%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING = "Golpe",
|
||||||
|
ACTION_SWING_DAMAGE = "alcanzó",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT = "%1$s da a %4$s un golpe cuerpo a cuerpo y le inflige %5$s.%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT_NO_SOURCE = "Un golpe cuerpo a cuerpo alcanza a %4$s y le inflige %5$s.%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED = "falló",
|
||||||
|
ACTION_SWING_MISSED_ABSORB = "(Absorbido)",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_FULL_TEXT = "%4$s absorbió el ataque de %1$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_BLOCK = "(Bloqueado)",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_FULL_TEXT = "%4$s bloqueó el ataque de %1$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT = "(Desviado)",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_FULL_TEXT = "%4$s desvió el ataque de %1$s.",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DODGE = "(Esquivado)",
|
||||||
|
ACTION_SWING_MISSED_DODGE_FULL_TEXT = "%4$s esquivó el ataque de %1$s.",
|
||||||
|
ACTION_SWING_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_EVADE = "(Evadido)",
|
||||||
|
ACTION_SWING_MISSED_EVADE_FULL_TEXT = "%4$s evadió el ataque de %1$s.",
|
||||||
|
ACTION_SWING_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_FULL_TEXT = "El ataque de %1$s no alcanza a %4$s.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE = "(Inmune)",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_FULL_TEXT = "El ataque de %1$s ha fallado. %4$s era inmune.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE = "(Lanzamiento fallado)",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_FULL_TEXT = "El ataque de %1$s ha fallado al lanzarse hacia %4$s.",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISS = "(Fallado)",
|
||||||
|
ACTION_SWING_MISSED_MISS_FULL_TEXT = "El ataque de %1$s no alcanza a %4$s.",
|
||||||
|
ACTION_SWING_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_PARRY = "(Parado)",
|
||||||
|
ACTION_SWING_MISSED_PARRY_FULL_TEXT = "%4$s paró el ataque de %1$s.",
|
||||||
|
ACTION_SWING_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_RESIST = "(Resistido)",
|
||||||
|
ACTION_SWING_MISSED_RESIST_FULL_TEXT = "%4$s resistió por completo el ataque de %1$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_UNIT_BECCOMES_UNCONSCIOUS = "se desmaya",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_FULL_TEXT = "%4$s se desmaya.",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DESTROYED = "destruyó",
|
||||||
|
ACTION_UNIT_DESTROYED_FULL_TEXT = "%4$s ha sido destruido.",
|
||||||
|
ACTION_UNIT_DESTROYED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DIED = "murió",
|
||||||
|
ACTION_UNIT_DIED_FULL_TEXT = "%4$s ha muerto.",
|
||||||
|
ACTION_UNIT_DIED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DISSIPATES = "se disipa",
|
||||||
|
ACTION_UNIT_DISSIPATES_FULL_TEXT = "%4$s se disipa.",
|
||||||
|
ACTION_UNIT_DISSIPATES_POSSESSIVE = "0",
|
||||||
|
ADD = "Añadir",
|
||||||
|
ADDITIONAL_FILTERS = "Filtros adicionales",
|
||||||
|
ADD_FILTER = "Añadir",
|
||||||
|
AURAS = "Auras",
|
||||||
|
AURAS_COMBATLOG_TOOLTIP = "Mostrar mensajes sobre efectos de estados beneficiosos y dañinos.",
|
||||||
|
BENEFICIAL = "Beneficioso",
|
||||||
|
BENEFICIAL_AURA_COMBATLOG_TOOLTIP = "Mostrar cuando ganas o pierdes un aura beneficiosa.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_BOTH = "¿Mostrar todo lo referente a %s?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_EVERYTHING = "Mostrar todo",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_INCOMING = "¿Qué le pasó a %s?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING = "¿Qué hizo %s?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING_ME = "¿Qué te hizo %s?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_RESET = "Restablecer",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SAVE = "Guardar como nuevo filtro",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_HIDE = "Ocultar los mensajes como este.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_LINK = "Vincular %s a chat.",
|
||||||
|
BY_SOURCE = "Por origen",
|
||||||
|
BY_SOURCE_COMBATLOG_TOOLTIP = "Color de línea según taumaturgo.",
|
||||||
|
BY_TARGET = "Por objetivo",
|
||||||
|
BY_TARGET_COMBATLOG_TOOLTIP = "Color de línea según objetivo.",
|
||||||
|
COLORIZE = "Colorear:",
|
||||||
|
COLORS = "Colores",
|
||||||
|
COLOR_BY_SCHOOL = "Colorear según escuela",
|
||||||
|
COMBATLOG_DEFAULTS = "Restablecer reg. combate",
|
||||||
|
COMBATLOG_FILTER_STRING_CUSTOM_UNIT = "Unidad personalizada",
|
||||||
|
COMBATLOG_FILTER_STRING_FRIENDLY_UNITS = "Amigos",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_PLAYERS = "Jugadores enemigos",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_UNITS = "Unidades enemigas",
|
||||||
|
COMBATLOG_FILTER_STRING_ME = "Yo",
|
||||||
|
COMBATLOG_FILTER_STRING_MY_PET = "Mascota",
|
||||||
|
COMBATLOG_FILTER_STRING_NEUTRAL_UNITS = "Neutral",
|
||||||
|
COMBATLOG_FILTER_STRING_UNKNOWN_UNITS = "Desconocido",
|
||||||
|
COMBATLOG_HIGHLIGHT_ABILITY = "Facultad",
|
||||||
|
COMBATLOG_HIGHLIGHT_DAMAGE = "Daño",
|
||||||
|
COMBATLOG_HIGHLIGHT_KILL = "Muerte",
|
||||||
|
COMBATLOG_HIGHLIGHT_SCHOOL = "Escuela",
|
||||||
|
COMBATLOG_UNKNOWN_UNIT = "Algo",
|
||||||
|
COMBAT_FACTION_CHANGE = "Reputación",
|
||||||
|
COMBAT_HONOR_GAIN = "Honor",
|
||||||
|
COMBAT_LOG_UNIT_YOU_ENABLED = "0",
|
||||||
|
COMBAT_MISC_INFO = "Info. misc.",
|
||||||
|
COMBAT_XP_GAIN = "Experiencia",
|
||||||
|
CONFIRM_COMBAT_FILTER_DEFAULTS = "¿De verdad quieres restablecer la configuración inicial?",
|
||||||
|
CONFIRM_COMBAT_FILTER_DELETE = "¿Realmente quieres borrar este filtro?",
|
||||||
|
COPY_FILTER = "Copiar",
|
||||||
|
DAMAGE_NUMBER = "Cifra de daño",
|
||||||
|
DAMAGE_SCHOOL_TEXT = "Escuela de daño",
|
||||||
|
DAMAGE_SHIELD = "Escudos de daño",
|
||||||
|
DAMAGE_SHIELD_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad hace daño en reacción a un golpe cuerpo a cuerpo, como Espinas.",
|
||||||
|
DEATHS_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando haya una muerte.",
|
||||||
|
DEFAULT_COMBATLOG_FILTER_NAME = "Filtro %d",
|
||||||
|
DISPELS = "Disipación",
|
||||||
|
DISPEL_AURA_COMBATLOG_TOOLTIP = "Mostrar cuando se elimina, rompe o roba un aura.",
|
||||||
|
DONE_BY = "Hecho por:",
|
||||||
|
DONE_TO = "Hecho a:",
|
||||||
|
DRAINS = "drena",
|
||||||
|
ENTER_FILTER_NAME = "Escribe el nombre del filtro:",
|
||||||
|
ENTIRE_LINE = "Toda la línea",
|
||||||
|
ENTIRE_LINE_COMBATLOG_TOOLTIP = "Colorear toda la línea según la siguiente opción.",
|
||||||
|
ENVIRONMENTAL_DAMAGE = "Daño del entorno",
|
||||||
|
ENVIRONMENTAL_DAMAGE_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando alguien sufra daño al caer, ahogarse o nadar en lava.",
|
||||||
|
EXAMPLE_SPELL_FIREBALL = "Bola de Fuego",
|
||||||
|
EXAMPLE_SPELL_FROSTBOLT = "Descarga de Escarcha",
|
||||||
|
EXAMPLE_TARGET_MONSTER = "Monstruo",
|
||||||
|
EXAMPLE_TEXT = "Texto de muestra:",
|
||||||
|
EXTRA_ATTACKS = "Ataques extra",
|
||||||
|
FAILURES = "Fallos",
|
||||||
|
FILTER_BY_ENEMIES_COMBATLOG_TOOLTIP = "Acciones llevadas a cabo por criaturas y mascotas hostiles.",
|
||||||
|
FILTER_BY_FRIENDS_COMBATLOG_TOOLTIP = "Acciones llevadas a cabo por jugadores, mascotas y criaturas aliados.",
|
||||||
|
FILTER_BY_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Acciones llevadas a cabo por jugadores hostiles.",
|
||||||
|
FILTER_BY_ME_COMBATLOG_TOOLTIP = "Acciones llevadas a cabo por ti, tus trampas y tus hechizos.",
|
||||||
|
FILTER_BY_NEUTRAL_COMBATLOG_TOOLTIP = "Acciones llevadas a cabo por criaturas neutrales.",
|
||||||
|
FILTER_BY_PET_COMBATLOG_TOOLTIP = "Acciones llevadas a cabo por tus mascotas, guardianes invocados y jugadores embelesados.",
|
||||||
|
FILTER_BY_UNKNOWN_COMBATLOG_TOOLTIP = "Acciones de origen sin especificar como caídas, ácido o lava.",
|
||||||
|
FILTER_NAME = "Nombre del filtro",
|
||||||
|
FILTER_TO_FRIENDS_COMBATLOG_TOOLTIP = "Acciones realizadas a jugadores, mascotas y criaturas aliados.",
|
||||||
|
FILTER_TO_HOSTILE_COMBATLOG_TOOLTIP = "Acciones realizadas a mascotas y criaturas hostiles.",
|
||||||
|
FILTER_TO_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Acciones realizadas a jugadores hostiles.",
|
||||||
|
FILTER_TO_ME_COMBATLOG_TOOLTIP = "Acciones realizadas a ti.",
|
||||||
|
FILTER_TO_NEUTRAL_COMBATLOG_TOOLTIP = "Acciones realizadas a criaturas neutrales.",
|
||||||
|
FILTER_TO_PET_COMBATLOG_TOOLTIP = "Acciones realizadas a tus mascotas, guardianes invocados y jugadores embelesados.",
|
||||||
|
FILTER_TO_UNKNOWN_COMBATLOG_TOOLTIP = "Acciones realizadas a objetivos invisibles.",
|
||||||
|
FORMATTING = "Formato",
|
||||||
|
FULL_TEXT_COMBATLOG_TOOLTIP = "Mostrar las entradas del registro de combate como frases completas.",
|
||||||
|
HARMFUL_AURA_COMBATLOG_TOOLTIP = "Mostrar cuando ganas o pierdes un aura dañina.",
|
||||||
|
HEALS = "Sanaciones",
|
||||||
|
HIGHLIGHTING = "Resaltar:",
|
||||||
|
HIGHLIGHT_ABILITY_COMBATLOG_TOOLTIP = "Resaltar nombres de facultades en mensajes de combate.",
|
||||||
|
HIGHLIGHT_DAMAGE_COMBATLOG_TOOLTIP = "Resaltar cifras de daño en mensajes de combate.",
|
||||||
|
HIGHLIGHT_KILL_COMBATLOG_TOOLTIP = "Resaltar toda la línea cuando matas o lo hace un miembro de tu grupo.",
|
||||||
|
HIGHLIGHT_SCHOOL_COMBATLOG_TOOLTIP = "Resaltar la escuela del hechizo en el mensaje de combate.",
|
||||||
|
HOSTILE = "Hostil",
|
||||||
|
INTERRUPTS = "interrumpe",
|
||||||
|
ITEM_NAMES = "Nombres de objetos",
|
||||||
|
ITEM_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Mostrar nombres de objetos entre corchetes.",
|
||||||
|
KILLS_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un miembro de tu grupo mata.",
|
||||||
|
MELEE = "Cuerpo a cuerpo",
|
||||||
|
MELEE_COMBATLOG_TOOLTIP = "Mostrar golpes cuerpo a cuerpo naturales.",
|
||||||
|
MESSAGE_SOURCES = "Origen mensaje",
|
||||||
|
MISSES = "Fallos",
|
||||||
|
MOVE_FILTER_DOWN = "Mover filtro abajo",
|
||||||
|
MOVE_FILTER_UP = "Mover filtro arriba",
|
||||||
|
OTHER = "Otros",
|
||||||
|
PERIODIC = "Periódico",
|
||||||
|
POWER_GAINS = "Ganancia de poder",
|
||||||
|
POWER_GAINS_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad restaure maná, energía, ira, enfoque, chi, Poder Sagrado u orbes de las Sombras.",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING = "Todo",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING_TOOLTIP = "Mostrar todos los mensajes de combate.",
|
||||||
|
QUICKBUTTON_NAME_KILLS = "Muertes",
|
||||||
|
QUICKBUTTON_NAME_KILLS_TOOLTIP = "Mostrar todas las muertes aliadas y enemigas.",
|
||||||
|
QUICKBUTTON_NAME_ME = "Me afecta",
|
||||||
|
QUICKBUTTON_NAME_ME_TOOLTIP = "Mostrar todo lo que me afecta.",
|
||||||
|
QUICKBUTTON_NAME_SELF = "Yo mismo",
|
||||||
|
QUICKBUTTON_NAME_SELF_TOOLTIP = "Mostrar mensajes de tus acciones y de las que te afectan.",
|
||||||
|
QUICK_BUTTON_COMBATLOG_TOOLTIP = "Coloca un acceso rápido a este filtro en la ventana de chat.",
|
||||||
|
RANGED = "A distancia",
|
||||||
|
RANGED_COMBATLOG_TOOLTIP = "Mostrar ataques con arcos, armas de fuego, armas arrojadizas y varitas.",
|
||||||
|
RANGE_DAMAGE_COMBATLOG_TOOLTIP = "Mostrar los golpes a distancia que infligen daño total o parcial.",
|
||||||
|
RANGE_MISSED_COMBATLOG_TOOLTIP = "Mostrar los golpes a distancia que no logran infligir daño.",
|
||||||
|
RESURRECT = "Resurrecciones",
|
||||||
|
SETTINGS = "Configuración",
|
||||||
|
SHOW_BRACES = "Mostrar corchetes",
|
||||||
|
SHOW_BRACES_COMBATLOG_TOOLTIP = "Mostrar los hipervínculos entre corchetes en los mensajes del registro de combate.",
|
||||||
|
SHOW_QUICK_BUTTON = "Mostrar botón de acceso rápido",
|
||||||
|
SHOW_TIMESTAMP = "Mostrar tiempo",
|
||||||
|
SOURCE = "Fuente:",
|
||||||
|
SPECIAL = "Especial",
|
||||||
|
SPELLS_COMBATLOG_TOOLTIP = "Mostrar mensajes sobre hechizos y facultades especiales.",
|
||||||
|
SPELL_CASTING = "Hechizos lanzados",
|
||||||
|
SPELL_CASTING_COMBATLOG_TOOLTIP = "Mostrar mensajes de los hechizos lanzados.",
|
||||||
|
SPELL_CAST_FAILED_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando no se puede lanzar un hechizo o cuando no se logra lanzar.",
|
||||||
|
SPELL_CAST_START_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando se comienza a lanzar un hechizo.",
|
||||||
|
SPELL_CAST_SUCCESS_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo se lance correctamente.",
|
||||||
|
SPELL_COLOR_BY_SCHOOL_COMBATLOG_TOOLTIP = "Colorear los nombres de hechizos según la escuela.",
|
||||||
|
SPELL_DAMAGE_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad inflige daño.",
|
||||||
|
SPELL_DAMAGE_NUMBER_COMBATLOG_TOOLTIP = "Colorear la cifra del daño de golpes otros que cuerpo a cuerpo.",
|
||||||
|
SPELL_DAMAGE_SCHOOL_COMBATLOG_TOOLTIP = "Colorear el nombre de escuela del daño (p. ej., Sombras).",
|
||||||
|
SPELL_DRAIN_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad reduzca el maná, la energía, la ira o el enfoque.",
|
||||||
|
SPELL_EXTRA_ATTACKS_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad otorgue ataques adicionales.",
|
||||||
|
SPELL_HEAL_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad sana daño.",
|
||||||
|
SPELL_INSTAKILL_COMBATLOG_TOOLTIP = "Mostrar mensajes sobre tipos de hechizos especiales, como los que infligen pérdida de durabilidad o comparten daño con una mascota.",
|
||||||
|
SPELL_INTERRUPT_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad interrumpe otro hechizo.",
|
||||||
|
SPELL_MISSED_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad no logra infligir daño. Incluye cuando el objetivo es inmune o lo esquiva, para, bloquea, desvía, absorbe o evade.",
|
||||||
|
SPELL_NAMES = "Nombres de hechizos",
|
||||||
|
SPELL_NAMES_COMBATLOG_TOOLTIP = "Colorear los nombres de hechizos.",
|
||||||
|
SPELL_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Mostrar nombres de hechizos entre corchetes.",
|
||||||
|
SPELL_PERIODIC_COMBATLOG_TOOLTIP = "Mostrar los hechizos que tienen un efecto gradual.",
|
||||||
|
SPELL_PERIODIC_DAMAGE_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad inflige daño periódico, como Palabra de las Sombras: Dolor o Corrupción.",
|
||||||
|
SPELL_PERIODIC_HEAL_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad sana daño periódicamente, como Renovar o Rejuvenecimiento.",
|
||||||
|
SPELL_PERIODIC_MISSED_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad no logra infligir daño periódico. Incluye cuando el objetivo es inmune, lo absorbe o lo evade.",
|
||||||
|
SPELL_PERIODIC_OTHER_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad inflige cualquier otro efecto periódicamente, como restaurar o drenar maná.",
|
||||||
|
SPELL_RESURRECT_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo o facultad resucite a otro jugador o criatura.",
|
||||||
|
SPELL_SUMMON_COMBATLOG_TOOLTIP = "Mostrar mensajes cuando un hechizo invoque a una criatura o cree un objeto.",
|
||||||
|
START = "Inicio",
|
||||||
|
STRING_SCHOOL_UNKNOWN = "Desconocido",
|
||||||
|
SUCCESS = "Éxito",
|
||||||
|
SUMMONS = "Invocación",
|
||||||
|
SWING_DAMAGE_COMBATLOG_TOOLTIP = "Mostrar golpes cuerpo a cuerpo que infligen daño total o parcial.",
|
||||||
|
SWING_MISSED_COMBATLOG_TOOLTIP = "Mostrar golpes cuerpo a cuerpo que no infligen daño.",
|
||||||
|
TEXT_MODE_A = "A",
|
||||||
|
TEXT_MODE_A_STRING_1 = "%s %s %s %s %s. %s %11$s",
|
||||||
|
TEXT_MODE_A_STRING_2 = "%1$s %3$s %2$s %4$s %5$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_3 = "%1$s %5$s %3$s %4$s %2$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_ACTION = "|Haction:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_ITEM = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_SPELL = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_UNIT = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_DEST_ICON = "|Hicon:%d:dest|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_DEST_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_ITEM = "|Hitem:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_POSSESSIVE = "%s",
|
||||||
|
TEXT_MODE_A_STRING_REMAINING_POINTS = "(%s restante)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_ABSORB = "(%s absorbido)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_BLOCK = "(%s bloqueado)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL = "(Crítico)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL_SPELL = "(Crítico)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRUSHING = "(Aplastamiento)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_FORMAT = "$resultAmount $resultType",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_GLANCING = "(Refilón)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_MULTISTRIKE = "(Multigolpe)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERENERGIZE = "(%s sobreenergizado)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERHEALING = "(%s de exceso de sanación)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERKILLING = "(%s excedente)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_PARRY = "(%d Parado)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_REFLECT = "Reflejado",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_RESIST = "(%s resistido)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_VULNERABILITY = "(%s de daño de vulnerabilidad)",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_ICON = "|Hicon:%s:source|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL_EXTRA = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_TIMESTAMP = "%s> %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_SCHOOL = "%s %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_TYPE = "%s (%s)",
|
||||||
|
TEXT_MODE_A_TIMESTAMP = "%H:%M:%S",
|
||||||
|
TIMESTAMP_COMBATLOG_TOOLTIP = "Mostrar el tiempo en los mensajes del registro de combate.",
|
||||||
|
UNIT_COLORS = "Colores de unidades:",
|
||||||
|
UNIT_NAMES = "Nombres de unidades",
|
||||||
|
UNIT_NAMES_COMBATLOG_TOOLTIP = "Colorear el nombre de unidades.",
|
||||||
|
UNIT_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Mostrar nombres de unidades entre corchetes.",
|
||||||
|
UNIT_YOU = "Tú",
|
||||||
|
UNIT_YOU_DEST = "Tú",
|
||||||
|
UNIT_YOU_DEST_POSSESSIVE = "Tu",
|
||||||
|
UNIT_YOU_SOURCE = "Tú",
|
||||||
|
UNIT_YOU_SOURCE_POSSESSIVE = "Tu",
|
||||||
|
USE_FULL_TEXT_MODE = "Mostrar texto completo",
|
||||||
|
}
|
||||||
Vendored
+677
@@ -0,0 +1,677 @@
|
|||||||
|
-- Classic Era GlobalStrings (FR) that the combat log reads
|
||||||
|
-- and the 1.12 client lacks. Generated; do not edit by hand.
|
||||||
|
pfUI_locale["frFR"]["combatlog"] = {
|
||||||
|
ACTION_DAMAGE_SHIELD = "inflige des dégâts",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT = "%2$s %1$s renvoie %9$s de dégâts |2 %7$s à %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT_NO_SOURCE = "%2$s renvoie %9$s de dégâts |2 %7$s à %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED = "rate",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK = "(Bloque)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT = "%2$s %1$s est bloqué par %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s est bloqué par %4$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT = "(Dévie)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT = "%2$s %1$s est dévié par %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%2$s est dévié par %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE = "(Esquive)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT = "%2$s %1$s est esquivé par %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s est esquivé par %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED = "(Évite)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT = "%2$s %1$s est évité par %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%2$s est évité par %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT = "%2$s %1$s rate %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT_NO_SOURCE = "%2$s rate %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE = "(Insensible)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT = "%2$s %1$s a échoué. %4$s est insensible.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s a échoué. %4$s est insensible.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS = "(Rate)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT = "%2$s %1$s rate %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s rate %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY = "(Pare)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT = "%2$s %1$s est paré par %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s est paré par %4$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST = "(Résiste)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT = "%4$s résiste entièrement à %2$s %1$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s résiste entièrement à %2$s.%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SPLIT = "partage les dégâts",
|
||||||
|
ACTION_DAMAGE_SPLIT_ABSORBED_FULL_TEXT = "Les dégâts |2 %2$s |2 %1$s sont absorbés par %4$s %6$s.",
|
||||||
|
ACTION_DAMAGE_SPLIT_FULL_TEXT = "%2$s %1$s inflige %9$s points de dégâts à %4$s.",
|
||||||
|
ACTION_DAMAGE_SPLIT_POSSESSIVE = "0",
|
||||||
|
ACTION_DAMAGE_SPLIT_RESULT_FULL_TEXT = "%2$s |2 %1$s inflige %9$s points de dégâts à %4$s %6$s.",
|
||||||
|
ACTION_ENCHANT_APPLIED = "enchante",
|
||||||
|
ACTION_ENCHANT_APPLIED_FULL_TEXT = "%1$s lance %2$s sur %5$s %4$s.",
|
||||||
|
ACTION_ENCHANT_APPLIED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENCHANT_REMOVED = "lève l'enchantement",
|
||||||
|
ACTION_ENCHANT_REMOVED_FULL_TEXT = "%2$s s'efface |2 %5$s %4$s.",
|
||||||
|
ACTION_ENCHANT_REMOVED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE = "inflige des dégâts",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING = "Noyade",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_FULL_TEXT = "%4$s se noie et perd %9$s points de vie.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING = "Chute",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_FULL_TEXT = "%4$s tombe et perd %9$s points de vie.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE = "Fatigue",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_FULL_TEXT = "%4$s s'épuise et perd %9$s points de vie.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE = "Feu",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_FULL_TEXT = "%4$s subit %9$s points de dégâts de Feu.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FULL_TEXT = "%4$s perd %9$s points de vie par dégâts de l'environnement.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA = "Lave",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_FULL_TEXT = "%4$s perd %9$s points de vie en nageant dans la lave. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME = "Gelée",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_FULL_TEXT = "%4$s perd %9$s points de vie en nageant dans la gelée. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL = "tue",
|
||||||
|
ACTION_PARTY_KILL_FULL_TEXT = "%1$s a tué %4$s !",
|
||||||
|
ACTION_PARTY_KILL_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS = "assommé",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_FULL_TEXT = "%1$s a assommé %4$s !",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_RANGED = "Tir",
|
||||||
|
ACTION_RANGE_DAMAGE = "touche",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT = "Le tir %1$s touche %4$s pour %5$s.%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT_NO_SOURCE = "Un tir touche %4$s pour %5$s.%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED = "rate",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB = "(Absorbe)",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_FULL_TEXT = "Le tir %1$s est absorbé par %4$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK = "(Bloque)",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_FULL_TEXT = "Le tir %1$s est bloqué par %4$s.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT = "(Dévie)",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_FULL_TEXT = "Le tir %1$s est dévié par %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DODGE = "(Esquive)",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_FULL_TEXT = "Le tir %1$s est esquivé par %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_EVADE = "(Évite)",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_FULL_TEXT = "Le tir %1$s est évité par %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_FULL_TEXT = "Le tir %1$s rate %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE = "(Insensible)",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_FULL_TEXT = "Le tir %1$s a échoué. %4$s est insensible.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE = "(Tir accidentel)",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_FULL_TEXT = "Le tir %1$s a touché %4$s par accident.",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISS = "(Raté)",
|
||||||
|
ACTION_RANGE_MISSED_MISS_FULL_TEXT = "Le tir %1$s rate %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_PARRY = "(Pare)",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_FULL_TEXT = "Le tir %1$s est paré par %4$s.",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_RESIST = "(Résiste)",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_FULL_TEXT = "Le tir %1$s a échoué, %4$s résiste entièrement.%6$s",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED = "applique",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF = "applique",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT = "%4$s gagne %2$s %1$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT_NO_SOURCE = "%4$s gagne %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT = "%4$s gagne %2$s %1$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s gagne %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF = "afflige",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT = "%4$s souffre |2 %2$s %1$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s souffre |2 %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT = "%4$s souffre |2 %2$s %1$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s souffre |2 %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE = "cumule",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF = "cumule",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT = "%4$s gagne %2$s %1$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%4$s gagne %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF = "afflige",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT = "%4$s souffre |2 %2$s %1$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s souffre |2 %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN = "brise",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF = "brise",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT = "%1$s brise %2$s %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT_NO_SOURCE = "%2$s %1$s a été brisé par quelqu'un.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF = "brise",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT = "%1$s brise %2$s %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s %1$s a été brisé par quelqu'un.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF = "brise",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT = "%1$s brise %2$s %4$s avec %5$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT_NO_SOURCE = "%5$s a brisé %2$s %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF = "brise",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT = "%1$s brise %2$s %4$s avec %5$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT_NO_SOURCE = "%5$s brise %2$s %4$s.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH = "rafraîchit",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF = "rafraîchit",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT = "%2$s %1$s est rafraîchi sur %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT_NO_SOURCE = "%2$s est rafraîchi sur %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT = "%2$s %1$s est rafraîchi sur %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s est rafraîchi sur %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF = "rafraîchit",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT = "%2$s %1$s est rafraîchi sur %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s est rafraîchi sur %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT = "%2$s %1$s est rafraîchi sur %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s est rafraîchi sur %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REMOVED = "enlève",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF = "efface",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT = "%2$s %1$s s'efface |2 %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT_NO_SOURCE = "%2$s s'efface |2 %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT = "%2$s %1$s s'efface |2 %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s s'efface |2 %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF = "disparaît",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT = "%2$s %1$s disparaît |2 %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s se dissipe |2 %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT = "%2$s %1$s disparaît |2 %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s se dissipe |2 %4$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE = "réduit",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF = "réduit",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT = "%2$s %1$s (%9$s) se réduit.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%2$s (%9$s) se réduit.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF = "diminue",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT = "%2$s %1$s (%9$s) diminue.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s (%9$s) diminue.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT = "%2$s %1$s est enlevé |2 %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT_NO_SOURCE = "%2$s %1$s est enlevé |2 %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE = "frappe",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT = "%2$s %1$s frappe %4$s pour %5$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s frappe %4$s pour %5$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL = "répare",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT = "%2$s %1$s répare %4$s pour %9$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT_NO_SOURCE = "%2$s répare %4$s pour %9$s.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED = "échoue",
|
||||||
|
ACTION_SPELL_CAST_FAILED_FULL_TEXT = "%2$s %1$s échoue.%6$s",
|
||||||
|
ACTION_SPELL_CAST_FAILED_MASTER = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_START = "commence à lancer",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT = "%1$s commence à lancer %2$s sur %4$s.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_DEST = "%1$s commence à lancer %2$s.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_SOURCE = "Quelqu'un commence à lancer %2$s sur %4$s.",
|
||||||
|
ACTION_SPELL_CAST_START_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_START_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS = "lance",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT = "%1$s lance %2$s sur %4$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_DEST = "%1$s lance %2$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_SOURCE = "Quelque chose lance %2$s sur %4$s.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CREATE = "Crée",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT = "%2$s %1$s crée %4$s.%6$s",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT_NO_SOURCE = "%2$s crée %4$s.%6$s",
|
||||||
|
ACTION_SPELL_CREATE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DAMAGE = "touche",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT = "%2$s %1$s touche %4$s pour %5$s.%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s touche %4$s pour %5$s.%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL = "dissipe",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF = "dissipe",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT = "%5$s %4$s est dissipé par %2$s %1$s.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT_NO_SOURCE = "%5$s %4$s est dissipé par %2$s.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF = "purifie",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT = "%5$s %4$s est purifié par %2$s %1$s.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT_NO_SOURCE = "%5$s %4$s purifié par %2$s.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED = "échec de dissipation",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT = "%2$s %1$s n'arrive pas à dissiper %5$s %4$s.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT_NO_SOURCE = "%2$s n'arrive pas à dissiper %5$s %4$s.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DRAIN = "draine",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT = "%2$s %1$s draine %9$s points |2 %8$s |2 %4$s.",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s draine %9$s %8$s |2 %4$s.",
|
||||||
|
ACTION_SPELL_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE = "perte de durabilité",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL = "perte de durabilité complète",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_FULL_TEXT = "%2$s %1$s endommage %4$s : tous les objets sont abîmés.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_FULL_TEXT = "%2$s %1$s endommage %4$s : %5$s abîmé(e).",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE = "dynamise",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT = "%4$s gagne %9$s points |2 %8$s |2 %2$s %1$s.",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s gagne %9$s points |2 %8$s |2 %2$s.",
|
||||||
|
ACTION_SPELL_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE_RESULT = "%9$s %8$s gagné",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS = "confère des attaques supplémentaires",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT = "%1$s gagne %9$s attaques supplémentaires grâce à %2$s.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT_NO_SOURCE = "%9$s attaques supplémentaires conférées par %2$s.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_HEAL = "soigne",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT = "%2$s %1$s soigne %4$s pour %9$s points.%6$s",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT_NO_SOURCE = "%2$s soigne %4$s pour %9$s points.%6$s",
|
||||||
|
ACTION_SPELL_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL = "tue",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT = "%2$s %1$s tue instantanément %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT_NO_SOURCE = "%2$s tue instantanément %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS = "assommé",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT = "%2$s %1$s assomme %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT_NO_SOURCE = "%2$s assomme %4$s.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INTERRUPT = "interrompt",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT = "%2$s %1$s interrompt %5$s %4$s.",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT_NO_SOURCE = "%2$s interrompt %5$s %4$s.",
|
||||||
|
ACTION_SPELL_INTERRUPT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH = "draine",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT = "%2$s %1$s draine %9$s points |2 %8$s |2 %4$s. %1$s gagne %10$s points |2 %8$s.",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT_NO_SOURCE = "%2$s draine %9$s points |2 %8$s |2 %4$s.",
|
||||||
|
ACTION_SPELL_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH_RESULT = "%10$s points |2 %8$s gagnés",
|
||||||
|
ACTION_SPELL_MISSED = "rate",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB = "Absorbé",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT = "%2$s %1$s est absorbé par %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%2$s est absorbé par %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK = "Bloqué",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT = "%2$s %1$s est bloqué par %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s est bloqué par %4$s.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT = "Dévie",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT = "%2$s %1$s est dévié par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%2$s est dévié par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DODGE = "Esquive",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT = "%2$s %1$s est esquivé par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s est esquivé par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_EVADE = "Évite",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT = "%2$s %1$s est évité par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT_NO_SOURCE = "%2$s est évité par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT = "%2$s %1$s rate %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT_NO_SOURCE = "%2$s rate %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE = "Insensible",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT = "%2$s %1$s a échoué. %4$s est insensible.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s a échoué. %4$s est insensible.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE = "Tir accidentel",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT = "%2$s %1$s a touché %4$s par accident.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT_NO_SOURCE = "%2$s a touché %4$s par accident.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_MISS = "Raté",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT = "%2$s %1$s rate %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s rate %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_PARRY = "Pare",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT = "%2$s %1$s est paré par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s est paré par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT = "renvoyé",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT = "%2$s %1$s est renvoyé par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT_NO_SOURCE = "%2$s est renvoyé par %4$s.",
|
||||||
|
ACTION_SPELL_MISSED_RESIST = "résiste",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT = "%2$s %1$s a échoué, %4$s résiste entièrement.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s a échoué, %4$s résiste entièrement.%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE = "inflige des dégâts",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT = "%4$s reçoit %5$s de dégâts |2 %2$s %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT_NO_SOURCE = "%4$s reçoit %5$s de dégâts |2 %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN = "draine",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT = "%2$s %1$s draine %9$s %8$s |2 %4$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s draine %9$s points |2 %8$s |2 %4$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE = "dynamise",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT = "%4$s gagne %9$s %8$s |2 %2$s %1$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s gagne %9$s points |2 %8$s |2 %2$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_RESULT = "$extraAmount %8$s gagné",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL = "soigne",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT = "%4$s gagne %9$s points de vie |2 %2$s %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT_NO_SOURCE = "%4$s gagne %9$s points de vie |2 %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH = "draine",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT = "%2$s %1$s draine %9$s points |2 %8$s |2 %4$s. %1$s gagne %10$s points |2 %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT_NO_SOURCE = "%2$s draine %9$s points |2 %8$s |2 %4$s. %1$s gagne %10$s points |2 %8$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_RESULT = "(%10$s points |2 %8$s gagnés)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED = "rate",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB = "(%1$s absorbée)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT = "%2$s %1$s est absorbé par %4$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%2$s est absorbé par %4$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK = "(Itération bloquée)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT = "%2$s %1$s a été bloqué par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s a été bloqué par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED = "(Itération déviée)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT = "%2$s %1$s a été dévié par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT_NO_SOURCE = "%2$s a été dévié par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE = "(Itération esquivée)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT = "%2$s %1$s a été esquivé par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s a été esquivé par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED = "(Itération évitée)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT = "%2$s %1$s a été évité par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%2$s a été évité par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT = "%2$s %1$s n'affecte pas %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT_NO_SOURCE = "%2$s n'affecte pas %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE = "(Insensible)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT = "%4$s était insensible à %2$s %1$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%4$s était insensible à %2$s.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS = "(Itération échouée)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT = "%2$s %1$s a raté %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s a raté %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY = "(Itération parée)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT = "%2$s %1$s a été paré par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s a été paré par %4$s pour un temps.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST = "(Itération résistée)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT = "%2$s %1$s n'affecte pas %4$s. %4$s résiste.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s n'affecte pas %4$s. %4$s résiste.%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_RESURRECT = "Ressuscite",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT = "%2$s %1$s ressuscite %4$s.%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT_NO_SOURCE = "%2$s ressuscite %4$s.%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN = "vole",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF = "vole",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT = "%2$s %1$s vole %5$s %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT_NO_SOURCE = "%2$s vole %5$s %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF__POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF = "vole",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT = "%2$s %1$s transfère $extraSpell %4$s à %1$s.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s transfère $extraSpell %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT = "%2$s %1$s vole %5$s %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT_NO_SOURCE = "%2$s vole %5$s %4$s.",
|
||||||
|
ACTION_SPELL_STOLEN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_SUMMON = "invoque",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT = "%2$s %1$s invoque %4$s.%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT_NO_SOURCE = "%2$s invoque %4$s.%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING = "Coup",
|
||||||
|
ACTION_SWING_DAMAGE = "touche",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT = "Le coup %1$s touche %4$s pour %5$s.%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT_NO_SOURCE = "Un coup touche %4$s pour %5$s.%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED = "rate",
|
||||||
|
ACTION_SWING_MISSED_ABSORB = "(Absorbe)",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_FULL_TEXT = "L'attaque %1$s est absorbée par %4$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_BLOCK = "(Bloque)",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_FULL_TEXT = "L'attaque %1$s est bloquée par %4$s.%6$s",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT = "(Dévie)",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_FULL_TEXT = "L'attaque %1$s est déviée par %4$s.",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DODGE = "(Esquive)",
|
||||||
|
ACTION_SWING_MISSED_DODGE_FULL_TEXT = "L'attaque %1$s est esquivée par %4$s.",
|
||||||
|
ACTION_SWING_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_EVADE = "(Évite)",
|
||||||
|
ACTION_SWING_MISSED_EVADE_FULL_TEXT = "L'attaque %1$s est évitée par %4$s.",
|
||||||
|
ACTION_SWING_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_FULL_TEXT = "L'attaque %1$s rate %4$s.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE = "(Insensible)",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_FULL_TEXT = "L'attaque %1$s a échoué, %4$s est insensible.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE = "(Tir accidentel)",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_FULL_TEXT = "L'attaque %1$s a touché %4$s par accident.",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISS = "(Raté)",
|
||||||
|
ACTION_SWING_MISSED_MISS_FULL_TEXT = "L'attaque %1$s rate %4$s.",
|
||||||
|
ACTION_SWING_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_PARRY = "(Parade)",
|
||||||
|
ACTION_SWING_MISSED_PARRY_FULL_TEXT = "L'attaque %1$s est parée par %4$s.",
|
||||||
|
ACTION_SWING_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_RESIST = "(Résistance)",
|
||||||
|
ACTION_SWING_MISSED_RESIST_FULL_TEXT = "L'attaque %1$s a échoué, %4$s résiste entièrement.%6$s",
|
||||||
|
ACTION_SWING_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_UNIT_BECCOMES_UNCONSCIOUS = "s'évanouit",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_FULL_TEXT = "%4$s s'évanouit.",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DESTROYED = "détruit",
|
||||||
|
ACTION_UNIT_DESTROYED_FULL_TEXT = "%4$s a été détruit.",
|
||||||
|
ACTION_UNIT_DESTROYED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DIED = "meurt",
|
||||||
|
ACTION_UNIT_DIED_FULL_TEXT = "%4$s meurt.",
|
||||||
|
ACTION_UNIT_DIED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DISSIPATES = "se dissipe",
|
||||||
|
ACTION_UNIT_DISSIPATES_FULL_TEXT = "%4$s se dissipe.",
|
||||||
|
ACTION_UNIT_DISSIPATES_POSSESSIVE = "0",
|
||||||
|
ADD = "Ajouter",
|
||||||
|
ADDITIONAL_FILTERS = "Filtres supplémentaires",
|
||||||
|
ADD_FILTER = "Aj. filtre",
|
||||||
|
AURAS = "Auras",
|
||||||
|
AURAS_COMBATLOG_TOOLTIP = "Montre les messages liés aux états bénéfiques ou néfastes.",
|
||||||
|
BENEFICIAL = "Bénéfique",
|
||||||
|
BENEFICIAL_AURA_COMBATLOG_TOOLTIP = "Montre quand vous gagnez ou perdez une aura bénéfique.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_BOTH = "Afficher tout ce qui concerne %s.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_EVERYTHING = "Afficher tout",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_INCOMING = "Qu'est-il arrivé à %s ?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING = "Qu'a fait %s ?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING_ME = "Qu'est-ce que %s vous a fait ?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_RESET = "Réinitialiser",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SAVE = "Enregistrer comme nouveau filtre",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_HIDE = "Cacher les messages comme celui-ci.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_LINK = "Lier %s dans la discussion.",
|
||||||
|
BY_SOURCE = "Par source",
|
||||||
|
BY_SOURCE_COMBATLOG_TOOLTIP = "Colorer en fonction du lanceur.",
|
||||||
|
BY_TARGET = "Par cible",
|
||||||
|
BY_TARGET_COMBATLOG_TOOLTIP = "Colorer en fonction de la cible.",
|
||||||
|
COLORIZE = "Coloriser :",
|
||||||
|
COLORS = "Couleurs",
|
||||||
|
COLOR_BY_SCHOOL = "Couleur par type",
|
||||||
|
COMBATLOG_DEFAULTS = "Journal par défaut",
|
||||||
|
COMBATLOG_FILTER_STRING_CUSTOM_UNIT = "Unité personnalisée",
|
||||||
|
COMBATLOG_FILTER_STRING_FRIENDLY_UNITS = "Amis",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_PLAYERS = "Joueurs ennemis",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_UNITS = "Ennemis",
|
||||||
|
COMBATLOG_FILTER_STRING_ME = "Moi",
|
||||||
|
COMBATLOG_FILTER_STRING_MY_PET = "Familier",
|
||||||
|
COMBATLOG_FILTER_STRING_NEUTRAL_UNITS = "Neutre",
|
||||||
|
COMBATLOG_FILTER_STRING_UNKNOWN_UNITS = "Inconnu",
|
||||||
|
COMBATLOG_HIGHLIGHT_ABILITY = "Technique",
|
||||||
|
COMBATLOG_HIGHLIGHT_DAMAGE = "Dégâts",
|
||||||
|
COMBATLOG_HIGHLIGHT_KILL = "Mort",
|
||||||
|
COMBATLOG_HIGHLIGHT_SCHOOL = "Type",
|
||||||
|
COMBATLOG_UNKNOWN_UNIT = "Quelque chose",
|
||||||
|
COMBAT_FACTION_CHANGE = "Réputation",
|
||||||
|
COMBAT_HONOR_GAIN = "Honneur",
|
||||||
|
COMBAT_LOG_UNIT_YOU_ENABLED = "1",
|
||||||
|
COMBAT_MISC_INFO = "Infos div.",
|
||||||
|
COMBAT_XP_GAIN = "Expérience",
|
||||||
|
CONFIRM_COMBAT_FILTER_DEFAULTS = "Voulez-vous revenir aux valeurs par défaut des filtres ?",
|
||||||
|
CONFIRM_COMBAT_FILTER_DELETE = "Voulez-vous vraiment effacer ce filtre ?",
|
||||||
|
COPY_FILTER = "Copier filtre",
|
||||||
|
DAMAGE_NUMBER = "Valeurs de dégâts",
|
||||||
|
DAMAGE_SCHOOL_TEXT = "Type de dégâts",
|
||||||
|
DAMAGE_SHIELD = "Boucliers de dégâts",
|
||||||
|
DAMAGE_SHIELD_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique inflige des dégâts en réaction à une attaque de mêlée, comme Epines.",
|
||||||
|
DEATHS_COMBATLOG_TOOLTIP = "Montre un message quand quelqu'un meurt.",
|
||||||
|
DEFAULT_COMBATLOG_FILTER_NAME = "Filtre %d",
|
||||||
|
DISPELS = "Dissipations",
|
||||||
|
DISPEL_AURA_COMBATLOG_TOOLTIP = "Montre quand une aura est retirée, détruite ou volée.",
|
||||||
|
DONE_BY = "Fait par :",
|
||||||
|
DONE_TO = "Fait à :",
|
||||||
|
DRAINS = "Drains",
|
||||||
|
ENTER_FILTER_NAME = "Indiquez le nom du filtre :",
|
||||||
|
ENTIRE_LINE = "Ligne entière",
|
||||||
|
ENTIRE_LINE_COMBATLOG_TOOLTIP = "Colorer toute la ligne selon la sélection ci-dessous.",
|
||||||
|
ENVIRONMENTAL_DAMAGE = "Dégâts de l'environnement",
|
||||||
|
ENVIRONMENTAL_DAMAGE_COMBATLOG_TOOLTIP = "Montre un message quand quelqu'un subit des dégâts dus à une chute, une noyade ou le fait de nager dans la lave.",
|
||||||
|
EXAMPLE_SPELL_FIREBALL = "Boule de feu",
|
||||||
|
EXAMPLE_SPELL_FROSTBOLT = "Eclair de givre",
|
||||||
|
EXAMPLE_TARGET_MONSTER = "Monstre",
|
||||||
|
EXAMPLE_TEXT = "Texte d'exemple",
|
||||||
|
EXTRA_ATTACKS = "Attaques suppl.",
|
||||||
|
FAILURES = "Échecs",
|
||||||
|
FILTER_BY_ENEMIES_COMBATLOG_TOOLTIP = "Les actions effectuées par les créatures et familiers hostiles.",
|
||||||
|
FILTER_BY_FRIENDS_COMBATLOG_TOOLTIP = "Les actions effectuées par les personnages, familiers et créatures amicaux.",
|
||||||
|
FILTER_BY_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Les actions effectuées par des joueurs hostiles.",
|
||||||
|
FILTER_BY_ME_COMBATLOG_TOOLTIP = "Les actions effectuées par vous-même, vos pièges et vos sorts.",
|
||||||
|
FILTER_BY_NEUTRAL_COMBATLOG_TOOLTIP = "Les actions effectuées par les créatures neutres.",
|
||||||
|
FILTER_BY_PET_COMBATLOG_TOOLTIP = "Les actions effectuées par vos familiers, gardiens invoqués ou personnages charmés.",
|
||||||
|
FILTER_BY_UNKNOWN_COMBATLOG_TOOLTIP = "Les actions effectuées par des sources indéfinies, telles que les chutes, l'acide ou la lave.",
|
||||||
|
FILTER_NAME = "Nom du filtre :",
|
||||||
|
FILTER_TO_FRIENDS_COMBATLOG_TOOLTIP = "Les actions effectuées sur les personnages, familiers et créatures amicaux.",
|
||||||
|
FILTER_TO_HOSTILE_COMBATLOG_TOOLTIP = "Les actions effectuées sur les familiers et créatures hostiles.",
|
||||||
|
FILTER_TO_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Les actions effectuées contre des joueurs hostiles.",
|
||||||
|
FILTER_TO_ME_COMBATLOG_TOOLTIP = "Les actions effectuées sur vous.",
|
||||||
|
FILTER_TO_NEUTRAL_COMBATLOG_TOOLTIP = "Les actions effectuées sur les créatures neutres.",
|
||||||
|
FILTER_TO_PET_COMBATLOG_TOOLTIP = "Les actions effectuées sur vos familiers, gardiens invoqués ou personnages charmés.",
|
||||||
|
FILTER_TO_UNKNOWN_COMBATLOG_TOOLTIP = "Les actions effectuées sur des cibles invisibles.",
|
||||||
|
FORMATTING = "Mise en forme",
|
||||||
|
FULL_TEXT_COMBATLOG_TOOLTIP = "Montre les évènements du journal de combat sous forme de phrases.",
|
||||||
|
HARMFUL_AURA_COMBATLOG_TOOLTIP = "Montre quand vous gagnez ou perdez une aura néfaste.",
|
||||||
|
HEALS = "Soins",
|
||||||
|
HIGHLIGHTING = "Surlignage :",
|
||||||
|
HIGHLIGHT_ABILITY_COMBATLOG_TOOLTIP = "Surligne les noms des techniques dans les messages de combat.",
|
||||||
|
HIGHLIGHT_DAMAGE_COMBATLOG_TOOLTIP = "Surligne les montants de dégâts dans les messages de combat.",
|
||||||
|
HIGHLIGHT_KILL_COMBATLOG_TOOLTIP = "Surligne toute la ligne lorsque vous-même ou un membre de votre groupe tuez un adversaire.",
|
||||||
|
HIGHLIGHT_SCHOOL_COMBATLOG_TOOLTIP = "Surligne les types de sort dans les messages de combat.",
|
||||||
|
HOSTILE = "Hostile",
|
||||||
|
INTERRUPTS = "Interruptions",
|
||||||
|
ITEM_NAMES = "Noms des objets",
|
||||||
|
ITEM_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Mettre des liens autour des noms d'objets.",
|
||||||
|
KILLS_COMBATLOG_TOOLTIP = "Montre un message quand un membre de votre groupe tue quelqu'un.",
|
||||||
|
MELEE = "Mêlée",
|
||||||
|
MELEE_COMBATLOG_TOOLTIP = "Montre les attaques de mêlée naturelles.",
|
||||||
|
MESSAGE_SOURCES = "Sources",
|
||||||
|
MISSES = "Ratés",
|
||||||
|
MOVE_FILTER_DOWN = "Descendre le filtre",
|
||||||
|
MOVE_FILTER_UP = "Remonter le filtre",
|
||||||
|
OTHER = "Autre",
|
||||||
|
PERIODIC = "Périodique",
|
||||||
|
POWER_GAINS = "Gains de puissance",
|
||||||
|
POWER_GAINS_COMBATLOG_TOOLTIP = "Affiche un message quand un sort ou une technique rend des points de mana, d’énergie, de rage, de focalisation, de chi ou de puissance sacrée ou des orbes d’ombre.",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING = "Tout",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING_TOOLTIP = "Montrer tous les messages de combat.",
|
||||||
|
QUICKBUTTON_NAME_KILLS = "Tués",
|
||||||
|
QUICKBUTTON_NAME_KILLS_TOOLTIP = "Montrer tous les tués.",
|
||||||
|
QUICKBUTTON_NAME_ME = "Qu'est-ce qui m'est arrivé ?",
|
||||||
|
QUICKBUTTON_NAME_ME_TOOLTIP = "Montrer tout ce qu'on m'a fait.",
|
||||||
|
QUICKBUTTON_NAME_SELF = "Soi-même",
|
||||||
|
QUICKBUTTON_NAME_SELF_TOOLTIP = "Montre des messages pour les actions effectuées par vous et sur vous.",
|
||||||
|
QUICK_BUTTON_COMBATLOG_TOOLTIP = "Pose un raccourci vers ce filtre dans la fenêtre de discussion.",
|
||||||
|
RANGED = "Distance",
|
||||||
|
RANGED_COMBATLOG_TOOLTIP = "Montre les attaques des arcs, arbalètes, fusils, armes de jet et baguettes.",
|
||||||
|
RANGE_DAMAGE_COMBATLOG_TOOLTIP = "Montre les attaques à distance qui infligent des dégâts complets ou partiels.",
|
||||||
|
RANGE_MISSED_COMBATLOG_TOOLTIP = "Montre les attaques à distance qui n'infligent pas de dégâts.",
|
||||||
|
RESURRECT = "Résurrections",
|
||||||
|
SETTINGS = "Réglages",
|
||||||
|
SHOW_BRACES = "Afficher les crochets",
|
||||||
|
SHOW_BRACES_COMBATLOG_TOOLTIP = "Afficher des crochets autour des liens dans les messages du journal de combat.",
|
||||||
|
SHOW_QUICK_BUTTON = "Montrer accès rapide",
|
||||||
|
SHOW_TIMESTAMP = "Afficher l'heure",
|
||||||
|
SOURCE = "Source :",
|
||||||
|
SPECIAL = "Spécial",
|
||||||
|
SPELLS_COMBATLOG_TOOLTIP = "Montre les messages liés aux sorts et aux techniques spéciales.",
|
||||||
|
SPELL_CASTING = "Incantations",
|
||||||
|
SPELL_CASTING_COMBATLOG_TOOLTIP = "Montre les messages concernant l'incantation des sorts.",
|
||||||
|
SPELL_CAST_FAILED_COMBATLOG_TOOLTIP = "Montre les messages indiquant qu'un sort ne peut être lancé ou que l'incantation a échoué.",
|
||||||
|
SPELL_CAST_START_COMBATLOG_TOOLTIP = "Montre les messages indiquant le début de l'incantation d'un sort.",
|
||||||
|
SPELL_CAST_SUCCESS_COMBATLOG_TOOLTIP = "Montre les messages indiquant la réussite de l'incantation d'un sort.",
|
||||||
|
SPELL_COLOR_BY_SCHOOL_COMBATLOG_TOOLTIP = "Colorer les noms des sorts par type.",
|
||||||
|
SPELL_DAMAGE_COMBATLOG_TOOLTIP = "Montre quand un sort ou une technique inflige des dégâts.",
|
||||||
|
SPELL_DAMAGE_NUMBER_COMBATLOG_TOOLTIP = "Colorer les valeurs de dégâts pour les attaques hors-mêlée.",
|
||||||
|
SPELL_DAMAGE_SCHOOL_COMBATLOG_TOOLTIP = "Colorer les noms des types de dégâts (par ex. Ombre).",
|
||||||
|
SPELL_DRAIN_COMBATLOG_TOOLTIP = "Affiche un message quand un sort ou une technique enlève des points de mana, d’énergie, de rage ou de focalisation.",
|
||||||
|
SPELL_EXTRA_ATTACKS_COMBATLOG_TOOLTIP = "Affiche un message quand un sort ou une technique octroie des attaques supplémentaires.",
|
||||||
|
SPELL_HEAL_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique soigne des dégâts.",
|
||||||
|
SPELL_INSTAKILL_COMBATLOG_TOOLTIP = "Montre les messages des sorts d'une catégorie spéciale, comme ceux qui infligent une perte de durabilité ou qui partagent les dégâts avec un familier.",
|
||||||
|
SPELL_INTERRUPT_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique interrompt un autre sort.",
|
||||||
|
SPELL_MISSED_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique ne parvient pas à infliger des dégâts. Que ce soit dû à une esquive, une parade, un blocage, une déviation, une immunité, une absorption ou un évitement.",
|
||||||
|
SPELL_NAMES = "Noms des sorts",
|
||||||
|
SPELL_NAMES_COMBATLOG_TOOLTIP = "Colorer les noms de sorts.",
|
||||||
|
SPELL_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Mettre des liens autour des noms de sorts.",
|
||||||
|
SPELL_PERIODIC_COMBATLOG_TOOLTIP = "Montre les sorts qui ont un effet incrémentiel.",
|
||||||
|
SPELL_PERIODIC_DAMAGE_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique inflige des dégâts de façon périodique, comme Mot de l'ombre : Douleur ou Corruption.",
|
||||||
|
SPELL_PERIODIC_HEAL_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique soigne de façon périodique, comme Rénovation ou Récupération.",
|
||||||
|
SPELL_PERIODIC_MISSED_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique ne parvient pas à infliger des dégâts périodiques. Cela peut être dû à une immunité, une absorption ou un évitement.",
|
||||||
|
SPELL_PERIODIC_OTHER_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique déclenche un autre type d'effet de façon périodique, comme de rendre ou de prendre des points de mana.",
|
||||||
|
SPELL_RESURRECT_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique ressuscite une créature ou un autre personnage.",
|
||||||
|
SPELL_SUMMON_COMBATLOG_TOOLTIP = "Montre un message quand un sort ou une technique invoque une créature ou crée un objet.",
|
||||||
|
START = "Démarrage",
|
||||||
|
STRING_SCHOOL_UNKNOWN = "(Inconnu)",
|
||||||
|
SUCCESS = "Réussites",
|
||||||
|
SUMMONS = "Invocations",
|
||||||
|
SWING_DAMAGE_COMBATLOG_TOOLTIP = "Montre les attaques de mêlée qui infligent des dégâts complets ou partiels.",
|
||||||
|
SWING_MISSED_COMBATLOG_TOOLTIP = "Montre les attaques de mêlée qui n'infligent pas de dégâts.",
|
||||||
|
TEXT_MODE_A = "A",
|
||||||
|
TEXT_MODE_A_STRING_1 = "%s %s %s %s %s. %s %11$s",
|
||||||
|
TEXT_MODE_A_STRING_2 = "%1$s %3$s %2$s %4$s %5$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_3 = "%1$s %5$s %3$s %4$s %2$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_ACTION = "|Haction:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_ITEM = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_SPELL = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_UNIT = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_DEST_ICON = "|Hicon:%d:dest|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_DEST_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_ITEM = "|Hitem:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_POSSESSIVE = "|2 %s",
|
||||||
|
TEXT_MODE_A_STRING_REMAINING_POINTS = "(%s restant)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_ABSORB = "(%s absorbé)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_BLOCK = "(%s bloqué)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL = "(Critique)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL_SPELL = "(Critique)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRUSHING = "(Écrasement)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_FORMAT = "$resultType : $resultAmount",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_GLANCING = "(Éraflure)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_MULTISTRIKE = "(Frappe multiple)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERENERGIZE = "(Excès d'énergie %s)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERHEALING = "(Excès de soins %s)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERKILLING = "(Excès de dégâts %s)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_PARRY = "(%d paré)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_REFLECT = "Renvoyé",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_RESIST = "(%s résisté)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_VULNERABILITY = "(%s de dégâts de vulnérabilité)",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_ICON = "|Hicon:%s:source|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL_EXTRA = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_TIMESTAMP = "%s> %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_SCHOOL = "%s %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_TYPE = "%s (%s)",
|
||||||
|
TEXT_MODE_A_TIMESTAMP = "%H:%M:%S",
|
||||||
|
TIMESTAMP_COMBATLOG_TOOLTIP = "Afficher l'heure des messages du journal de combat.",
|
||||||
|
UNIT_COLORS = "Couleurs d'unités :",
|
||||||
|
UNIT_NAMES = "Noms des unités",
|
||||||
|
UNIT_NAMES_COMBATLOG_TOOLTIP = "Colorer les noms des unités.",
|
||||||
|
UNIT_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Mettre des liens autour des noms d'unités.",
|
||||||
|
UNIT_YOU = "Vous",
|
||||||
|
UNIT_YOU_DEST = "Vous",
|
||||||
|
UNIT_YOU_DEST_POSSESSIVE = "votre personnage",
|
||||||
|
UNIT_YOU_SOURCE = "Vous",
|
||||||
|
UNIT_YOU_SOURCE_POSSESSIVE = "votre",
|
||||||
|
USE_FULL_TEXT_MODE = "Mode prolixe",
|
||||||
|
}
|
||||||
Vendored
+677
@@ -0,0 +1,677 @@
|
|||||||
|
-- Classic Era GlobalStrings (KR) that the combat log reads
|
||||||
|
-- and the 1.12 client lacks. Generated; do not edit by hand.
|
||||||
|
pfUI_locale["koKR"]["combatlog"] = {
|
||||||
|
ACTION_DAMAGE_SHIELD = "피해",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; 공격했지만 %4$s|1이;가; %9$s의 %7$s 피해를 반사했습니다. %6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; 공격했지만 %4$s|1이;가; %9$s의 %7$s 피해를 반사했습니다. %6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED = "적중하지 않음",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK = "방어함",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s|1을;를; 방어했습니다. %6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1을;를; 방어했습니다. %6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT = "(튕김)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 튕겨냈습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격했지만 튕겨냈습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE = "피함",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s|1을;를; 교묘히 피했습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1을;를; 교묘히 피했습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED = "(벗어남)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 벗어났습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격했지만 벗어났습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE = "면역",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT = "%1$s의 %2$s|1이;가; 실패했습니다. %4$s|1은;는; 면역입니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 실패했습니다. %4$s|1은;는; 면역입니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS = "(빗나감)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY = "막음",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 막았습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격했지만 막았습니다.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST = "저항함",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s|1을;를; 모두 저항했습니다. %6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1을;를; 모두 저항했습니다. %6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SPLIT = "피해 분배",
|
||||||
|
ACTION_DAMAGE_SPLIT_ABSORBED_FULL_TEXT = "%1$s의 %2$s|1으로;로; 인한 피해가 %4$s에게 흡수되었습니다. %6$s",
|
||||||
|
ACTION_DAMAGE_SPLIT_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s에게 %9$s의 피해를 입혔습니다.",
|
||||||
|
ACTION_DAMAGE_SPLIT_POSSESSIVE = "0",
|
||||||
|
ACTION_DAMAGE_SPLIT_RESULT_FULL_TEXT = "%1$s의 %2$s|1이;가; %4$s에게 %9$s의 피해를 입혔습니다. %6$s",
|
||||||
|
ACTION_ENCHANT_APPLIED = "마법부여 사용",
|
||||||
|
ACTION_ENCHANT_APPLIED_FULL_TEXT = "%1$s|1이;가; %4$s의 %5$s에 %2$s|1을;를; 사용합니다.",
|
||||||
|
ACTION_ENCHANT_APPLIED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENCHANT_REMOVED = "마법부여 사라짐",
|
||||||
|
ACTION_ENCHANT_REMOVED_FULL_TEXT = "%4$s의 %5$s에서 %2$s 효과가 사라집니다.",
|
||||||
|
ACTION_ENCHANT_REMOVED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE = "피해",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING = "호흡 불가",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_FULL_TEXT = "%4$s|1이;가; 숨을 쉴 수 없어 %9$s의 피해를 입었습니다.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING = "낙하 충격",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_FULL_TEXT = "%4$s|1이;가; 낙하할 때의 충격으로 %9$s의 피해를 입었습니다.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE = "피로",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_FULL_TEXT = "%4$s|1이;가; 피로로 %9$s의 피해를 입었습니다.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE = "화염",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_FULL_TEXT = "%4$s|1이;가; %9$s의 화염 피해를 입었습니다.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FULL_TEXT = "%4$s|1이;가; 환경에 의해 %9$s의 피해를 입었습니다.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA = "용암",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_FULL_TEXT = "%4$s|1이;가; 용암의 열기로 인해 %9$s의 피해를 입었습니다. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME = "독성",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_FULL_TEXT = "%4$s|1이;가; 독성으로 인해 %9$s의 피해를 입었습니다. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL = "죽임",
|
||||||
|
ACTION_PARTY_KILL_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 죽였습니다.",
|
||||||
|
ACTION_PARTY_KILL_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS = "기절",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 기절시켰습니다!",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_RANGED = "원거리 공격",
|
||||||
|
ACTION_RANGE_DAMAGE = "피해",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT = "%1$s|1이;가; 원거리 공격으로 %4$s에게 %5$s의 피해를 입혔습니다. %6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT_NO_SOURCE = "원거리 공격으로 %4$s|1이;가; %5$s의 피해를 입었습니다. %6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED = "적중하지 않음",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB = "흡수됨",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 원거리로 공격했지만 피해가 흡수되었습니다. %6$s",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK = "방어함",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_FULL_TEXT = "%4$s|1이;가; %1$s의 원거리 공격을 방어했습니다. %6$s",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT = "(튕김)",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 원거리로 공격했지만 튕겨냈습니다.",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DODGE = "피함",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_FULL_TEXT = "%1$s|1이;가; 원거리로 공격했지만 %4$s|1이;가; 교묘히 피했습니다.",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_EVADE = "(벗어남)",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 원거리로 공격했지만 빗나갔습니다.",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 원거리로 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE = "면역",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_FULL_TEXT = "%1$s의 원거리 공격이 실패했습니다. %4$s|1은;는; 면역입니다.",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE = "(공격 실패)",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 원거리로 공격하려 했지만 실패했습니다.",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISS = "(빗나감)",
|
||||||
|
ACTION_RANGE_MISSED_MISS_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 원거리로 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_RANGE_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_PARRY = "막음",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_FULL_TEXT = "%1$s|1이;가; 원거리로 공격했지만 %4$s|1이;가; 막았습니다.",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_RESIST = "저항함",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_FULL_TEXT = "%4$s|1이;가; %1$s의 원거리 공격을 모두 저항했습니다. %6$s",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED = "효과 적용",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF = "사용",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s 효과를 얻었습니다.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s 효과를 얻었습니다.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s 효과를 얻었습니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s 효과를 얻었습니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF = "걸림",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s에 걸렸습니다.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s에 걸렸습니다.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s에 걸렸습니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s에 걸렸습니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE = "겹쳐짐",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF = "겹쳐짐",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s 효과를 얻었습니다. (%9$s)",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s 효과를 얻었습니다. (%9$s)",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF = "걸림",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s에 걸렸습니다. (%9$s)",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s에 걸렸습니다. (%9$s)",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN = "파괴",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF = "파괴",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT = "%1$s|1이;가; %4$s의 %2$s|1을;를; 해제했습니다.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT_NO_SOURCE = "%1$s의 %2$s|1이;가; 해제되었습니다.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF = "파괴",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT = "%1$s|1이;가; %4$s의 %2$s|1을;를; 해제했습니다.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%1$s의 %2$s|1이;가; 해제되었습니다.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF = "파괴",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT = "%1$s|1이;가; %5$s|1으로;로; %4$s의 %2$s|1을;를; 해제했습니다.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT_NO_SOURCE = "%5$s|1으로;로; %4$s의 %2$s|1이;가; 해제되었습니다.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF = "파괴",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT = "%1$s|1이;가; %5$s|1으로;로; %4$s의 %2$s|1을;를; 해제했습니다.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT_NO_SOURCE = "%5$s|1으로;로; %4$s의 %2$s|1이;가; 해제되었습니다.",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH = "지속시간 초기화",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF = "지속시간 초기화",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT = "%1$s|1이;가; %4$s의 %2$s 효과를 초기화합니다.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT_NO_SOURCE = "%4$s의 %2$s 주문 지속시간이 초기화됩니다.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT = "%1$s|1이;가; %4$s의 %2$s 효과를 초기화합니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s의 %2$s 주문 지속시간이 초기화됩니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF = "지속시간 초기화",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT = "%1$s|1이;가; %4$s의 %2$s 효과를 초기화합니다.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s의 %2$s 주문 지속시간이 초기화됩니다.",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT = "%1$s|1이;가; %4$s의 %2$s 효과를 초기화합니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s의 %2$s 주문 지속시간이 초기화됩니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REMOVED = "제거",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF = "효과 사라짐",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT = "%4$s에게서 %1$s의 %2$s 효과가 사라졌습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT_NO_SOURCE = "%4$s에게서 %2$s 효과가 사라졌습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT = "%4$s에게서 %1$s의 %2$s 효과가 사라졌습니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s에게서 %2$s 효과가 사라졌습니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF = "사라짐",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT = "%1$s의 %2$s|1이;가; %4$s에게서 사라졌습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; %4$s에게서 사라졌습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT = "%1$s의 %2$s|1이;가; %4$s에게서 사라졌습니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; %4$s에게서 사라졌습니다. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE = "감소",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF = "감소",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT = "%1$s의 %2$s(%9$s) 효과가 감소했습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%2$s(%9$s) 효과가 감소했습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF = "감소",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT = "%2$s(%9$s)|1이;가; %1$s에게서 사라졌습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s(%9$s)|1이;가; 사라졌습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT = "%1$s의 %2$s|1이;가; %4$s에게서 제거되었습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT_NO_SOURCE = "%1$s의 %2$s|1이;가; %4$s에게서 제거되었습니다.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE = "손상",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격하여 %5$s의 피해를 입혔습니다. %6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격하여 %5$s의 피해를 입혔습니다. %6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL = "수리",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT = "%1$s의 %2$s|1으로;로; %4$s의 체력이 %9$s만큼 복구되었습니다. %6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 체력이 %9$s만큼 복구되었습니다. %6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED = "사용 실패",
|
||||||
|
ACTION_SPELL_CAST_FAILED_FULL_TEXT = "%1$s|1이;가; %2$s 시전에 실패했습니다. %6$s",
|
||||||
|
ACTION_SPELL_CAST_FAILED_MASTER = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_START = "시전 시작",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT = "%1$s|1이;가; %4$s에게 %2$s 시전을 시작합니다.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_DEST = "%1$s|1이;가; %2$s 시전을 시작합니다.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_SOURCE = "무엇인가가 %4$s에게 %2$s 시전을 시작합니다.",
|
||||||
|
ACTION_SPELL_CAST_START_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_START_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS = "시전",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT = "%1$s|1이;가; %4$s에게 %2$s|1을;를; 시전합니다.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_DEST = "%1$s|1이;가; %2$s|1을;를; 시전합니다.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_SOURCE = "무엇인가가 %4$s에게 %2$s 시전을 시작합니다.",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CREATE = "만듦",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 만들었습니다. %6$s",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 만들었습니다. %6$s",
|
||||||
|
ACTION_SPELL_CREATE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DAMAGE = "피해",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s에게 %5$s의 피해를 입혔습니다. %6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1이;가; %5$s의 피해를 입었습니다. %6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL = "무효화",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF = "무효화",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT = "%4$s의 %5$s|1이;가; %1$s의 %2$s|1으로;로; 무효화되었습니다.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT_NO_SOURCE = "%4$s의 %5$s|1이;가; %2$s|1으로;로; 무효화되었습니다.",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF = "해제",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT = "%4$s의 %5$s|1이;가; %1$s의 %2$s|1으로;로; 해제되었습니다.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s의 %5$s|1이;가; %2$s|1으로;로; 해제되었습니다.",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED = "무효화 실패",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s에게 걸려 있는 %5$s|1을;를; 무효화하지 못했습니다.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s에게 걸려 있는 %5$s|1을;를; 무효화하지 못했습니다.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DRAIN = "소진",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s의 %8$s|1을;를; %9$s만큼 소진시켰습니다.",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; %4$s의 %8$s|1을;를; %9$s만큼 소진시켰습니다.",
|
||||||
|
ACTION_SPELL_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE = "내구도 감소",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL = "전체 내구도 감소",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s에게 피해를 입혔습니다: 모든 아이템의 내구도가 감소했습니다.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s에게 피해를 입혔습니다: %5$s|1이;가; 손상되었습니다.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE = "얻음",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s|1으로;로; %9$s의 %8$s|1을;를; 얻었습니다.",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1으로;로; %9$s의 %8$s|1을;를; 얻었습니다.",
|
||||||
|
ACTION_SPELL_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE_RESULT = "%9$s %8$s 얻음",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS = "추가 공격",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %9$s회의 추가 공격 기회를 얻었습니다.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %9$s회의 추가 공격 기회를 얻었습니다.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_HEAL = "생명력 회복",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT = "%1$s의 %2$s|1으로;로; %4$s의 생명력이 %9$s만큼 회복되었습니다. %6$s",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 생명력이 %9$s만큼 회복되었습니다. %6$s",
|
||||||
|
ACTION_SPELL_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL = "죽임",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; 즉시 %4$s|1을;를; 죽였습니다.",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; 즉시 %4$s|1을;를; 죽였습니다.",
|
||||||
|
ACTION_SPELL_INSTAKILL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS = "기절",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT = "%1$s %2$s|1이;가; %4$s|1을;를; 기절시킵니다.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; %4$s|1을;를; 기절시킵니다.",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INTERRUPT = "차단",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s의 %5$s|1을;를; 차단했습니다.",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 %5$s|1을;를; 차단했습니다.",
|
||||||
|
ACTION_SPELL_INTERRUPT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH = "소진",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT = "%1$s의 %2$s|1으로;로; %4$s의 %8$s|1이;가; %9$s만큼 소진되었습니다. %1$s|1이;가; %10$s의 %8$s|1을;를; 얻었습니다.",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 %8$s|1이;가; %9$s만큼 소진되었습니다.",
|
||||||
|
ACTION_SPELL_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH_RESULT = "%10$s %8$s 얻음",
|
||||||
|
ACTION_SPELL_MISSED = "적중하지 않음",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB = "흡수됨",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 피해가 흡수되었습니다. %6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격했지만 피해가 흡수되었습니다. %6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK = "방어함",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s|1을;를; 방어했습니다. %6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1을;를; 방어했습니다. %6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT = "튕김",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 튕겨냈습니다.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격했지만 튕겨냈습니다.",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DODGE = "피함",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 교묘히 피했습니다.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1을;를; 교묘히 피했습니다.",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_EVADE = "벗어남",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 빗나갔습니다.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격했지만 벗어났습니다.",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; %4$s에게 적중하지 않았습니다.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE = "면역",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT = "%1$s의 %2$s|1이;가; 실패했습니다. %4$s|1은;는; 면역입니다.",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 실패했습니다. %4$s|1은;는; 면역입니다.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE = "공격 실패",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격하려 했지만 실패했습니다.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격하는 데 실패했습니다.",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_MISS = "빗나감",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; %4$s에게 적중하지 않았습니다.",
|
||||||
|
ACTION_SPELL_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_PARRY = "막음",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 공격했지만 막았습니다.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 공격했지만 막았습니다.",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT = "반사함",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s|1을;를; 반사했습니다.",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1을;를; 반사했습니다.",
|
||||||
|
ACTION_SPELL_MISSED_RESIST = "저항함",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s|1을;를; 모두 저항했습니다. %6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1을;를; 모두 저항했습니다. %6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE = "피해",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s|1으로;로; %5$s의 피해를 입었습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1으로;로; %5$s의 피해를 입었습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN = "소진",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s의 %8$s|1을;를; %9$s만큼 소진시켰습니다.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 %8$s|1이;가; %9$s만큼 소진되었습니다.",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE = "얻음",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s|1으로;로; %9$s의 %8$s|1을;를; 얻었습니다.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s|1으로;로; %9$s의 %8$s|1을;를; 얻었습니다.",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_RESULT = "$extraAmount %8$s 얻음",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL = "생명력 회복",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT = "%1$s의 %2$s|1으로;로; %4$s의 생명력이 %9$s만큼 회복되었습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 생명력이 %9$s만큼 회복되었습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH = "소진",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT = "%1$s의 %2$s|1으로;로; %4$s의 %8$s|1이;가; %9$s만큼 소진되었습니다. %1$s|1이;가; %10$s의 %8$s|1을;를; 얻었습니다.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 %8$s|1이;가; %9$s만큼 소진되었습니다. %1$s|1이;가; %10$s의 %8$s|1을;를; 얻었습니다.",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_RESULT = "(%10$s %8$s 얻음)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED = "적중하지 않음",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB = "(%1$s 흡수됨)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT = "%1$s의 %2$s|1이;가; 흡수되어 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 흡수되어 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK = "일시적으로 방어함",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT = "%1$s의 %2$s|1이;가; 일시적으로 방어되어 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 일시적으로 방어되어 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED = "(일시적으로 튕김)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT = "%1$s의 %2$s|1이;가; 일시적으로 튕겨 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 일시적으로 튕겨 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE = "일시적으로 피함",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT = "%1$s의 %2$s|1이;가; 일시적으로 회피되어 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 일시적으로 회피되어 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED = "(일시적으로 벗어남)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT = "%1$s의 %2$s|1이;가; 일시적으로 벗어나 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 일시적으로 벗어나 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT = "%1$s의 %2$s|1이;가; 일시적으로 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 일시적으로 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE = "면역",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT = "%4$s|1이;가; %1$s의 %2$s에 면역입니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%4$s|1이;가; %2$s에 면역입니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS = "일시적으로 적중하지 않음",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT = "%1$s의 %2$s|1이;가; 일시적으로 적중하지 않아 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 일시적으로 적중하지 않아 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY = "일시적으로 막음",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT = "%1$s의 %2$s|1이;가; 일시적으로 막혀 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; 일시적으로 막혀 %4$s에게 피해를 주지 못했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST = "일시적으로 저항함",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT = "%1$s의 %2$s|1이;가; %4$s에게 피해를 주지 못했습니다. %4$s|1이;가; 저항했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s|1이;가; %4$s에게 피해를 주지 못했습니다. %4$s|1이;가; 저항했습니다. %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_RESURRECT = "부활함",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 부활시켰습니다. %6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 부활시켰습니다. %6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN = "훔침",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF = "훔침",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s의 %5$s|1을;를; 훔쳤습니다.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 %5$s|1을;를; 훔쳤습니다.",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF__POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF = "훔침",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT = "%1$s의 %2$s|1으로;로; %4$s의 $extraSpell|1이;가; %1$s에게 이전되었습니다.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 $extraSpell|1이;가; 이전되었습니다.",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s의 %5$s|1을;를; 훔쳤습니다.",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s의 %5$s|1을;를; 훔쳤습니다.",
|
||||||
|
ACTION_SPELL_STOLEN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_SUMMON = "소환",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT = "%1$s|1이;가; %2$s|1으로;로; %4$s|1을;를; 소환했습니다. %6$s",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT_NO_SOURCE = "%2$s|1으로;로; %4$s|1을;를; 소환했습니다. %6$s",
|
||||||
|
ACTION_SPELL_SUMMON_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING = "근접 공격",
|
||||||
|
ACTION_SWING_DAMAGE = "피해",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT = "%1$s|1이;가; 근접 공격으로 %4$s에게 %5$s의 피해를 입혔습니다. %6$s",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT_NO_SOURCE = "근접 공격으로 %4$s|1이;가; %5$s의 피해를 입었습니다. %6$s",
|
||||||
|
ACTION_SWING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED = "적중하지 않음",
|
||||||
|
ACTION_SWING_MISSED_ABSORB = "흡수됨",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 공격했지만 피해가 흡수되었습니다. %6$s",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_BLOCK = "방어함",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_FULL_TEXT = "%1$s|1이;가; %4$s의 공격을 방어했습니다. %6$s",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT = "(튕김)",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 공격했지만 튕겨냈습니다.",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DODGE = "피함",
|
||||||
|
ACTION_SWING_MISSED_DODGE_FULL_TEXT = "%4$s|1이;가; %1$s의 공격을 교묘히 피했습니다.",
|
||||||
|
ACTION_SWING_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_EVADE = "(벗어남)",
|
||||||
|
ACTION_SWING_MISSED_EVADE_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 공격했지만 벗어났습니다.",
|
||||||
|
ACTION_SWING_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE = "면역",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_FULL_TEXT = "%1$s의 공격이 실패했습니다. %4$s|1은;는; 면역입니다.",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE = "(공격 실패)",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 공격하려 했지만 실패했습니다.",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISS = "(빗나감)",
|
||||||
|
ACTION_SWING_MISSED_MISS_FULL_TEXT = "%1$s|1이;가; %4$s|1을;를; 공격했지만 적중하지 않았습니다.",
|
||||||
|
ACTION_SWING_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_PARRY = "막음",
|
||||||
|
ACTION_SWING_MISSED_PARRY_FULL_TEXT = "%4$s|1이;가; %1$s의 공격을 막았습니다.",
|
||||||
|
ACTION_SWING_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_RESIST = "저항함",
|
||||||
|
ACTION_SWING_MISSED_RESIST_FULL_TEXT = "%4$s|1이;가; %1$s의 공격을 모두 저항했습니다. %6$s",
|
||||||
|
ACTION_SWING_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_UNIT_BECCOMES_UNCONSCIOUS = "쓰러짐",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_FULL_TEXT = "%4$s|1이;가; 쓰러집니다.",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DESTROYED = "파괴됨",
|
||||||
|
ACTION_UNIT_DESTROYED_FULL_TEXT = "%4$s|1이;가; 파괴되었습니다.",
|
||||||
|
ACTION_UNIT_DESTROYED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DIED = "죽음",
|
||||||
|
ACTION_UNIT_DIED_FULL_TEXT = "%4$s|1이;가; 죽었습니다.",
|
||||||
|
ACTION_UNIT_DIED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DISSIPATES = "사라짐",
|
||||||
|
ACTION_UNIT_DISSIPATES_FULL_TEXT = "%4$s|1이;가; 사라집니다.",
|
||||||
|
ACTION_UNIT_DISSIPATES_POSSESSIVE = "0",
|
||||||
|
ADD = "추가",
|
||||||
|
ADDITIONAL_FILTERS = "추가 필터",
|
||||||
|
ADD_FILTER = "필터 추가",
|
||||||
|
AURAS = "오라",
|
||||||
|
AURAS_COMBATLOG_TOOLTIP = "이로운 효과나 해로운 효과에 대한 메시지를 표시합니다.",
|
||||||
|
BENEFICIAL = "이로운 효과",
|
||||||
|
BENEFICIAL_AURA_COMBATLOG_TOOLTIP = "강화 효과를 얻거나 잃었을 때 메시지를 표시합니다.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_BOTH = "%s|1과;와; 관련된 기록을 모두 보여주십시오.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_EVERYTHING = "모두",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_INCOMING = "%s에게 무슨 일이 일어났습니까?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING = "%s|1이;가; 무엇을 했습니까?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING_ME = "%s|1이;가; 당신에게 무엇을 했습니까?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_RESET = "원래대로",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SAVE = "새 필터로 저장",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_HIDE = "같은 종류의 메시지 숨기기",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_LINK = "%s|1을;를; 대화창으로 링크",
|
||||||
|
BY_SOURCE = "행위자",
|
||||||
|
BY_SOURCE_COMBATLOG_TOOLTIP = "행위자를 기준으로 문장에 색을 입힙니다.",
|
||||||
|
BY_TARGET = "대상",
|
||||||
|
BY_TARGET_COMBATLOG_TOOLTIP = "대상을 기준으로 문장에 색을 입힙니다.",
|
||||||
|
COLORIZE = "색 지정",
|
||||||
|
COLORS = "색상",
|
||||||
|
COLOR_BY_SCHOOL = "마법 계열별 색 설정",
|
||||||
|
COMBATLOG_DEFAULTS = "원래대로",
|
||||||
|
COMBATLOG_FILTER_STRING_CUSTOM_UNIT = "사용자 개체",
|
||||||
|
COMBATLOG_FILTER_STRING_FRIENDLY_UNITS = "친구",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_PLAYERS = "적대적인 플레이어",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_UNITS = "적대적 대상",
|
||||||
|
COMBATLOG_FILTER_STRING_ME = "자신",
|
||||||
|
COMBATLOG_FILTER_STRING_MY_PET = "소환수",
|
||||||
|
COMBATLOG_FILTER_STRING_NEUTRAL_UNITS = "중립적 대상",
|
||||||
|
COMBATLOG_FILTER_STRING_UNKNOWN_UNITS = "알 수 없음",
|
||||||
|
COMBATLOG_HIGHLIGHT_ABILITY = "주문 및 기술",
|
||||||
|
COMBATLOG_HIGHLIGHT_DAMAGE = "피해",
|
||||||
|
COMBATLOG_HIGHLIGHT_KILL = "처치",
|
||||||
|
COMBATLOG_HIGHLIGHT_SCHOOL = "마법 계열",
|
||||||
|
COMBATLOG_UNKNOWN_UNIT = "무엇인가",
|
||||||
|
COMBAT_FACTION_CHANGE = "평판",
|
||||||
|
COMBAT_HONOR_GAIN = "명예",
|
||||||
|
COMBAT_LOG_UNIT_YOU_ENABLED = "1",
|
||||||
|
COMBAT_MISC_INFO = "기타 정보",
|
||||||
|
COMBAT_XP_GAIN = "경험치",
|
||||||
|
CONFIRM_COMBAT_FILTER_DEFAULTS = "정말 필터를 초기화하시겠습니까?",
|
||||||
|
CONFIRM_COMBAT_FILTER_DELETE = "정말 이 필터를 삭제하시겠습니까?",
|
||||||
|
COPY_FILTER = "필터 복사",
|
||||||
|
DAMAGE_NUMBER = "피해 수치",
|
||||||
|
DAMAGE_SCHOOL_TEXT = "마법 계열",
|
||||||
|
DAMAGE_SHIELD = "피해 보호막",
|
||||||
|
DAMAGE_SHIELD_COMBATLOG_TOOLTIP = "근접 공격자에게 피해를 입히는 주문이나 능력으로 인한 피해 메시지를 표시합니다. 예: 가시 등",
|
||||||
|
DEATHS_COMBATLOG_TOOLTIP = "무엇인가가 죽었을 때 메시지를 표시합니다.",
|
||||||
|
DEFAULT_COMBATLOG_FILTER_NAME = "필터: %d",
|
||||||
|
DISPELS = "무효화",
|
||||||
|
DISPEL_AURA_COMBATLOG_TOOLTIP = "효과가 제거되거나, 파괴되거나, 훔쳐졌을 때 메시지를 표시합니다.",
|
||||||
|
DONE_BY = "행위자",
|
||||||
|
DONE_TO = "대상",
|
||||||
|
DRAINS = "소진",
|
||||||
|
ENTER_FILTER_NAME = "필터 이름을 입력하십시오.",
|
||||||
|
ENTIRE_LINE = "전체 문장",
|
||||||
|
ENTIRE_LINE_COMBATLOG_TOOLTIP = "아래 선택에 따라 전체 문장에 색을 입힙니다.",
|
||||||
|
ENVIRONMENTAL_DAMAGE = "환경 피해",
|
||||||
|
ENVIRONMENTAL_DAMAGE_COMBATLOG_TOOLTIP = "낙하, 익사, 용암에 의한 피해를 입었을 때 메시지를 표시합니다.",
|
||||||
|
EXAMPLE_SPELL_FIREBALL = "화염구",
|
||||||
|
EXAMPLE_SPELL_FROSTBOLT = "얼음 화살",
|
||||||
|
EXAMPLE_TARGET_MONSTER = "몬스터",
|
||||||
|
EXAMPLE_TEXT = "예시 문구",
|
||||||
|
EXTRA_ATTACKS = "추가 공격",
|
||||||
|
FAILURES = "실패",
|
||||||
|
FILTER_BY_ENEMIES_COMBATLOG_TOOLTIP = "적대적인 NPC, 소환수의 동작",
|
||||||
|
FILTER_BY_FRIENDS_COMBATLOG_TOOLTIP = "아군 플레이어, 소환수, NPC의 동작",
|
||||||
|
FILTER_BY_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "적대적인 플레이어의 동작",
|
||||||
|
FILTER_BY_ME_COMBATLOG_TOOLTIP = "자신, 자신의 덫, 자신의 주문에 의한 동작",
|
||||||
|
FILTER_BY_NEUTRAL_COMBATLOG_TOOLTIP = "중립적 NPC의 동작",
|
||||||
|
FILTER_BY_PET_COMBATLOG_TOOLTIP = "자신의 소환수, 소환된 수호물, 자신이 현혹한 플레이어의 동작",
|
||||||
|
FILTER_BY_UNKNOWN_COMBATLOG_TOOLTIP = "낙하 피해, 독, 용암 등에 의한 동작",
|
||||||
|
FILTER_NAME = "필터 이름",
|
||||||
|
FILTER_TO_FRIENDS_COMBATLOG_TOOLTIP = "아군 플레이어, 소환수, NPC에게 행해진 동작",
|
||||||
|
FILTER_TO_HOSTILE_COMBATLOG_TOOLTIP = "적대적인 소환수, NPC에게 행해진 동작",
|
||||||
|
FILTER_TO_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "적대적인 플레이어에게 행해진 동작",
|
||||||
|
FILTER_TO_ME_COMBATLOG_TOOLTIP = "자신에게 행해진 동작",
|
||||||
|
FILTER_TO_NEUTRAL_COMBATLOG_TOOLTIP = "중립적 NPC에게 행해진 동작",
|
||||||
|
FILTER_TO_PET_COMBATLOG_TOOLTIP = "자신의 소환수, 소환된 수호물, 자신이 현혹한 플레이어에게 행해진 동작",
|
||||||
|
FILTER_TO_UNKNOWN_COMBATLOG_TOOLTIP = "보이지 않는 대상에게 행해진 동작",
|
||||||
|
FORMATTING = "형식",
|
||||||
|
FULL_TEXT_COMBATLOG_TOOLTIP = "전투 메시지를 전체 문장으로 표시합니다.",
|
||||||
|
HARMFUL_AURA_COMBATLOG_TOOLTIP = "약화 효과를 얻거나 잃었을 때 메시지를 표시합니다.",
|
||||||
|
HEALS = "치유",
|
||||||
|
HIGHLIGHTING = "강조",
|
||||||
|
HIGHLIGHT_ABILITY_COMBATLOG_TOOLTIP = "전투 메시지 상에서 능력의 이름을 강조합니다.",
|
||||||
|
HIGHLIGHT_DAMAGE_COMBATLOG_TOOLTIP = "전투 메시지 상에서 피해의 수치를 강조합니다.",
|
||||||
|
HIGHLIGHT_KILL_COMBATLOG_TOOLTIP = "자신이나 파티원이 대상을 처치했을 때 메시지를 강조합니다.",
|
||||||
|
HIGHLIGHT_SCHOOL_COMBATLOG_TOOLTIP = "전투 메시지 상에서 주문의 마법 계열을 강조합니다.",
|
||||||
|
HOSTILE = "해로운 효과",
|
||||||
|
INTERRUPTS = "차단",
|
||||||
|
ITEM_NAMES = "아이템 이름",
|
||||||
|
ITEM_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "아이템에 괄호 표시",
|
||||||
|
KILLS_COMBATLOG_TOOLTIP = "파티원이 어떤 대상을 처치했을 때 메시지를 표시합니다.",
|
||||||
|
MELEE = "근접 공격",
|
||||||
|
MELEE_COMBATLOG_TOOLTIP = "근접 공격에 관련된 메시지를 표시합니다.",
|
||||||
|
MESSAGE_SOURCES = "메시지 출처",
|
||||||
|
MISSES = "적중하지 않음",
|
||||||
|
MOVE_FILTER_DOWN = "필터를 아래로 이동",
|
||||||
|
MOVE_FILTER_UP = "필터를 위로 이동",
|
||||||
|
OTHER = "기타",
|
||||||
|
PERIODIC = "주기적인 효과",
|
||||||
|
POWER_GAINS = "얻은 자원",
|
||||||
|
POWER_GAINS_COMBATLOG_TOOLTIP = "주문이나 능력으로 마나, 기력, 분노, 집중, 기, 신성한 힘, 암흑 구슬이 회복될 때 메시지를 표시합니다.",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING = "모두",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING_TOOLTIP = "모든 전투 메시지를 표시합니다.",
|
||||||
|
QUICKBUTTON_NAME_KILLS = "처치",
|
||||||
|
QUICKBUTTON_NAME_KILLS_TOOLTIP = "처치 및 죽음에 대한 메시지를 표시합니다.",
|
||||||
|
QUICKBUTTON_NAME_ME = "자신(대상)",
|
||||||
|
QUICKBUTTON_NAME_ME_TOOLTIP = "자신에게 행해진 모든 내용을 표시합니다.",
|
||||||
|
QUICKBUTTON_NAME_SELF = "자신",
|
||||||
|
QUICKBUTTON_NAME_SELF_TOOLTIP = "자신의 행위와 자신에게 행해진 행위에 대한 메시지를 표시합니다.",
|
||||||
|
QUICK_BUTTON_COMBATLOG_TOOLTIP = "대화창에 필터를 추가합니다.",
|
||||||
|
RANGED = "원거리 공격",
|
||||||
|
RANGED_COMBATLOG_TOOLTIP = "활, 총, 투척 무기, 마법봉 공격 메시지를 표시합니다.",
|
||||||
|
RANGE_DAMAGE_COMBATLOG_TOOLTIP = "원거리 공격으로 입힌 전체 피해나 부분적인 피해를 표시합니다.",
|
||||||
|
RANGE_MISSED_COMBATLOG_TOOLTIP = "피해를 입히지 못한 원거리 공격에 대한 메시지를 표시합니다.",
|
||||||
|
RESURRECT = "부활",
|
||||||
|
SETTINGS = "설정",
|
||||||
|
SHOW_BRACES = "괄호 표시",
|
||||||
|
SHOW_BRACES_COMBATLOG_TOOLTIP = "전투 메시지에서 링크 정보가 있는 단어를 괄호로 묶습니다.",
|
||||||
|
SHOW_QUICK_BUTTON = "빠른 버튼 표시하기",
|
||||||
|
SHOW_TIMESTAMP = "시간 표시",
|
||||||
|
SOURCE = "획득 방법:",
|
||||||
|
SPECIAL = "특수 주문",
|
||||||
|
SPELLS_COMBATLOG_TOOLTIP = "주문과 특수 능력에 관한 메시지를 표시합니다.",
|
||||||
|
SPELL_CASTING = "주문 시전",
|
||||||
|
SPELL_CASTING_COMBATLOG_TOOLTIP = "주문 시전에 관련된 메시지를 표시합니다.",
|
||||||
|
SPELL_CAST_FAILED_COMBATLOG_TOOLTIP = "주문을 시전하지 못하거나 시전에 실패했을 때 메시지를 표시합니다.",
|
||||||
|
SPELL_CAST_START_COMBATLOG_TOOLTIP = "주문 시전을 시작할 때 메시지를 표시합니다.",
|
||||||
|
SPELL_CAST_SUCCESS_COMBATLOG_TOOLTIP = "성공적으로 주문을 시전했을 때 메시지를 표시합니다.",
|
||||||
|
SPELL_COLOR_BY_SCHOOL_COMBATLOG_TOOLTIP = "주문의 마법 계열에 색을 입힙니다.",
|
||||||
|
SPELL_DAMAGE_COMBATLOG_TOOLTIP = "주문이나 능력으로 피해를 입혔을 때 메시지를 표시합니다.",
|
||||||
|
SPELL_DAMAGE_NUMBER_COMBATLOG_TOOLTIP = "근접 공격을 제외한 공격 피해에 색을 입힙니다.",
|
||||||
|
SPELL_DAMAGE_SCHOOL_COMBATLOG_TOOLTIP = "공격 마법 계열에 색을 입힙니다. (예: 암흑)",
|
||||||
|
SPELL_DRAIN_COMBATLOG_TOOLTIP = "주문이나 능력으로 마나, 기력, 분노, 집중이 감소할 때 메시지를 표시합니다.",
|
||||||
|
SPELL_EXTRA_ATTACKS_COMBATLOG_TOOLTIP = "주문이나 능력으로 추가 공격 기회를 얻었을 때 메시지를 표시합니다.",
|
||||||
|
SPELL_HEAL_COMBATLOG_TOOLTIP = "주문이나 능력으로 피해가 치유될 때 메시지를 표시합니다.",
|
||||||
|
SPELL_INSTAKILL_COMBATLOG_TOOLTIP = "내구도 감소나 소환수에게 분배되는 피해 등 특별한 형태의 메시지를 표시합니다.",
|
||||||
|
SPELL_INTERRUPT_COMBATLOG_TOOLTIP = "주문이나 능력으로 다른 주문이 취소될 때 메시지를 표시합니다.",
|
||||||
|
SPELL_MISSED_COMBATLOG_TOOLTIP = "주문이나 능력으로 피해를 입히지 못했을 때 메시지를 표시합니다. 피함, 막음, 방어함, 튕김, 면역, 흡수, 벗어남이 포함됩니다.",
|
||||||
|
SPELL_NAMES = "주문 이름",
|
||||||
|
SPELL_NAMES_COMBATLOG_TOOLTIP = "주문의 이름에 색을 입힙니다.",
|
||||||
|
SPELL_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "주문이나 기술에 괄호 표시",
|
||||||
|
SPELL_PERIODIC_COMBATLOG_TOOLTIP = "효과가 증가하는 주문을 표시합니다.",
|
||||||
|
SPELL_PERIODIC_DAMAGE_COMBATLOG_TOOLTIP = "주문이나 능력으로 주기적인 피해를 입힐 때 메시지를 표시합니다. 예: 어둠의 권능: 고통, 부패 등",
|
||||||
|
SPELL_PERIODIC_HEAL_COMBATLOG_TOOLTIP = "주문이나 능력으로 주기적인 치유가 이루어질 때 메시지를 표시합니다. 예: 소생, 회복 등",
|
||||||
|
SPELL_PERIODIC_MISSED_COMBATLOG_TOOLTIP = "주문이나 능력으로 인한 주기적인 피해가 실패했을 때 메시지를 표시합니다. 면역, 흡수, 벗어남 등이 포함됩니다.",
|
||||||
|
SPELL_PERIODIC_OTHER_COMBATLOG_TOOLTIP = "주문이나 능력으로 주기적인 효과가 발생할 때 메시지를 표시합니다. 예: 마나 회복, 마나 흡수 등",
|
||||||
|
SPELL_RESURRECT_COMBATLOG_TOOLTIP = "다른 플레이어나 NPC를 부활시키는 주문에 대한 메시지를 표시합니다.",
|
||||||
|
SPELL_SUMMON_COMBATLOG_TOOLTIP = "몬스터나 NPC를 소환하거나 물건을 창조할 때 메시지를 표시합니다.",
|
||||||
|
START = "시작",
|
||||||
|
STRING_SCHOOL_UNKNOWN = "알 수 없음",
|
||||||
|
SUCCESS = "성공",
|
||||||
|
SUMMONS = "소환",
|
||||||
|
SWING_DAMAGE_COMBATLOG_TOOLTIP = "근접 공격으로 입힌 전체 피해나 부분적인 피해를 표시합니다.",
|
||||||
|
SWING_MISSED_COMBATLOG_TOOLTIP = "피해를 입히지 못한 근접 공격에 대한 메시지를 표시합니다.",
|
||||||
|
TEXT_MODE_A = "A",
|
||||||
|
TEXT_MODE_A_STRING_1 = "%1$s %2$s %4$s %5$s %3$s %6$s %11$s",
|
||||||
|
TEXT_MODE_A_STRING_2 = "%1$s %2$s %4$s %5$s %3$s %6$s",
|
||||||
|
TEXT_MODE_A_STRING_3 = "%1$s %5$s %3$s %4$s %2$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_ACTION = "|Haction:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_ITEM = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_SPELL = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_UNIT = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_DEST_ICON = "|Hicon:%d:dest|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_DEST_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_ITEM = "|Hitem:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_POSSESSIVE = "%s",
|
||||||
|
TEXT_MODE_A_STRING_REMAINING_POINTS = "(%s 남음)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_ABSORB = "(%s 흡수됨)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_BLOCK = "(%s 피해 방어)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL = "(치명상)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL_SPELL = "(극대화)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRUSHING = "(강타당함)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_FORMAT = "$resultAmount $resultType",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_GLANCING = "(비껴맞음)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_MULTISTRIKE = "(연속타격)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERENERGIZE = "(%s 과충전)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERHEALING = "(%s 초과 치유)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERKILLING = "(%s 초과 피해)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_PARRY = "(%d 막음)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_REFLECT = "반사함",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_RESIST = "(%s 저항함)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_VULNERABILITY = "(%s 약점 피해)",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_ICON = "|Hicon:%s:source|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL_EXTRA = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_TIMESTAMP = "%s> %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_SCHOOL = "(%s %s)",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_TYPE = "%s (%s)",
|
||||||
|
TEXT_MODE_A_TIMESTAMP = "%H:%M:%S",
|
||||||
|
TIMESTAMP_COMBATLOG_TOOLTIP = "전투 메시지에 시간을 표시합니다.",
|
||||||
|
UNIT_COLORS = "대상 색:",
|
||||||
|
UNIT_NAMES = "플레이어, NPC, 몬스터 이름",
|
||||||
|
UNIT_NAMES_COMBATLOG_TOOLTIP = "플레이어, NPC, 몬스터 이름에 색을 입힙니다.",
|
||||||
|
UNIT_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "이름에 괄호 표시",
|
||||||
|
UNIT_YOU = "당신",
|
||||||
|
UNIT_YOU_DEST = "당신",
|
||||||
|
UNIT_YOU_DEST_POSSESSIVE = "당신",
|
||||||
|
UNIT_YOU_SOURCE = "당신",
|
||||||
|
UNIT_YOU_SOURCE_POSSESSIVE = "당신",
|
||||||
|
USE_FULL_TEXT_MODE = "전체 문장으로 보기",
|
||||||
|
}
|
||||||
Vendored
+677
@@ -0,0 +1,677 @@
|
|||||||
|
-- Classic Era GlobalStrings (RU) that the combat log reads
|
||||||
|
-- and the 1.12 client lacks. Generated; do not edit by hand.
|
||||||
|
pfUI_locale["ruRU"]["combatlog"] = {
|
||||||
|
ACTION_DAMAGE_SHIELD = "Урон",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT = "\"%2$s\" |3-1(%1$s) отражает %9$s |4единицу:единицы:единиц; %7$s на |3-3(%4$s)%6$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT_NO_SOURCE = "\"%2$s\" отражает %9$s |4единицу:единицы:единиц; %7$s на |3-3(%4$s)%6$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED = "Промах",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK = ": выстрел блокирован",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT = "%4$s блокирует заклинание \"%2$s\" |3-1(%1$s)%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s блокирует заклинание \"%2$s\"%6$s.",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT = ": выстрел отклонен",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT = "%4$s отклоняет заклинание \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%4$s отклоняет заклинание \"%2$s\".",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE = ": уклонение",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT = "%4$s уклоняется от заклинания \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s уклоняется от заклинания \"%2$s\".",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED = ": атака не достигла цели",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT = "Заклинание \"%2$s\" |3-1(%1$s) не достигает |3-1(%4$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "Заклинание \"%2$s\" не достигает |3-1(%4$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT = "\"%2$s\" |3-1(%1$s) не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT_NO_SOURCE = "\"%2$s\" не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE = ": цель невосприимчива",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT = "%4$s обладает невосприимчивостью к заклинанию \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%4$s обладает невосприимчивостью к заклинанию \"%2$s\".",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS = ": промах",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT = "\"%2$s\" |3-1(%1$s) не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT_NO_SOURCE = "\"%2$s\" не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY = ": выстрел парирован",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT = "%4$s парирует способность \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%4$s парирует способность \"%2$s\".",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST = ": сопротивление",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT = "%4$s полностью сопротивляется заклинанию \"%2$s\" |3-1(%1$s)%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s полностью сопротивляется заклинанию \"%2$s\"%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SPLIT = "Разделение урона",
|
||||||
|
ACTION_DAMAGE_SPLIT_ABSORBED_FULL_TEXT = "%4$s поглощает урон от заклинания \"%2$s\" |3-1(%1$s) %6$s",
|
||||||
|
ACTION_DAMAGE_SPLIT_FULL_TEXT = "\"%2$s\" |3-1(%1$s) наносит |3-2(%4$s) %9$s |4единицу:единицы:единиц; урона.",
|
||||||
|
ACTION_DAMAGE_SPLIT_POSSESSIVE = "0",
|
||||||
|
ACTION_DAMAGE_SPLIT_RESULT_FULL_TEXT = "\"%2$s\" |3-1(%1$s) наносит %9$s ед. урона |3-2(%4$s) %6$s",
|
||||||
|
ACTION_ENCHANT_APPLIED = "зачаровано",
|
||||||
|
ACTION_ENCHANT_APPLIED_FULL_TEXT = "%1$s накладывает чары \"%2$s\" на предмет \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_ENCHANT_APPLIED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENCHANT_REMOVED = "чары развеялись",
|
||||||
|
ACTION_ENCHANT_REMOVED_FULL_TEXT = "Эффект \"%2$s\" перестает действовать на предмете |3-1(%4$s) \"%5$s\".",
|
||||||
|
ACTION_ENCHANT_REMOVED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE = "Урон",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING = "Утопление",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_FULL_TEXT = "%4$s тонет и теряет %9$s |4единицу:единицы:единиц; здоровья.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING = "Падение",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_FULL_TEXT = "%4$s падает и теряет %9$s |4единицу:единицы:единиц; здоровья.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE = "Усталость",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_FULL_TEXT = "%4$s от усталости теряет %9$s |4единицу:единицы:единиц; здоровья.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE = "Огонь",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_FULL_TEXT = "%4$s получает %9$s |4единицу:единицы:единиц; урона от огня.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FULL_TEXT = "%4$s теряет %9$s |4единицу:единицы:единиц; здоровья из-за опасностей окружающего мира.",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA = "Лава",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_FULL_TEXT = "%4$s погружается в лаву и теряет %9$s |4единицу:единицы:единиц; здоровья. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME = "Слизь",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_FULL_TEXT = "%4$s погружается в слизь и теряет %9$s |4единицу:единицы:единиц; здоровья. %6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL = "Убийство",
|
||||||
|
ACTION_PARTY_KILL_FULL_TEXT = "%1$s убивает |3-3(%4$s)!",
|
||||||
|
ACTION_PARTY_KILL_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS = "нейтрализован",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_FULL_TEXT = "Игрок %1$s нейтрализовал |3-3(%4$s)!",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_RANGED = "Дальний бой",
|
||||||
|
ACTION_RANGE_DAMAGE = "Попадание",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT = "Атака дальнего боя |3-1(%1$s) бьет по |3-2(%4$s) на %5$s%6$s.",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT_NO_SOURCE = "Атака дальнего боя бьет по |3-2(%4$s) на %5$s%6$s.",
|
||||||
|
ACTION_RANGE_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED = "Промах",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB = ": поглощение",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_FULL_TEXT = "%4$s поглощает выстрел |3-1(%1$s)%6$s.",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK = ": выстрел блокирован",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_FULL_TEXT = "%1$s блокирует выстрел |3-1(%4$s)%6$s.",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT = ": выстрел отклонен",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_FULL_TEXT = "%4$s отклоняет выстрел |3-1(%1$s).",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DODGE = ": уклонение",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_FULL_TEXT = "%4$s уклоняется от выстрела |3-1(%1$s).",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_EVADE = ": атака не достигла цели",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_FULL_TEXT = "Выстрел |3-1(%1$s) не достигает |3-1(%4$s).",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_FULL_TEXT = "%1$s не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE = ": цель невосприимчива",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_FULL_TEXT = "%4$s обладает невосприимчивостью к выстрелу |3-1(%1$s).",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE = "Промах.",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_FULL_TEXT = "Выстрел 3-1(%1$s) не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISS = ": промах",
|
||||||
|
ACTION_RANGE_MISSED_MISS_FULL_TEXT = "%1$s не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_RANGE_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_PARRY = ": выстрел парирован",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_FULL_TEXT = "%4$s парирует выстрел |3-1(%1$s).",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_RESIST = ": сопротивление",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_FULL_TEXT = "%4$s полностью сопротивляется выстрелу |3-1(%1$s)%6$s.",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED = "накладывается",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF = "накладывается",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT = "На |3-3(%4$s) накладывается эффект \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT_NO_SOURCE = "%4$s обретает %2$s.",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT = "На |3-3(%4$s) накладывается эффект \"%2$s\" |3-1(%1$s). %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "На |3-3(%4$s) накладывается эффект \"%2$s\". %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF = "Негативный эффект",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT = "%4$s находится под воздействием эффекта \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s находится под воздействием эффекта \"%2$s\".",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT = "%4$s находится под воздействием эффекта \"%2$s\" |3-1(%1$s). %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s находится под воздействием эффекта \"%2$s\". %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE = "Суммирование",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF = "Суммирование",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT = "На |3-3(%4$s) накладывается эффект \"%2$s\" |3-1(%1$s) (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%4$s получает %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF = "Негативный эффект",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT = "%4$s находится под воздействием эффекта \"%2$s\" |3-1(%1$s) (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s находится под воздействием %2$s (%9$s).",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN = "прервано",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF = "прервано",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT = "\"%4$s\" |3-1(%2$s) снято |3-4(%1$s).",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT_NO_SOURCE = "Кто-то прервал действие заклинания \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF = "прервано",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT = "\"%4$s\" |3-1(%2$s) снято |3-4(%1$s).",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT_NO_SOURCE = "Кто-то прервал действие заклинания \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF = "прервано",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT = "%5$s |3-1(%1$s) прекращает действие эффекта \"%2$s\" на |3-3(%4$s).",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT_NO_SOURCE = "%5$s прерывает действие \"%2$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF = "прервано",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT = "%5$s |3-1(%1$s) прекращает действие эффекта \"%2$s\" на |3-3(%4$s).",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT_NO_SOURCE = "%5$s прерывает действие \"%2$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH = "обновлено",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF = "обновлено",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT = "Эффект \"%2$s\" |3-1(%1$s) обновлен на |3-5(%4$s).",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT_NO_SOURCE = "Эффект \"%2$s\" обновлен на |3-5(%4$s).",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT = "Эффект \"%2$s\" |3-1(%1$s) обновлен на |3-5(%4$s). %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "Эффект \"%2$s\" обновлен на |3-5(%4$s). %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF = "обновлено",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT = "Эффект \"%2$s\" |3-1(%1$s) обновлен на |3-5(%4$s).",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT_NO_SOURCE = "Эффект \"%2$s\" обновлен на |3-5(%4$s).",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT = "Эффект \"%2$s\" |3-1(%1$s) обновлен на |3-5(%4$s). %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "Эффект \"%2$s\" обновлен на |3-5(%4$s). %11$s",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REMOVED = "Снятие",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF = "Окончание действия",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT = "Действие эффекта \"%2$s\", наложенного |3-4(%1$s) на |3-3(%4$s), заканчивается.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT_NO_SOURCE = "Действие эффекта \"%2$s\" на |3-2(%4$s) заканчивается.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT = "Действие эффекта \"%2$s\", наложенного |3-4(%1$s) на |3-3(%4$s), заканчивается. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "Действие эффекта \"%2$s\", наложенного на |3-3(%4$s), заканчивается. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF = "Прекращение действия",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT = "Эффект \"%2$s\" |3-1(%1$s), наложенный на |3-3(%4$s), рассеивается.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s рассеивается на %4$s.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT = "Эффект \"%2$s\" |3-1(%1$s), наложенный на |3-3(%4$s), рассеивается. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "Эффект \"%2$s\", наложенный на |3-3(%4$s), рассеивается. %11$s",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE = "Сокращение",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF = "Сокращение",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT = "Действие эффекта |3-1(%1$s) \"%2$s\" (%9$s) проходит.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "Действие эффекта \"%2$s\" (%9$s) ослабляется.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF = "Уменьшение",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT = "Действие эффекта \"%2$s\" |3-1(%1$s) (%9$s) заканчивается.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "\"%2$s\" (%9$s) прекращает свое действие.",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT = "С |3-1(%4$s) снято заклинание \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT_NO_SOURCE = "С |3-1(%4$s) снято заклинание \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE = "бьет",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT = "%2$s |3-1(%1$s) наносит |3-2(%4$s) %5$s%6$s.",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s наносит |3-2(%4$s) %5$s%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL = "отремонтировано",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT = "%2$s |3-1(%1$s) ремонтирует %4$s на %9$s ед.%6$s.",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT_NO_SOURCE = "%2$s ремонтирует |3-3(%4$s) на %9$s ед.%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED = "Неудача.",
|
||||||
|
ACTION_SPELL_CAST_FAILED_FULL_TEXT = "Заклинание \"%2$s\" |3-1(%1$s) не сработало. %6$s",
|
||||||
|
ACTION_SPELL_CAST_FAILED_MASTER = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_START = "Начало применения",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT = "%1$s начинает применять способность %2$s к |3-2(%4$s).",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_DEST = "%1$s начинает применять способность %2$s.",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_SOURCE = "Что-то начинает применять способность %2$s к |3-2(%4$s).",
|
||||||
|
ACTION_SPELL_CAST_START_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_START_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS = "Применение",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT = "%1$s применяет заклинание \"%2$s\" на |3-3(%4$s).",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_DEST = "%1$s применяет заклинание \"%2$s\".",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_SOURCE = "На |3-3(%4$s) накладывается эффект \"%2$s\".",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CREATE = "создает",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT = "\"%2$s\" |3-1(%1$s) создает предмет \"%4$s\"%6$s.",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT_NO_SOURCE = "\"%2$s\" создает \"%4$s\"%6$s.",
|
||||||
|
ACTION_SPELL_CREATE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DAMAGE = "Попадание",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT = "\"%2$s\" |3-1(%1$s) наносит |3-2(%4$s) %5$s%6$s.",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT_NO_SOURCE = "\"%2$s\" наносит |3-2(%4$s) урон: %5$s. %6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL = "Развеивание",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF = "Развеивание",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT = "%5$s |3-1(%4$s) рассеивается заклинанием \"%2$s\" |3-1(%1$s).\"",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT_NO_SOURCE = "\"%2$s\" рассеивает заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF = "Очищение",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT = "\"%2$s\" |3-1(%1$s) очищает заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT_NO_SOURCE = "\"%2$s\" очищает заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED = "Не удалось развеять.",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT = "Заклинанию |3-1(%1$s) \"%2$s\" не удалось развеять заклинание |3-1(%4$s) \"%5$s\".",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT_NO_SOURCE = "Заклинанию \"%2$s\" не удается развеять заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DRAIN = "Похищение",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT = "\"%1$s\" |3-1(%2$s) отнимает %9$s |4единицу:единицы:единиц; |3-1(%8$s) у |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT_NO_SOURCE = " %2$s отнимает у |3-1(%4$s) %9$s |4единицу:единицы:единиц; |3-1(%8$s ).",
|
||||||
|
ACTION_SPELL_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE = "Повреждение предмета",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL = "Повреждение всех предметов",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_FULL_TEXT = "\"%2$s\" |3-1(%1$s) наносит урон |3-2(%4$s): повреждаются все предметы.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_FULL_TEXT = "\"%2$s\" |3-1(%1$s) наносит урон |3-2(%4$s). Поврежден предмет: %5$s.",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE = "Энергия",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT = "%4$s получает %9$s |4единицу:единицы:единиц; |3-1(%8$s) от заклинания \"%2$s\" |3-1(%1$s).\"",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s получает %9$s |4единицу:единицы:единиц; |3-1(%8$s) благодаря заклинанию \"%2$s\".",
|
||||||
|
ACTION_SPELL_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE_RESULT = "Получено %9$s |4единица:единицы:единиц; %8$s",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS = "Дополнительные атаки",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT = "\"%2$s\" дает |3-2(\"%1$s) %9$s |4дополнительную атаку:дополнительных атаки:дополнительных атак;.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT_NO_SOURCE = "\"%2$s\" дает %9$s |4дополнительную атаку:дополнительных атаки:дополнительных атак;.",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_HEAL = "Лечение",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT = "\"%2$s\" |3-1(%1$s) исцеляет |3-3(%4$s) на %9$s |4единицу:единицы:единиц; здоровья%6$s.",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT_NO_SOURCE = "\"%2$s\" исцеляет |3-3(%4$s) на %9$s |4единицу:единицы:единиц; %6$s.",
|
||||||
|
ACTION_SPELL_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL = "Убийство",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT = "\"%2$s\" |3-1(%1$s) мгновенно убивает |3-3(%4$s).",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT_NO_SOURCE = "\"%2$s\" мгновенно убивает |3-3(%4$s).",
|
||||||
|
ACTION_SPELL_INSTAKILL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS = "нейтрализован",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT = "%1$s %2$s нейтрализует |3-3(%4$s).",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT_NO_SOURCE = "%2$s нейтрализует |3-3(%4$s).",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INTERRUPT = "прерывание",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT = "\"%2$s\" |3-1(%1$s) прерывает заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT_NO_SOURCE = "\"%2$s\" прерывает заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_INTERRUPT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH = "Похищение",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT = "\"%2$s\" |3-1(%1$s) отнимает %9$s |4единицу:единицы:единиц; |3-1(%8$s) из |3-1(%4$s). %1$s получает %10$s |4единицу:единицы:единиц; |3-1(%8$s).",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT_NO_SOURCE = "\"%2$s\" отнимает %9$s |4единицу:единицы:единиц; |3-1(%8$s) у |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH_RESULT = "Получено %10$s |4единица:единицы:единиц; |3-1(%8$s)",
|
||||||
|
ACTION_SPELL_MISSED = "Промах",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB = "Поглощение",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT = "\"%2$s\" |3-1(%1$s) поглощается |3-4(%4$s)%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%4$s поглощает заклинание \"%2$s\"%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK = "Блок",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT = "%4$s блокирует заклинание \"%2$s\" |3-1(%1$s)%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s блокирует заклинание \"%2$s\"%6$s.",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT = "Отклонение",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT = "%4$s отклоняет заклинание \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%4$s отклоняет заклинание \"%2$s\".",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DODGE = "Уклонение",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT = "%4$s уклоняется от заклинания \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s уклоняется от заклинания \"%2$s\".",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_EVADE = "Атака не достигла цели",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT = "Заклинание \"%2$s\" |3-1(%1$s) не достигает |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT_NO_SOURCE = "Заклинание \"%2$s\" не достигает |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT = "\"%2$s\" |3-1(%1$s) не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT_NO_SOURCE = "\"%2$s\" не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE = "Невосприимчивость",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT = "%4$s обладает невосприимчивостью к заклинанию \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%4$s обладает невосприимчивостью к заклинанию \"%2$s\".",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE = "Промах",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT = "\"%1$s\" |3-1(%2$s) не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT_NO_SOURCE = "\"%2$s\" не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_MISS = "Промах",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT = "\"%2$s\" |3-1(%1$s) не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT_NO_SOURCE = "\"%2$s\" не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_SPELL_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_PARRY = "Парирование",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT = "%4$s парирует способность \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%4$s парирует способность \"%2$s\".",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT = "отражение",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT = "%4$s отражает заклинание \"%2$s\" |3-1(%1$s).",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT_NO_SOURCE = "%4$s отражает заклинание \"%2$s\".",
|
||||||
|
ACTION_SPELL_MISSED_RESIST = "сопротивление",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT = "%4$s полностью сопротивляется заклинанию \"%2$s\" |3-1(%1$s)%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%4$s полностью сопротивляется заклинанию \"%2$s\"%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE = "Урон",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT = "\"%2$s\" |3-1(%1$s) наносит |3-2(%4$s) %5$s%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT_NO_SOURCE = "%4$s получает %5$s от заклинания \"%2$s\"%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN = "Похищение",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT = "\"%1$s\" |3-1(%2$s) отнимает %9$s |4единицу:единицы:единиц; |3-1(%8$s) у |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT_NO_SOURCE = "\"%2$s\" отнимает %9$s |4единицу:единицы:единиц; |3-1(%8$s) у |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE = "Энергия",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT = "%4$s получает %9$s |4единицу:единицы:единиц; |3-1(%8$s) от заклинания \"%2$s\" |3-1(%1$s).\"",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s получает %9$s |4единицу:единицы:единиц; |3-1(%8$s) благодаря заклинанию \"%2$s\".",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_RESULT = "%8$s: +$extraAmount",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL = "Лечение",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT = "%4$s получает %9$s |4единицу:единицы:единиц; здоровья от заклинания \"%2$s\" |3-1(%1$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT_NO_SOURCE = "%4$s получает %9$s |4единицу:единицы:единиц; здоровья от заклинания \"%2$s\". %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH = "Похищение",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT = "\"%2$s\" |3-1(%1$s) отнимает %9$s |4единицу:единицы:единиц; |3-1(%8$s) из |3-1(%4$s). %1$s получает %10$s |4единицу:единицы:единиц; |3-1(%8$s).",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT_NO_SOURCE = "\"%2$s\" отнимает %9$s |4единицу:единицы:единиц; |3-1(%8$s) у |3-1(%4$s). %1$s получает %10$s |4единицу:единицы:единиц; |3-1(%8$s).",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_RESULT = " (Получено %10$s |4единица:единицы:единиц; |3-1(%8$s))",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED = "Промах",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB = " (поглощение: %1$s)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT = "\"%2$s\" |3-1(%1$s) поглощается |3-4(%4$s)%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%4$s поглощает заклинание \"%2$s\"%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK = ": заклинание однократно блокировано",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT = "%4$s временно блокирует заклинание \"%2$s\" |3-1(%1$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%4$s на мгновение блокирует заклинание \"%2$s\"%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED = ": однократное отклонение",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT = "%4$s на мгновение отклоняет заклинание \"%2$s\" |3-1(%1$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT_NO_SOURCE = "%4$s на мгновение отклоняет заклинание \"%2$s\"%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE = ": однократное уклонение",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT = "%4$s на мгновение уклоняется от заклинания \"%2$s\" |3-1(%1$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%4$s на мгновение уклоняется от заклинания \"%2$s\"%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED = ": временно не достигает цели",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT = "Заклинание \"%2$s\" |3-1(%1$s) на мгновение не достигает |3-1(%4$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "Заклинание \"%2$s\" на мгновение не достигает |3-1(%4$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT = "\"%2$s\" |3-1(%1$s) временно не действует на |3-3(%4$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT_NO_SOURCE = "\"%2$s\" временно не действует на |3-3(%4$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE = ": цель невосприимчива",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT = "На |3-3(%4$s) не подействовало заклинание |3-1(%1$s) \"%2$s\". %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "На |3-3(%4$s) не подействовало заклинание \"%2$s\". %6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS = ": однократный промах",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT = "\"%2$s\" |3-1(%1$s) на мгновение перестает действовать на |3-1(%4$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT_NO_SOURCE = "\"%2$s\" на мгновение перестает действовать на |3-1(%4$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY = ": однократное парирование",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT = "%4$s на мгновение парирует заклинание \"%2$s\" |3-1(%1$s)%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%4$s на мгновение парирует заклинание \"%2$s\"%6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST = ": однократное сопротивление",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT = "\"%2$s\" |3-1(%1$s) не действует на |3-3(%4$s). %4$s сопротивляется заклинанию. %6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "\"%2$s\" не действует на |3-3(%4$s). %4$s сопротивляется заклинанию. %6$s.",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_RESURRECT = "воскрешено",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT = "%1$s воскрешает |3-3(%4$s)%6$s с помощью заклинания \"%2$s\".",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT_NO_SOURCE = "%2$s воскрешает %4$s%6$s.",
|
||||||
|
ACTION_SPELL_RESURRECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN = "Похищение",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF = "Похищение",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT = "\"%2$s\" |3-1(%1$s) похищает заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT_NO_SOURCE = "\"%2$s\" похищает заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF__POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF = "Похищение",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT = "\"%2$s\" |3-1(%1$s) передает заклинание |3-1(%4$s) \"$extraSpell\" |3-2(%1$s).",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT_NO_SOURCE = "\"%2$s\" передает |3-2(%4$s) заклинание \"$extraSpell\".",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT = "\"%2$s\" |3-1(%1$s) похищает заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT_NO_SOURCE = "\"%2$s\" похищает заклинание \"%5$s\" |3-1(%4$s).",
|
||||||
|
ACTION_SPELL_STOLEN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_SUMMON = "призывает",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT = "\"%2$s\" |3-1(%1$s) призывает |3-3(%4$s)%6$s.",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT_NO_SOURCE = "%2$s призывает |3-3(%4$s)%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING = "Ближний бой",
|
||||||
|
ACTION_SWING_DAMAGE = "Попадание",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT = "Атака ближнего боя |3-1(%1$s) наносит |3-2(%4$s) %5$s%6$s.",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT_NO_SOURCE = "Атака ближнего боя бьет по |3-2(%4$s) на %5$s%6$s.",
|
||||||
|
ACTION_SWING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED = "Промах",
|
||||||
|
ACTION_SWING_MISSED_ABSORB = ": поглощение",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_FULL_TEXT = "%4$s поглощает атаку |3-1(%1$s)%6$s",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_BLOCK = ": выстрел блокирован",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_FULL_TEXT = "%4$s%6$s блокирует атаку |3-1(%1$s).",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT = ": выстрел отклонен",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_FULL_TEXT = "%4$s отклоняет атаку |3-1(%1$s).",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DODGE = ": уклонение",
|
||||||
|
ACTION_SWING_MISSED_DODGE_FULL_TEXT = "%4$s уклоняется от атаки |3-1(%1$s).",
|
||||||
|
ACTION_SWING_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_EVADE = ": атака не достигла цели",
|
||||||
|
ACTION_SWING_MISSED_EVADE_FULL_TEXT = "Атака |3-1(%1$s) не достигает |3-1(%4$s).",
|
||||||
|
ACTION_SWING_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_FULL_TEXT = "%1$s не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE = ": цель невосприимчива",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_FULL_TEXT = "%4$s обладает невосприимчивостью к атаке |3-1(%1$s).",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE = "Промах.",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_FULL_TEXT = "Атака |3-1(%1$s) не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISS = ": промах",
|
||||||
|
ACTION_SWING_MISSED_MISS_FULL_TEXT = "%1$s не попадает по |3-2(%4$s).",
|
||||||
|
ACTION_SWING_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_PARRY = ": выстрел парирован",
|
||||||
|
ACTION_SWING_MISSED_PARRY_FULL_TEXT = "%4$s парирует атаку |3-1(%1$s).",
|
||||||
|
ACTION_SWING_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_RESIST = ": сопротивление",
|
||||||
|
ACTION_SWING_MISSED_RESIST_FULL_TEXT = "%4$s полностью сопротивляется атаке |3-1(%1$s)%6$s",
|
||||||
|
ACTION_SWING_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_UNIT_BECCOMES_UNCONSCIOUS = "падает",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_FULL_TEXT = "%4$s падает.",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DESTROYED = "Уничтожение",
|
||||||
|
ACTION_UNIT_DESTROYED_FULL_TEXT = "%4$s умирает.",
|
||||||
|
ACTION_UNIT_DESTROYED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DIED = "умерли",
|
||||||
|
ACTION_UNIT_DIED_FULL_TEXT = "%4$s погибает.",
|
||||||
|
ACTION_UNIT_DIED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DISSIPATES = "рассеивается",
|
||||||
|
ACTION_UNIT_DISSIPATES_FULL_TEXT = "%4$s рассеивается.",
|
||||||
|
ACTION_UNIT_DISSIPATES_POSSESSIVE = "0",
|
||||||
|
ADD = "Добавить",
|
||||||
|
ADDITIONAL_FILTERS = "Дополнительные фильтры",
|
||||||
|
ADD_FILTER = "Добавить",
|
||||||
|
AURAS = "Ауры",
|
||||||
|
AURAS_COMBATLOG_TOOLTIP = "Отображение сообщений о благотворных и вредоносных состояниях.",
|
||||||
|
BENEFICIAL = "Защитные",
|
||||||
|
BENEFICIAL_AURA_COMBATLOG_TOOLTIP = "Отображение сообщений о приобретении или потере благотворной ауры вашим персонажем.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_BOTH = "Все действия, касающиеся |3-1(%s)",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_EVERYTHING = "Показывать все",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_INCOMING = "Действия по отношению к |3-2(%s)?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING = "Действия |3-1(%s)",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING_ME = "Действия |3-1(%s) по отношению к вам",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_RESET = "Сброс",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SAVE = "Сохранить как новый фильтр",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_HIDE = "Скрывать подобные сообщения.",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_LINK = "Отправить ссылку на \"%s\" в чат.",
|
||||||
|
BY_SOURCE = "Источник",
|
||||||
|
BY_SOURCE_COMBATLOG_TOOLTIP = "Цвет строки зависит от источника.",
|
||||||
|
BY_TARGET = "Цель",
|
||||||
|
BY_TARGET_COMBATLOG_TOOLTIP = "Цвет строки зависит от цели.",
|
||||||
|
COLORIZE = "Цвета:",
|
||||||
|
COLORS = "Цвета",
|
||||||
|
COLOR_BY_SCHOOL = "Цвета школ",
|
||||||
|
COMBATLOG_DEFAULTS = "По умолчанию",
|
||||||
|
COMBATLOG_FILTER_STRING_CUSTOM_UNIT = "По выбору",
|
||||||
|
COMBATLOG_FILTER_STRING_FRIENDLY_UNITS = "Друзья",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_PLAYERS = "Враждебные игроки",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_UNITS = "Индикаторы противников",
|
||||||
|
COMBATLOG_FILTER_STRING_ME = "Я",
|
||||||
|
COMBATLOG_FILTER_STRING_MY_PET = "Питомец",
|
||||||
|
COMBATLOG_FILTER_STRING_NEUTRAL_UNITS = "Нейтральный",
|
||||||
|
COMBATLOG_FILTER_STRING_UNKNOWN_UNITS = "Неизвестно",
|
||||||
|
COMBATLOG_HIGHLIGHT_ABILITY = "Способность",
|
||||||
|
COMBATLOG_HIGHLIGHT_DAMAGE = "Урон",
|
||||||
|
COMBATLOG_HIGHLIGHT_KILL = "Убийства",
|
||||||
|
COMBATLOG_HIGHLIGHT_SCHOOL = "Школы магии",
|
||||||
|
COMBATLOG_UNKNOWN_UNIT = "Что-то",
|
||||||
|
COMBAT_FACTION_CHANGE = "Репутация",
|
||||||
|
COMBAT_HONOR_GAIN = "Честь",
|
||||||
|
COMBAT_LOG_UNIT_YOU_ENABLED = "1",
|
||||||
|
COMBAT_MISC_INFO = "Разное",
|
||||||
|
COMBAT_XP_GAIN = "Опыт",
|
||||||
|
CONFIRM_COMBAT_FILTER_DEFAULTS = "Вы действительно хотите сбросить настройки фильтров?",
|
||||||
|
CONFIRM_COMBAT_FILTER_DELETE = "Удалить этот фильтр?",
|
||||||
|
COPY_FILTER = "Копировать",
|
||||||
|
DAMAGE_NUMBER = "Величина урона",
|
||||||
|
DAMAGE_SCHOOL_TEXT = "Школа магии",
|
||||||
|
DAMAGE_SHIELD = "Ответные повреждения",
|
||||||
|
DAMAGE_SHIELD_COMBATLOG_TOOLTIP = "Отображение сообщений об уроне, наносимом заклинаниями или способностями в ответ на атаки в ближнем бою (\"Шипы\" и т. п.).",
|
||||||
|
DEATHS_COMBATLOG_TOOLTIP = "Отображение сообщений о смерти различных существ.",
|
||||||
|
DEFAULT_COMBATLOG_FILTER_NAME = "Фильтр %d",
|
||||||
|
DISPELS = "Развеивание",
|
||||||
|
DISPEL_AURA_COMBATLOG_TOOLTIP = "Отображение сообщений об исчезновении, разрушении или похищении аур.",
|
||||||
|
DONE_BY = "Источник:",
|
||||||
|
DONE_TO = "Цель:",
|
||||||
|
DRAINS = "Похищение",
|
||||||
|
ENTER_FILTER_NAME = "Введите название фильтра:",
|
||||||
|
ENTIRE_LINE = "Вся строка",
|
||||||
|
ENTIRE_LINE_COMBATLOG_TOOLTIP = "Цветовое выделение всей строки в соответствии с параметрами, указанными ниже.",
|
||||||
|
ENVIRONMENTAL_DAMAGE = "Урон от окружающего мира",
|
||||||
|
ENVIRONMENTAL_DAMAGE_COMBATLOG_TOOLTIP = "Отображение сообщений о получении разными персонажами урона от падения, утопления или погружения в лаву.",
|
||||||
|
EXAMPLE_SPELL_FIREBALL = "Огненный шар",
|
||||||
|
EXAMPLE_SPELL_FROSTBOLT = "Ледяная стрела",
|
||||||
|
EXAMPLE_TARGET_MONSTER = "Монстр",
|
||||||
|
EXAMPLE_TEXT = "Пример текста:",
|
||||||
|
EXTRA_ATTACKS = "Дополнит. атаки",
|
||||||
|
FAILURES = "Неудачное",
|
||||||
|
FILTER_BY_ENEMIES_COMBATLOG_TOOLTIP = "Действия враждебных игроков, питомцев и существ.",
|
||||||
|
FILTER_BY_FRIENDS_COMBATLOG_TOOLTIP = "Действия дружественных игроков, питомцев и существ.",
|
||||||
|
FILTER_BY_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Действия враждебных игроков.",
|
||||||
|
FILTER_BY_ME_COMBATLOG_TOOLTIP = "Действия вашего персонажа, а также его ловушек и заклинаний.",
|
||||||
|
FILTER_BY_NEUTRAL_COMBATLOG_TOOLTIP = "Действия нейтральных существ.",
|
||||||
|
FILTER_BY_PET_COMBATLOG_TOOLTIP = "Действия ваших питомцев, вызванных существ и подчиненных персонажей.",
|
||||||
|
FILTER_BY_UNKNOWN_COMBATLOG_TOOLTIP = "Действия окружающего мира: падение, кислота, лава и т.п.",
|
||||||
|
FILTER_NAME = "Название фильтра",
|
||||||
|
FILTER_TO_FRIENDS_COMBATLOG_TOOLTIP = "Действия в отношении дружественных игроков, питомцев и существ.",
|
||||||
|
FILTER_TO_HOSTILE_COMBATLOG_TOOLTIP = "Действия в отношении враждебных питомцев и существ.",
|
||||||
|
FILTER_TO_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "Действия в отношении враждебных игроков.",
|
||||||
|
FILTER_TO_ME_COMBATLOG_TOOLTIP = "Действия в отношении вашего персонажа.",
|
||||||
|
FILTER_TO_NEUTRAL_COMBATLOG_TOOLTIP = "Действия в отношении нейтральных существ.",
|
||||||
|
FILTER_TO_PET_COMBATLOG_TOOLTIP = "Действия в отношении ваших питомцев, вызванных существ и подчиненных персонажей.",
|
||||||
|
FILTER_TO_UNKNOWN_COMBATLOG_TOOLTIP = "Действия в отношении невидимых целей.",
|
||||||
|
FORMATTING = "Формат",
|
||||||
|
FULL_TEXT_COMBATLOG_TOOLTIP = "Показывать записи журнала боя в полном виде.",
|
||||||
|
HARMFUL_AURA_COMBATLOG_TOOLTIP = "Отображение сообщений о приобретении или потере губительной ауры вашим персонажем.",
|
||||||
|
HEALS = "Лечение",
|
||||||
|
HIGHLIGHTING = "Подсветка:",
|
||||||
|
HIGHLIGHT_ABILITY_COMBATLOG_TOOLTIP = "Подсветка названий способностей в боевых сообщениях.",
|
||||||
|
HIGHLIGHT_DAMAGE_COMBATLOG_TOOLTIP = "Подсветка величины урона в боевых сообщениях.",
|
||||||
|
HIGHLIGHT_KILL_COMBATLOG_TOOLTIP = "Подсветка всей строки при убийстве противника вами или другим членом вашей группы.",
|
||||||
|
HIGHLIGHT_SCHOOL_COMBATLOG_TOOLTIP = "Подсветка названий школ магии в боевых сообщениях.",
|
||||||
|
HOSTILE = "Губительные",
|
||||||
|
INTERRUPTS = "Прерывание",
|
||||||
|
ITEM_NAMES = "Названия предметов",
|
||||||
|
ITEM_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Заключение в скобки названий предметов.",
|
||||||
|
KILLS_COMBATLOG_TOOLTIP = "Отображение сообщений об убийстве противников членами вашей группы.",
|
||||||
|
MELEE = "Ближний бой",
|
||||||
|
MELEE_COMBATLOG_TOOLTIP = "Отображение информации об ударах ближнего боя.",
|
||||||
|
MESSAGE_SOURCES = "Источники сообщений",
|
||||||
|
MISSES = "Промах",
|
||||||
|
MOVE_FILTER_DOWN = "Переместить ниже",
|
||||||
|
MOVE_FILTER_UP = "Переместить выше",
|
||||||
|
OTHER = "Другое",
|
||||||
|
PERIODIC = "Периодические эффекты",
|
||||||
|
POWER_GAINS = "Получение энергии",
|
||||||
|
POWER_GAINS_COMBATLOG_TOOLTIP = "Отображение сообщений о восполнении маны, энергии, ярости, концентрации, энергии ци, энергии Света или сфер Тьмы с помощью заклинаний или способностей.",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING = "Все",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING_TOOLTIP = "Отображение всех сообщений о бое.",
|
||||||
|
QUICKBUTTON_NAME_KILLS = "Убийства",
|
||||||
|
QUICKBUTTON_NAME_KILLS_TOOLTIP = "Показ всех смертей и убийств.",
|
||||||
|
QUICKBUTTON_NAME_ME = "Что случилось с персонажем?",
|
||||||
|
QUICKBUTTON_NAME_ME_TOOLTIP = "Отображение всех действий в отношении вашего персонажа.",
|
||||||
|
QUICKBUTTON_NAME_SELF = "Персонаж",
|
||||||
|
QUICKBUTTON_NAME_SELF_TOOLTIP = "Отображение сообщений о действиях вашего персонажа и в отношении него.",
|
||||||
|
QUICK_BUTTON_COMBATLOG_TOOLTIP = "Помещение ссылки на фильтр в окно чата.",
|
||||||
|
RANGED = "Дальний бой",
|
||||||
|
RANGED_COMBATLOG_TOOLTIP = "Природа",
|
||||||
|
RANGE_DAMAGE_COMBATLOG_TOOLTIP = "Отображение информации об атаках дальнего боя, наносящих полный или частичный урон.",
|
||||||
|
RANGE_MISSED_COMBATLOG_TOOLTIP = "Отображение информации об атаках дальнего боя, не наносящих урона.",
|
||||||
|
RESURRECT = "Воскрешений",
|
||||||
|
SETTINGS = "Параметры",
|
||||||
|
SHOW_BRACES = "Выделять скобками",
|
||||||
|
SHOW_BRACES_COMBATLOG_TOOLTIP = "Выделение ссылок в сообщениях журнала боя.",
|
||||||
|
SHOW_QUICK_BUTTON = "Быстрый вызов",
|
||||||
|
SHOW_TIMESTAMP = "Отображать время",
|
||||||
|
SOURCE = "Источник:",
|
||||||
|
SPECIAL = "Особые",
|
||||||
|
SPELLS_COMBATLOG_TOOLTIP = "Отображение сообщений о заклинаниях и особых способностях.",
|
||||||
|
SPELL_CASTING = "Применение заклинаний",
|
||||||
|
SPELL_CASTING_COMBATLOG_TOOLTIP = "Отображение сообщений о применении заклинаний.",
|
||||||
|
SPELL_CAST_FAILED_COMBATLOG_TOOLTIP = "Отображение сообщений о невозможности применения заклинаний.",
|
||||||
|
SPELL_CAST_START_COMBATLOG_TOOLTIP = "Отображение сообщений о начале применения заклинаний.",
|
||||||
|
SPELL_CAST_SUCCESS_COMBATLOG_TOOLTIP = "Отображение сообщений об успешном завершении заклинаний.",
|
||||||
|
SPELL_COLOR_BY_SCHOOL_COMBATLOG_TOOLTIP = "Цветовое выделение названий заклинаний в соответствии с школами магии.",
|
||||||
|
SPELL_DAMAGE_COMBATLOG_TOOLTIP = "Отображение сообщений о нанесении урона заклинаниями или способностями.",
|
||||||
|
SPELL_DAMAGE_NUMBER_COMBATLOG_TOOLTIP = "Цветовое выделение величины урона (кроме ближнего боя).",
|
||||||
|
SPELL_DAMAGE_SCHOOL_COMBATLOG_TOOLTIP = "Цветовое выделение школ урона (\"Темной магии\" и т.п.)",
|
||||||
|
SPELL_DRAIN_COMBATLOG_TOOLTIP = "Отображение сообщений о снижении объема маны, энергии, ярости и концентрации под влиянием заклинаний или способностей.",
|
||||||
|
SPELL_EXTRA_ATTACKS_COMBATLOG_TOOLTIP = "Отображение сообщений о дополнительных атаках, вызванных заклинаниями или способностями.",
|
||||||
|
SPELL_HEAL_COMBATLOG_TOOLTIP = "Отображение сообщений об исцеляющих заклинаниях и способностях.",
|
||||||
|
SPELL_INSTAKILL_COMBATLOG_TOOLTIP = "Отображение сообщений об особых заклинаниях: например, повреждающих экипировку или наносящих урон питомцам.",
|
||||||
|
SPELL_INTERRUPT_COMBATLOG_TOOLTIP = "Отображение сообщений о прерывании заклинаниями или способностями действия других заклинаний.",
|
||||||
|
SPELL_MISSED_COMBATLOG_TOOLTIP = "Отображение сообщений о неудачном применении боевых заклинаний и способностей, в т.ч., связанном с уклонением, парированием, блоком, отражением, невосприимчивостью, поглощением и уверткой.",
|
||||||
|
SPELL_NAMES = "Названия заклинаний",
|
||||||
|
SPELL_NAMES_COMBATLOG_TOOLTIP = "Цветовое выделение названий заклинаний.",
|
||||||
|
SPELL_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Заключение в скобки названий заклинаний.",
|
||||||
|
SPELL_PERIODIC_COMBATLOG_TOOLTIP = "Отображение информации о заклинаниях постепенного действия.",
|
||||||
|
SPELL_PERIODIC_DAMAGE_COMBATLOG_TOOLTIP = "Отображение сообщений о периодическом уроне от заклинаний или способностей (\"Слово Тьмы: Боль\", \"Порча\" и т. п.).",
|
||||||
|
SPELL_PERIODIC_HEAL_COMBATLOG_TOOLTIP = "Отображение сообщений о периодическом исцелении от заклинаний или способностей (\"Обновление\", \"Омоложение\" и т. п.).",
|
||||||
|
SPELL_PERIODIC_MISSED_COMBATLOG_TOOLTIP = "Отображение сообщений о частично неудачном применении боевых заклинаний и способностей, в т.ч., связанных с невосприимчивостью, поглощением и уверткой.",
|
||||||
|
SPELL_PERIODIC_OTHER_COMBATLOG_TOOLTIP = "Отображение сообщений о других видах периодических эффектов заклинаний и способностей, например, восполнении или похищении маны.",
|
||||||
|
SPELL_RESURRECT_COMBATLOG_TOOLTIP = "Показывать сообщения о воскрешении игрока или существа с помощью заклинания или способности.",
|
||||||
|
SPELL_SUMMON_COMBATLOG_TOOLTIP = "Показывать сообщения, когда с помощью заклинания призывается существо.",
|
||||||
|
START = "Начало",
|
||||||
|
STRING_SCHOOL_UNKNOWN = "Неизвестно",
|
||||||
|
SUCCESS = "Успешное",
|
||||||
|
SUMMONS = "Призывов",
|
||||||
|
SWING_DAMAGE_COMBATLOG_TOOLTIP = "Отображение информации об ударах в ближнем бою, наносящих полный или частичный урон.",
|
||||||
|
SWING_MISSED_COMBATLOG_TOOLTIP = "Отображение атак в ближнем бою, не наносящих урона.",
|
||||||
|
TEXT_MODE_A = "A",
|
||||||
|
TEXT_MODE_A_STRING_1 = "%s %s %s %s %s. %s %11$s",
|
||||||
|
TEXT_MODE_A_STRING_2 = "%2$s |3-1(%1$s) - %3$s - %4$s - %5$s%6$s.",
|
||||||
|
TEXT_MODE_A_STRING_3 = "%1$s %5$s %3$s %4$s %2$s. %6$s",
|
||||||
|
TEXT_MODE_A_STRING_ACTION = "|Haction:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_ITEM = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_SPELL = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_UNIT = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_DEST_ICON = "|Hicon:%d:dest|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_DEST_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_ITEM = "|Hitem:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_POSSESSIVE = "%s",
|
||||||
|
TEXT_MODE_A_STRING_REMAINING_POINTS = "Осталось: %s",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_ABSORB = "Поглощено: %s ед. урона.",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_BLOCK = "Заблокировано: %s ед. урона.",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL = ": критический эффект",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL_SPELL = ": критический эффект",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRUSHING = ": сокрушительный удар",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_FORMAT = "$resultAmount $resultType",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_GLANCING = ": удар пришелся вскользь",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_MULTISTRIKE = "Многократная атака.",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERENERGIZE = "(%s: перенасыщение энергией)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERHEALING = "Избыточное лечение: %s.",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERKILLING = " (избыточный урон: %s)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_PARRY = "Парировано: %d.",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_REFLECT = "Атака отражена",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_RESIST = " (сопротивление %s |4единице:единицам:единицам; урона)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_VULNERABILITY = " (%s |4единица:единицы:единиц; урона за счет уязвимости)",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_ICON = "|Hicon:%s:source|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL_EXTRA = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_TIMESTAMP = "%s> %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_SCHOOL = "%s (%s)",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_TYPE = "%s (%s)",
|
||||||
|
TEXT_MODE_A_TIMESTAMP = "%H:%M:%S",
|
||||||
|
TIMESTAMP_COMBATLOG_TOOLTIP = "Отображение даты и времени в сообщениях журнала боя.",
|
||||||
|
UNIT_COLORS = "Цвета объектов:",
|
||||||
|
UNIT_NAMES = "Объект действия",
|
||||||
|
UNIT_NAMES_COMBATLOG_TOOLTIP = "Цветовое выделение названий объектов.",
|
||||||
|
UNIT_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "Заключение в скобки названий объектов.",
|
||||||
|
UNIT_YOU = "Вы",
|
||||||
|
UNIT_YOU_DEST = "Вы",
|
||||||
|
UNIT_YOU_DEST_POSSESSIVE = "Ваш",
|
||||||
|
UNIT_YOU_SOURCE = "Вы",
|
||||||
|
UNIT_YOU_SOURCE_POSSESSIVE = "Ваше",
|
||||||
|
USE_FULL_TEXT_MODE = "Использовать полный режим",
|
||||||
|
}
|
||||||
Vendored
+677
@@ -0,0 +1,677 @@
|
|||||||
|
-- Classic Era GlobalStrings (CN) that the combat log reads
|
||||||
|
-- and the 1.12 client lacks. Generated; do not edit by hand.
|
||||||
|
pfUI_locale["zhCN"]["combatlog"] = {
|
||||||
|
ACTION_DAMAGE_SHIELD = "伤害",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT = "%1$s%2$s将%9$s点%7$s伤害反射给%4$s。%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_FULL_TEXT_NO_SOURCE = "%2$s将%9$s点%7$s伤害反射给%4$s。%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED = "未命中",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK = "(格挡)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT = "%1$s%2$s被%4$s格挡了。%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s被%4$s格挡了。%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT = "(偏转)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT = "%1$s%2$s被%4$s偏转了。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%2$s被%4$s偏转了。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE = "(躲闪)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT = "%1$s%2$s被%4$s躲闪了。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s被%4$s躲闪了。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED = "(闪避)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT = "%1$s%2$s被%4$s闪避了。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%2$s被%4$s闪避了。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT = "%1$s%2$s未命中%4$s。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_FULL_TEXT_NO_SOURCE = "%2$s未命中%4$s。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE = "(免疫)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT = "%1$s%2$s失败。%4$s对此免疫。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s失败。%4$s对此免疫。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS = "(未命中)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT = "%1$s%2$s未命中%4$s。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s未命中%4$s。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY = "(招架)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT = "%1$s%2$s被%4$s招架了。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s被%4$s招架了。",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST = "(抵抗)",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT = "%1$s%2$s被%4$s完全抵抗了。%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s被%4$s完全抵抗了。%6$s",
|
||||||
|
ACTION_DAMAGE_SHIELD_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SHIELD_POSSESSIVE = "1",
|
||||||
|
ACTION_DAMAGE_SPLIT = "分担伤害",
|
||||||
|
ACTION_DAMAGE_SPLIT_ABSORBED_FULL_TEXT = "%4$s %6$s吸收了%1$s的%2$s点伤害。",
|
||||||
|
ACTION_DAMAGE_SPLIT_FULL_TEXT = "%1$s%2$s对%4$s$s造成%9$s点伤害。",
|
||||||
|
ACTION_DAMAGE_SPLIT_POSSESSIVE = "0",
|
||||||
|
ACTION_DAMAGE_SPLIT_RESULT_FULL_TEXT = "%1$s的%2$s对%4$s %6$s造成%9$s点伤害。",
|
||||||
|
ACTION_ENCHANT_APPLIED = "附魔",
|
||||||
|
ACTION_ENCHANT_APPLIED_FULL_TEXT = "%1$s在%4$s%5$s上施放了%2$s。",
|
||||||
|
ACTION_ENCHANT_APPLIED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENCHANT_REMOVED = "附魔消失",
|
||||||
|
ACTION_ENCHANT_REMOVED_FULL_TEXT = "%2$s从%4$s%5$s上消失了。",
|
||||||
|
ACTION_ENCHANT_REMOVED_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE = "伤害",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING = "溺水",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_FULL_TEXT = "%4$s溺水,损失了%9$s点生命值。",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_DROWNING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING = "掉落",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_FULL_TEXT = "%4$s受到%9$s点掉落伤害。",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FALLING_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE = "疲倦",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_FULL_TEXT = "%4$s筋疲力尽,损失了%9$s点生命值。",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FATIGUE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE = "火焰",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_FULL_TEXT = "%4$s受到了%9$s点火焰伤害。",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FIRE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_FULL_TEXT = "%4$s因环境伤害而损失了%9$s点生命值。",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA = "岩浆",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_FULL_TEXT = "%4$s在岩浆中,损失了%9$s点生命值。%6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_LAVA_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_POSSESSIVE = "0",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME = "淤泥",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_FULL_TEXT = "%4$s在淤泥中,损失了%9$s点生命值。%6$s",
|
||||||
|
ACTION_ENVIRONMENTAL_DAMAGE_SLIME_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL = "杀死了",
|
||||||
|
ACTION_PARTY_KILL_FULL_TEXT = "%1$s杀死了%4$s!",
|
||||||
|
ACTION_PARTY_KILL_POSSESSIVE = "0",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS = "被击昏",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_FULL_TEXT = "%1$s击昏了%4$s!",
|
||||||
|
ACTION_PARTY_KILL_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_RANGED = "射击",
|
||||||
|
ACTION_RANGE_DAMAGE = "命中",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT = "%1$s远程射击命中%4$s造成了%5$s伤害。%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_FULL_TEXT_NO_SOURCE = "一次远程射击命中%4$s造成了%5$s伤害。%6$s",
|
||||||
|
ACTION_RANGE_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED = "未命中",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB = "(吸收)",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_FULL_TEXT = "%1$s射击被%4$s吸收了。%6$s",
|
||||||
|
ACTION_RANGE_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK = "(格挡)",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_FULL_TEXT = "%1$s射击被%4$s格挡了。%6$s",
|
||||||
|
ACTION_RANGE_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT = "(偏转)",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_FULL_TEXT = "%1$s射击被%4$s偏转了。",
|
||||||
|
ACTION_RANGE_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_DODGE = "(躲闪)",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_FULL_TEXT = "%1$s射击被%4$s躲闪了。",
|
||||||
|
ACTION_RANGE_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_EVADE = "(闪避)",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_FULL_TEXT = "%1$s射击被%4$s闪避了。",
|
||||||
|
ACTION_RANGE_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_FULL_TEXT = "%1$s射击未命中%4$s。",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE = "(免疫)",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_FULL_TEXT = "%1$s射击失败。%4$s对此免疫。",
|
||||||
|
ACTION_RANGE_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE = "(未命中)",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_FULL_TEXT = "%1$s射击未命中%4$s。",
|
||||||
|
ACTION_RANGE_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_MISS = "(未命中)",
|
||||||
|
ACTION_RANGE_MISSED_MISS_FULL_TEXT = "%1$s射击未命中%4$s。",
|
||||||
|
ACTION_RANGE_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_PARRY = "(招架)",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_FULL_TEXT = "%1$s射击被%4$s招架了。",
|
||||||
|
ACTION_RANGE_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_RANGE_MISSED_RESIST = "(抵抗)",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_FULL_TEXT = "%1$s射击被%4$s完全抵抗了。%6$s",
|
||||||
|
ACTION_RANGE_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED = "附加",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF = "获得",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT = "%4$s获得了%1$s%2$s。",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_FULL_TEXT_NO_SOURCE = "%4$s获得了%2$s。",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT = "%4$s获得了%1$s %2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s获得了%2$s. %11$s",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF = "影响",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT = "%4$s受到了%1$s%2$s的影响。",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s受到了%2$s的影响。",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT = "%4$s受到了%1$s %2$s. %11$s的影响",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%4$s受到了%2$s. %11$s的影响",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE = "堆叠",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF = "堆叠",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT = "%4$s获得了%1$s%2$s(%9$s)。",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%4$s获得了%2$s(%9$s)。",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF = "影响",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT = "%4$s受到了%1$s%2$s的影响(%9$s)。",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s受到了%2$s的影响(%9$s)。",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_APPLIED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN = "打破",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF = "打破",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT = "%1$s打破了%4$s%2$s。",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_FULL_TEXT_NO_SOURCE = "%1$s%2$s被某目标打破了。",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_BUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF = "打破",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT = "%1$s打破了%4$s%2$s。",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%1$s%2$s被某目标打破了。",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_DEBUFF_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF = "打破",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT = "%1$s的%5$s打破了%4$s%2$s。",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_FULL_TEXT_NO_SOURCE = "%5$s打破了%4$s%2$s。",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF = "打破",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT = "%1$s的%5$s打破了%4$s%2$s。",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_FULL_TEXT_NO_SOURCE = "%5$s打破了%4$s%2$s。",
|
||||||
|
ACTION_SPELL_AURA_BROKEN_SPELL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH = "被刷新",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF = "被刷新",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT = "%1$s%2$s在%4$s身上刷新了。",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_FULL_TEXT_NO_SOURCE = "%2$s在%4$s身上刷新了。",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s在%4$s. %11$s身上刷新了",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s在%4$s. %11$s的身上刷新了",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF = "被刷新",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT = "%1$s%2$s在%4$s身上刷新了。",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s在%4$s身上刷新了。",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_MASTER = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s在%4$s. %11$s身上刷新了",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s在%4$s. %11$s的身上刷新了",
|
||||||
|
ACTION_SPELL_AURA_REFRESH_MASTER = "2",
|
||||||
|
ACTION_SPELL_AURA_REMOVED = "移除",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF = "消失",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT = "%1$s%2$s从%4$s身上消失了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_FULL_TEXT_NO_SOURCE = "%2$s从%4$s身上消失了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s从%4$s. %11$s身上消失了",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_BUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s从%4$s. %11$s的身上消失了",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF = "消散",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT = "%1$s%2$s从%4$s身上消散了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s从%4$s身上消散了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT = "%1$s %2$s从%4$s. %11$s身上消散了",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DEBUFF_WITH_POINTS_FULL_TEXT_NO_SOURCE = "%2$s从%4$s. %11$s的身上消散了",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE = "降低",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF = "降低",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT = "%1$s%2$s(%9$s)衰减了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_FULL_TEXT_NO_SOURCE = "%2$s(%9$s)衰减了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF = "衰减",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT = "%1$s%2$s(%9$s)消退了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s(%9$s)消退了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_DOSE_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT = "%1$s%2$s被从%4$s身上移除了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_FULL_TEXT_NO_SOURCE = "%1$s%2$s被从%4$s身上移除了。",
|
||||||
|
ACTION_SPELL_AURA_REMOVED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE = "打击",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT = "%1$s%2$s打击%4$s造成了%5$s伤害。%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s打击%4$s造成了%5$s伤害。%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_BUILDING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL = "修理",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT = "%1$s%2$s修理%4$s,恢复了%9$s点生命值。%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_FULL_TEXT_NO_SOURCE = "%2$s修理%4$s,恢复了%9$s点生命值。%6$s",
|
||||||
|
ACTION_SPELL_BUILDING_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED = "失败",
|
||||||
|
ACTION_SPELL_CAST_FAILED_FULL_TEXT = "%1$s%2$s未能施放。%6$s",
|
||||||
|
ACTION_SPELL_CAST_FAILED_MASTER = "1",
|
||||||
|
ACTION_SPELL_CAST_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_CAST_START = "开始施放",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT = "%1$s开始向%4$s施放%2$s。",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_DEST = "%1$s开始施放%2$s。",
|
||||||
|
ACTION_SPELL_CAST_START_FULL_TEXT_NO_SOURCE = "某物体开始对%4$s施放%2$s。",
|
||||||
|
ACTION_SPELL_CAST_START_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_START_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS = "施放",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT = "%1$s向%4$s施放了%2$s。",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_DEST = "%1$s施放了%2$s。",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_FULL_TEXT_NO_SOURCE = "某目标对%4$s施放了%2$s。",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_MASTER = "2",
|
||||||
|
ACTION_SPELL_CAST_SUCCESS_POSSESSIVE = "0",
|
||||||
|
ACTION_SPELL_CREATE = "制造",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT = "%1$s%2$s制造了一个%4$s。%6$s",
|
||||||
|
ACTION_SPELL_CREATE_FULL_TEXT_NO_SOURCE = "%2$s制造了一个%4$s。%6$s",
|
||||||
|
ACTION_SPELL_CREATE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DAMAGE = "命中",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT = "%1$s%2$s命中%4$s造成%5$s伤害。%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_FULL_TEXT_NO_SOURCE = "%2$s命中%4$s,造成%5$s点伤害。%6$s",
|
||||||
|
ACTION_SPELL_DAMAGE_MASTER = "1",
|
||||||
|
ACTION_SPELL_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL = "驱散",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF = "驱散",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT = "%4$s%5$s被%1$s%2$s驱散了。",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_FULL_TEXT_NO_SOURCE = "%4$s%5$s被%2$s驱散了。",
|
||||||
|
ACTION_SPELL_DISPEL_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF = "净化",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT = "%4$s%5$s被%1$s%2$s净化了。",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_FULL_TEXT_NO_SOURCE = "%4$s%5$s被%2$s净化了。",
|
||||||
|
ACTION_SPELL_DISPEL_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED = "驱散失败",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT = "%1$s%2$s未能驱散%4$s%5$s。",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_FULL_TEXT_NO_SOURCE = "%2$s未能驱散%4$s%5$s。",
|
||||||
|
ACTION_SPELL_DISPEL_FAILED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DISPEL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DRAIN = "吸取",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT = "%1$s%2$s从%4$s身上吸取了%9$s点%8$s。",
|
||||||
|
ACTION_SPELL_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s从%4$s身上吸取了%9$s点%8$s。",
|
||||||
|
ACTION_SPELL_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE = "耐久度下降",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL = "完全耐久度下降",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_FULL_TEXT = "%1$s%2$s对%4$s造成伤害:所有装备受损。",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_ALL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_FULL_TEXT = "%1$s%2$s对%4$s造成伤害:%5$s受损。",
|
||||||
|
ACTION_SPELL_DURABILITY_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE = "补充",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT = "%4$s因%1$s%2$s获得了%9$s点%8$s。",
|
||||||
|
ACTION_SPELL_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s因%2$s获得了%9$s点%8$s。",
|
||||||
|
ACTION_SPELL_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_ENERGIZE_RESULT = "获得%9$s点%8$s",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS = "获得额外攻击",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT = "%1$s通过%2$s获得了%9$s次额外攻击。",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_FULL_TEXT_NO_SOURCE = "通过%2$s获得%9$s次额外攻击。",
|
||||||
|
ACTION_SPELL_EXTRA_ATTACKS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_HEAL = "治疗",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT = "%1$s%2$s为%4$s恢复了%9$s点生命值。%6$s",
|
||||||
|
ACTION_SPELL_HEAL_FULL_TEXT_NO_SOURCE = "%2$s为%4$s恢复了%9$s点生命值。%6$s",
|
||||||
|
ACTION_SPELL_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL = "杀死了",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT = "%1$s%2$s杀死了%4$s。",
|
||||||
|
ACTION_SPELL_INSTAKILL_FULL_TEXT_NO_SOURCE = "%2$s杀死了%4$s。",
|
||||||
|
ACTION_SPELL_INSTAKILL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS = "被击昏",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT = "%1$s %2$s击昏了%4$s。",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_FULL_TEXT_NO_SOURCE = "%2$s击昏了%4$s。",
|
||||||
|
ACTION_SPELL_INSTAKILL_UNCONSCIOUS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_INTERRUPT = "打断",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT = "%1$s%2$s打断了%4$s%5$s。",
|
||||||
|
ACTION_SPELL_INTERRUPT_FULL_TEXT_NO_SOURCE = "%2$s打断了%4$s%5$s。",
|
||||||
|
ACTION_SPELL_INTERRUPT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH = "吸取",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT = "%1$s%2$s从%4$s身上吸取了%9$s点%8$s。%1$s获得了%10$s点%8$s。",
|
||||||
|
ACTION_SPELL_LEECH_FULL_TEXT_NO_SOURCE = "%2$s从%4$s身上吸取了%9$s点%8$s。",
|
||||||
|
ACTION_SPELL_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_LEECH_RESULT = "获得%10$s点%8$s",
|
||||||
|
ACTION_SPELL_MISSED = "未命中",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB = "被吸收",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT = "%1$s%2$s被%4$s吸收了。%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%2$s被%4$s吸收了。%6$s",
|
||||||
|
ACTION_SPELL_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK = "被格挡",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT = "%1$s%2$s被%4$s格挡了。%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s被%4$s格挡了。%6$s",
|
||||||
|
ACTION_SPELL_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT = "偏转",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT = "%1$s%2$s被%4$s偏转了。",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_FULL_TEXT_NO_SOURCE = "%2$s被%4$s偏转了。",
|
||||||
|
ACTION_SPELL_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_DODGE = "被躲闪",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT = "%1$s%2$s被%4$s躲闪了。",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s被%4$s躲闪了。",
|
||||||
|
ACTION_SPELL_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_EVADE = "被闪避",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT = "%1$s%2$s被%4$s闪避了。",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_FULL_TEXT_NO_SOURCE = "%2$s被%4$s闪避了。",
|
||||||
|
ACTION_SPELL_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT = "%1$s%2$s未命中%4$s。",
|
||||||
|
ACTION_SPELL_MISSED_FULL_TEXT_NO_SOURCE = "%2$s未命中%4$s。",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE = "免疫",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT = "%1$s%2$s失败。%4$s对此免疫。",
|
||||||
|
ACTION_SPELL_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%2$s失败。%4$s对此免疫。",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE = "未命中",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT = "%1$s%2$s未命中%4$s。",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_FULL_TEXT_NO_SOURCE = "%2$s未命中%4$s。",
|
||||||
|
ACTION_SPELL_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_MISS = "未命中",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT = "%1$s%2$s未命中%4$s。",
|
||||||
|
ACTION_SPELL_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s未命中%4$s。",
|
||||||
|
ACTION_SPELL_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_PARRY = "被招架",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT = "%1$s%2$s被%4$s招架了。",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s被%4$s招架了。",
|
||||||
|
ACTION_SPELL_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT = "被反射",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT = "%1$s%2$s被%4$s反射了。",
|
||||||
|
ACTION_SPELL_MISSED_REFLECT_FULL_TEXT_NO_SOURCE = "%2$s被%4$s反射了。",
|
||||||
|
ACTION_SPELL_MISSED_RESIST = "被抵抗",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT = "%1$s%2$s被%4$s完全抵抗了。%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s被%4$s完全抵抗了。%6$s",
|
||||||
|
ACTION_SPELL_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE = "伤害",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT = "%4$s因%1$s%2$s受到了%5$s伤害。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_FULL_TEXT_NO_SOURCE = "%4$s因%2$s受到了%5$s伤害。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN = "吸取",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT = "%1$s%2$s从%4$s身上吸取了%9$s点%8$s。",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_FULL_TEXT_NO_SOURCE = "%2$s从%4$s身上吸取了%9$s点%8$s。",
|
||||||
|
ACTION_SPELL_PERIODIC_DRAIN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE = "补充",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT = "%4$s因%1$s%2$s获得了%9$s点%8$s。",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_FULL_TEXT_NO_SOURCE = "%4$s因%2$s获得了%9$s点%8$s。",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_ENERGIZE_RESULT = "获得$extraAmount点%8$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL = "治疗",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT = "%4$s因%1$s%2$s获得了%9$s点生命值。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_FULL_TEXT_NO_SOURCE = "%4$s因%2$s恢复了%9$s点生命值。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_HEAL_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH = "吸取",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT = "%1$s%2$s从%4$s身上吸取了%9$s点%8$s。%1$s获得了%10$s点%8$s。",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_FULL_TEXT_NO_SOURCE = "%2$s从%4$s身上吸取了%9$s点%8$s。%1$s获得了%10$s点%8$s。",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_LEECH_RESULT = "(获得%10$s点%8$s)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED = "未命中",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB = "(%1$s 吸收)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT = "%1$s%2$s被%4$s吸收了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_FULL_TEXT_NO_SOURCE = "%2$s暂时被%4$s吸收了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK = "(周期伤害被格挡)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT = "%1$s%2$s暂时被%4$s格挡了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_FULL_TEXT_NO_SOURCE = "%2$s暂时被%4$s格挡了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED = "(周期伤害被偏转)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT = "%1$s%2$s暂时被%4$s偏转了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_FULL_TEXT_NO_SOURCE = "%2$s暂时被%4$s偏转了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DEFLECTED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE = "(周期伤害被躲闪)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT = "%1$s%2$s暂时被%4$s躲闪了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_FULL_TEXT_NO_SOURCE = "%2$s暂时被%4$s躲闪了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED = "(周期伤害被闪避)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT = "%1$s%2$s暂时被%4$s闪避了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_FULL_TEXT_NO_SOURCE = "%2$s暂时被%4$s闪避了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_EVADED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT = "%1$s%2$s暂时未能对%4$s产生影响。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_FULL_TEXT_NO_SOURCE = "%2$s暂时未能影响%4$s。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE = "(免疫)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT = "%4$s对%1$s %2$s免疫。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_FULL_TEXT_NO_SOURCE = "%4$s对%2$s免疫。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS = "(周期伤害未命中)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT = "%1$s%2$s暂时未命中%4$s。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_FULL_TEXT_NO_SOURCE = "%2$s暂时未命中%4$s。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY = "(周期伤害被招架)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT = "%1$s%2$s暂时被%4$s招架了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_FULL_TEXT_NO_SOURCE = "%2$s暂时被%4$s招架了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST = "(周期伤害被抵抗)",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT = "%1$s%2$s未能对%4$s产生影响。%4$s抵抗了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_FULL_TEXT_NO_SOURCE = "%2$s未能影响%4$s。%4$s抵抗了。%6$s",
|
||||||
|
ACTION_SPELL_PERIODIC_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_RESURRECT = "复活",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT = "%1$s%2$s复活了%4$s。%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_FULL_TEXT_NO_SOURCE = "%2$s复活了%4$s。%6$s",
|
||||||
|
ACTION_SPELL_RESURRECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN = "偷取",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF = "偷取",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT = "%1$s%2$s偷取了%4$s%5$s。",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_FULL_TEXT_NO_SOURCE = "%2$s偷取了%4$s%5$s。",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_BUFF__POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF = "偷取",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT = "%1$s%2$s将%4$s$extraSpell转移给了%1$s。",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_FULL_TEXT_NO_SOURCE = "%2$s转移了%4$s$extraSpell。",
|
||||||
|
ACTION_SPELL_STOLEN_DEBUFF_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT = "%1$s%2$s偷取了%4$s%5$s。",
|
||||||
|
ACTION_SPELL_STOLEN_FULL_TEXT_NO_SOURCE = "%2$s偷取了%4$s%5$s。",
|
||||||
|
ACTION_SPELL_STOLEN_POSSESSIVE = "1",
|
||||||
|
ACTION_SPELL_SUMMON = "召唤",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT = "%1$s%2$s召唤了%4$s。%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_FULL_TEXT_NO_SOURCE = "%2$s召唤了%4$s。%6$s",
|
||||||
|
ACTION_SPELL_SUMMON_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING = "近战攻击",
|
||||||
|
ACTION_SWING_DAMAGE = "命中",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT = "%1$s近战攻击命中%4$s造成了%5$s伤害。%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_FULL_TEXT_NO_SOURCE = "一次近战攻击命中%4$s造成了%5$s伤害。%6$s",
|
||||||
|
ACTION_SWING_DAMAGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED = "未命中",
|
||||||
|
ACTION_SWING_MISSED_ABSORB = "(吸收)",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_FULL_TEXT = "%1$s攻击被%4$s吸收了。%6$s",
|
||||||
|
ACTION_SWING_MISSED_ABSORB_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_BLOCK = "(格挡)",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_FULL_TEXT = "%1$s攻击被%4$s格挡了。%6$s",
|
||||||
|
ACTION_SWING_MISSED_BLOCK_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT = "(偏转)",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_FULL_TEXT = "%1$s攻击被%4$s偏转了。",
|
||||||
|
ACTION_SWING_MISSED_DEFLECT_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_DODGE = "(躲闪)",
|
||||||
|
ACTION_SWING_MISSED_DODGE_FULL_TEXT = "%1$s攻击被%4$s躲闪了。",
|
||||||
|
ACTION_SWING_MISSED_DODGE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_EVADE = "(闪避)",
|
||||||
|
ACTION_SWING_MISSED_EVADE_FULL_TEXT = "%1$s攻击被%4$s闪避了。",
|
||||||
|
ACTION_SWING_MISSED_EVADE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_FULL_TEXT = "%1$s攻击未命中%4$s。",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE = "(免疫)",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_FULL_TEXT = "%1$s攻击失败。%4$s对此免疫。",
|
||||||
|
ACTION_SWING_MISSED_IMMUNE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE = "(未命中)",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_FULL_TEXT = "%1$s攻击未命中%4$s。",
|
||||||
|
ACTION_SWING_MISSED_MISFIRE_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_MISS = "(未命中)",
|
||||||
|
ACTION_SWING_MISSED_MISS_FULL_TEXT = "%1$s攻击未命中%4$s。",
|
||||||
|
ACTION_SWING_MISSED_MISS_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_PARRY = "(招架)",
|
||||||
|
ACTION_SWING_MISSED_PARRY_FULL_TEXT = "%1$s攻击被%4$s招架了。",
|
||||||
|
ACTION_SWING_MISSED_PARRY_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_POSSESSIVE = "1",
|
||||||
|
ACTION_SWING_MISSED_RESIST = "(抵抗)",
|
||||||
|
ACTION_SWING_MISSED_RESIST_FULL_TEXT = "%1$s攻击被%4$s完全抵抗了。%6$s",
|
||||||
|
ACTION_SWING_MISSED_RESIST_POSSESSIVE = "1",
|
||||||
|
ACTION_UNIT_BECCOMES_UNCONSCIOUS = "倒下",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_FULL_TEXT = "%4$s倒下了。",
|
||||||
|
ACTION_UNIT_BECOMES_UNCONSCIOUS_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DESTROYED = "摧毁",
|
||||||
|
ACTION_UNIT_DESTROYED_FULL_TEXT = "%4$s被摧毁了。",
|
||||||
|
ACTION_UNIT_DESTROYED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DIED = "死亡",
|
||||||
|
ACTION_UNIT_DIED_FULL_TEXT = "%4$s死亡了。",
|
||||||
|
ACTION_UNIT_DIED_POSSESSIVE = "0",
|
||||||
|
ACTION_UNIT_DISSIPATES = "消散",
|
||||||
|
ACTION_UNIT_DISSIPATES_FULL_TEXT = "%4$s消散了。",
|
||||||
|
ACTION_UNIT_DISSIPATES_POSSESSIVE = "0",
|
||||||
|
ADD = "添加",
|
||||||
|
ADDITIONAL_FILTERS = "更多过滤条件",
|
||||||
|
ADD_FILTER = "添加过滤",
|
||||||
|
AURAS = "光环",
|
||||||
|
AURAS_COMBATLOG_TOOLTIP = "显示有关增益和负面状态效果的信息。",
|
||||||
|
BENEFICIAL = "增益",
|
||||||
|
BENEFICIAL_AURA_COMBATLOG_TOOLTIP = "当你获得或失去有益光环时显示信息。",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_BOTH = "显示所有与%s有关的信息?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_EVERYTHING = "全部显示",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_INCOMING = "%s发生了什么事情?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING = "%s做了些什么?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_OUTGOING_ME = "%s对你做了什么?",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_RESET = "重置",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SAVE = "保存为新的过滤条件",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_HIDE = "隐藏与这一条类似的信息。",
|
||||||
|
BLIZZARD_COMBAT_LOG_MENU_SPELL_LINK = "将%s链接到聊天频道中。",
|
||||||
|
BY_SOURCE = "按来源",
|
||||||
|
BY_SOURCE_COMBATLOG_TOOLTIP = "按照施法者以颜色区分。",
|
||||||
|
BY_TARGET = "按目标",
|
||||||
|
BY_TARGET_COMBATLOG_TOOLTIP = "按照目标以颜色区分。",
|
||||||
|
COLORIZE = "彩色标记:",
|
||||||
|
COLORS = "颜色",
|
||||||
|
COLOR_BY_SCHOOL = "按类型区分颜色",
|
||||||
|
COMBATLOG_DEFAULTS = "战斗记录默认",
|
||||||
|
COMBATLOG_FILTER_STRING_CUSTOM_UNIT = "自定义单位",
|
||||||
|
COMBATLOG_FILTER_STRING_FRIENDLY_UNITS = "友方",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_PLAYERS = "敌方玩家",
|
||||||
|
COMBATLOG_FILTER_STRING_HOSTILE_UNITS = "敌方单位",
|
||||||
|
COMBATLOG_FILTER_STRING_ME = "我",
|
||||||
|
COMBATLOG_FILTER_STRING_MY_PET = "宠物",
|
||||||
|
COMBATLOG_FILTER_STRING_NEUTRAL_UNITS = "中立",
|
||||||
|
COMBATLOG_FILTER_STRING_UNKNOWN_UNITS = "未知",
|
||||||
|
COMBATLOG_HIGHLIGHT_ABILITY = "技能",
|
||||||
|
COMBATLOG_HIGHLIGHT_DAMAGE = "伤害",
|
||||||
|
COMBATLOG_HIGHLIGHT_KILL = "杀死",
|
||||||
|
COMBATLOG_HIGHLIGHT_SCHOOL = "类型",
|
||||||
|
COMBATLOG_UNKNOWN_UNIT = "某目标",
|
||||||
|
COMBAT_FACTION_CHANGE = "声望",
|
||||||
|
COMBAT_HONOR_GAIN = "荣誉",
|
||||||
|
COMBAT_LOG_UNIT_YOU_ENABLED = "1",
|
||||||
|
COMBAT_MISC_INFO = "其它信息",
|
||||||
|
COMBAT_XP_GAIN = "经验",
|
||||||
|
CONFIRM_COMBAT_FILTER_DEFAULTS = "你确定要将过滤条件设定为初始状态吗?",
|
||||||
|
CONFIRM_COMBAT_FILTER_DELETE = "你确认要删除这个过滤条件?",
|
||||||
|
COPY_FILTER = "复制过滤",
|
||||||
|
DAMAGE_NUMBER = "伤害数值",
|
||||||
|
DAMAGE_SCHOOL_TEXT = "伤害类型",
|
||||||
|
DAMAGE_SHIELD = "伤害护盾",
|
||||||
|
DAMAGE_SHIELD_COMBATLOG_TOOLTIP = "当法术或技能(如荆棘术)对近战攻击造成反弹伤害时显示信息。",
|
||||||
|
DEATHS_COMBATLOG_TOOLTIP = "当某生物死亡时显示信息。",
|
||||||
|
DEFAULT_COMBATLOG_FILTER_NAME = "过滤条件%d",
|
||||||
|
DISPELS = "驱散",
|
||||||
|
DISPEL_AURA_COMBATLOG_TOOLTIP = "当光环被移除、破坏或偷取时显示信息。",
|
||||||
|
DONE_BY = "来源为:",
|
||||||
|
DONE_TO = "目标为:",
|
||||||
|
DRAINS = "吸取",
|
||||||
|
ENTER_FILTER_NAME = "输入过滤名称:",
|
||||||
|
ENTIRE_LINE = "整条信息",
|
||||||
|
ENTIRE_LINE_COMBATLOG_TOOLTIP = "按照下面的方式用彩色标记整条信息。",
|
||||||
|
ENVIRONMENTAL_DAMAGE = "环境伤害",
|
||||||
|
ENVIRONMENTAL_DAMAGE_COMBATLOG_TOOLTIP = "当某人因摔落、溺水或泡在岩浆中而损失生命值时显示信息。",
|
||||||
|
EXAMPLE_SPELL_FIREBALL = "火球术",
|
||||||
|
EXAMPLE_SPELL_FROSTBOLT = "寒冰箭",
|
||||||
|
EXAMPLE_TARGET_MONSTER = "怪物",
|
||||||
|
EXAMPLE_TEXT = "范例文字:",
|
||||||
|
EXTRA_ATTACKS = "额外攻击",
|
||||||
|
FAILURES = "失败",
|
||||||
|
FILTER_BY_ENEMIES_COMBATLOG_TOOLTIP = "敌方怪物和宠物进行的动作。",
|
||||||
|
FILTER_BY_FRIENDS_COMBATLOG_TOOLTIP = "由友方玩家、宠物和怪物进行的动作。",
|
||||||
|
FILTER_BY_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "敌方玩家进行的动作。",
|
||||||
|
FILTER_BY_ME_COMBATLOG_TOOLTIP = "由你、你的陷阱和你的法术进行的动作。",
|
||||||
|
FILTER_BY_NEUTRAL_COMBATLOG_TOOLTIP = "由中立生物进行的动作。",
|
||||||
|
FILTER_BY_PET_COMBATLOG_TOOLTIP = "由你的宠物、召唤生物和被魅惑玩家进行的动作。",
|
||||||
|
FILTER_BY_UNKNOWN_COMBATLOG_TOOLTIP = "由掉落、酸液或岩浆之类的源头产生的动作。",
|
||||||
|
FILTER_NAME = "过滤名称",
|
||||||
|
FILTER_TO_FRIENDS_COMBATLOG_TOOLTIP = "对友方玩家、宠物和怪物进行的动作。",
|
||||||
|
FILTER_TO_HOSTILE_COMBATLOG_TOOLTIP = "对敌方宠物和怪物进行的动作。",
|
||||||
|
FILTER_TO_HOSTILE_PLAYERS_COMBATLOG_TOOLTIP = "对敌方玩家进行的动作。",
|
||||||
|
FILTER_TO_ME_COMBATLOG_TOOLTIP = "对你进行的动作。",
|
||||||
|
FILTER_TO_NEUTRAL_COMBATLOG_TOOLTIP = "对中立生物进行的动作。",
|
||||||
|
FILTER_TO_PET_COMBATLOG_TOOLTIP = "对你的宠物、召唤生物和被魅惑玩家进行的动作。",
|
||||||
|
FILTER_TO_UNKNOWN_COMBATLOG_TOOLTIP = "对隐形目标进行的动作。",
|
||||||
|
FORMATTING = "格式",
|
||||||
|
FULL_TEXT_COMBATLOG_TOOLTIP = "整句显示战斗记录信息。",
|
||||||
|
HARMFUL_AURA_COMBATLOG_TOOLTIP = "当你获得或失去有害光环时显示信息。",
|
||||||
|
HEALS = "治疗",
|
||||||
|
HIGHLIGHTING = "高亮显示:",
|
||||||
|
HIGHLIGHT_ABILITY_COMBATLOG_TOOLTIP = "在战斗信息中高亮显示技能名。",
|
||||||
|
HIGHLIGHT_DAMAGE_COMBATLOG_TOOLTIP = "在战斗信息中高亮显示伤害数值。",
|
||||||
|
HIGHLIGHT_KILL_COMBATLOG_TOOLTIP = "高亮显示你或你的队友杀死敌人时所显示的信息。",
|
||||||
|
HIGHLIGHT_SCHOOL_COMBATLOG_TOOLTIP = "在战斗信息中高亮显示法术的类型。",
|
||||||
|
HOSTILE = "敌对",
|
||||||
|
INTERRUPTS = "打断",
|
||||||
|
ITEM_NAMES = "物品名",
|
||||||
|
ITEM_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "在物品名称外显示括号。",
|
||||||
|
KILLS_COMBATLOG_TOOLTIP = "当你的队友杀死某目标时显示信息。",
|
||||||
|
MELEE = "近战",
|
||||||
|
MELEE_COMBATLOG_TOOLTIP = "显示普通的近战攻击。",
|
||||||
|
MESSAGE_SOURCES = "信息来源",
|
||||||
|
MISSES = "未命中",
|
||||||
|
MOVE_FILTER_DOWN = "过滤条件下移",
|
||||||
|
MOVE_FILTER_UP = "过滤条件上移",
|
||||||
|
OTHER = "其它",
|
||||||
|
PERIODIC = "周期",
|
||||||
|
POWER_GAINS = "获得能量",
|
||||||
|
POWER_GAINS_COMBATLOG_TOOLTIP = "当法术或技能恢复法力、能量、怒气、集中值、真气、神圣能量或暗影宝珠时显示信息。",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING = "所有",
|
||||||
|
QUICKBUTTON_NAME_EVERYTHING_TOOLTIP = "显示所有战斗信息。",
|
||||||
|
QUICKBUTTON_NAME_KILLS = "杀敌",
|
||||||
|
QUICKBUTTON_NAME_KILLS_TOOLTIP = "显示所有死亡和杀敌信息。",
|
||||||
|
QUICKBUTTON_NAME_ME = "我发生了什么?",
|
||||||
|
QUICKBUTTON_NAME_ME_TOOLTIP = "显示我所接收的所有行为信息。",
|
||||||
|
QUICKBUTTON_NAME_SELF = "自己",
|
||||||
|
QUICKBUTTON_NAME_SELF_TOOLTIP = "显示你所进行的和你所接收的动作的信息。",
|
||||||
|
QUICK_BUTTON_COMBATLOG_TOOLTIP = "在聊天窗口中放置一个该过滤条件的快捷方式。",
|
||||||
|
RANGED = "远程",
|
||||||
|
RANGED_COMBATLOG_TOOLTIP = "显示弓箭、枪械、投掷武器和魔杖的攻击。",
|
||||||
|
RANGE_DAMAGE_COMBATLOG_TOOLTIP = "显示造成了全额或部分伤害的远程射击。",
|
||||||
|
RANGE_MISSED_COMBATLOG_TOOLTIP = "显示未能造成伤害的远程射击。",
|
||||||
|
RESURRECT = "复活",
|
||||||
|
SETTINGS = "设置",
|
||||||
|
SHOW_BRACES = "显示括号",
|
||||||
|
SHOW_BRACES_COMBATLOG_TOOLTIP = "在战斗记录信息中的超链接外显示括号。",
|
||||||
|
SHOW_QUICK_BUTTON = "显示快捷按钮",
|
||||||
|
SHOW_TIMESTAMP = "显示时间戳",
|
||||||
|
SOURCE = "来源:",
|
||||||
|
SPECIAL = "特殊",
|
||||||
|
SPELLS_COMBATLOG_TOOLTIP = "显示有关法术和特殊技能的信息。",
|
||||||
|
SPELL_CASTING = "法术施放",
|
||||||
|
SPELL_CASTING_COMBATLOG_TOOLTIP = "显示有关法术施放的信息。",
|
||||||
|
SPELL_CAST_FAILED_COMBATLOG_TOOLTIP = "当法术无法施放或施放失败时显示信息。",
|
||||||
|
SPELL_CAST_START_COMBATLOG_TOOLTIP = "当法术开始施放时显示信息。",
|
||||||
|
SPELL_CAST_SUCCESS_COMBATLOG_TOOLTIP = "当法术成功施放时显示信息。",
|
||||||
|
SPELL_COLOR_BY_SCHOOL_COMBATLOG_TOOLTIP = "按类型用彩色标记法术名。",
|
||||||
|
SPELL_DAMAGE_COMBATLOG_TOOLTIP = "当法术或技能造成伤害时显示信息。",
|
||||||
|
SPELL_DAMAGE_NUMBER_COMBATLOG_TOOLTIP = "以彩色标记非普通攻击的伤害数值。",
|
||||||
|
SPELL_DAMAGE_SCHOOL_COMBATLOG_TOOLTIP = "彩色标记伤害类型。(例如:暗影)",
|
||||||
|
SPELL_DRAIN_COMBATLOG_TOOLTIP = "当法术或技能降低法力、能量、怒气、或集中值时显示信息。",
|
||||||
|
SPELL_EXTRA_ATTACKS_COMBATLOG_TOOLTIP = "当法术或技能提供额外攻击时显示信息。",
|
||||||
|
SPELL_HEAL_COMBATLOG_TOOLTIP = "当法术或技能恢复生命值时显示信息。",
|
||||||
|
SPELL_INSTAKILL_COMBATLOG_TOOLTIP = "显示有关特殊法术类型的信息,比如造成耐久度损失或者与宠物分担伤害的法术。",
|
||||||
|
SPELL_INTERRUPT_COMBATLOG_TOOLTIP = "当法术或技能打断另一个法术时显示信息。",
|
||||||
|
SPELL_MISSED_COMBATLOG_TOOLTIP = "当法术或技能未能造成伤害时显示信息。这包括躲闪、招架、格挡、偏转、免疫、吸收和闪避。",
|
||||||
|
SPELL_NAMES = "法术名",
|
||||||
|
SPELL_NAMES_COMBATLOG_TOOLTIP = "彩色标记法术名。",
|
||||||
|
SPELL_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "在法术名称外显示括号。",
|
||||||
|
SPELL_PERIODIC_COMBATLOG_TOOLTIP = "显示法术效果增量的信息。",
|
||||||
|
SPELL_PERIODIC_DAMAGE_COMBATLOG_TOOLTIP = "当法术或技能周期性地造成伤害时(如暗言术:痛或腐蚀术)显示信息。",
|
||||||
|
SPELL_PERIODIC_HEAL_COMBATLOG_TOOLTIP = "当法术或技能周期性地恢复生命值时(如恢复或回春术)显示信息。",
|
||||||
|
SPELL_PERIODIC_MISSED_COMBATLOG_TOOLTIP = "当法术或技能未能造成周期性的伤害时显示信息。这包括免疫、吸收和闪避。",
|
||||||
|
SPELL_PERIODIC_OTHER_COMBATLOG_TOOLTIP = "当法术或技能周期性地产生其它效果时(如恢复或吸取法力值)显示信息。",
|
||||||
|
SPELL_RESURRECT_COMBATLOG_TOOLTIP = "当法术或技能复活另一个玩家或怪物时显示信息。",
|
||||||
|
SPELL_SUMMON_COMBATLOG_TOOLTIP = "当法术召唤出怪物或创造一个物体时显示信息。",
|
||||||
|
START = "开始",
|
||||||
|
STRING_SCHOOL_UNKNOWN = "未知",
|
||||||
|
SUCCESS = "成功",
|
||||||
|
SUMMONS = "召唤",
|
||||||
|
SWING_DAMAGE_COMBATLOG_TOOLTIP = "显示造成了全额或部分伤害的近战攻击。",
|
||||||
|
SWING_MISSED_COMBATLOG_TOOLTIP = "显示未能造成伤害的近战攻击。",
|
||||||
|
TEXT_MODE_A = "A",
|
||||||
|
TEXT_MODE_A_STRING_1 = "%s %s %s %s %s. %s %11$s",
|
||||||
|
TEXT_MODE_A_STRING_2 = "%1$s %3$s%2$s%4$s%5$s。%6$s",
|
||||||
|
TEXT_MODE_A_STRING_3 = "%1$s%5$s%3$s%4$s%2$s。%6$s",
|
||||||
|
TEXT_MODE_A_STRING_ACTION = "|Haction:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_ITEM = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_SPELL = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_BRACE_UNIT = "|c%s[|r%s|c%s]|r",
|
||||||
|
TEXT_MODE_A_STRING_DEST_ICON = "|Hicon:%d:dest|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_DEST_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_ITEM = "|Hitem:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_POSSESSIVE = "%s的",
|
||||||
|
TEXT_MODE_A_STRING_REMAINING_POINTS = "(剩余%s)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_ABSORB = "(%s 吸收)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_BLOCK = "(%s 格挡)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL = "(爆击)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRITICAL_SPELL = "(爆击)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_CRUSHING = "(碾压)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_FORMAT = "$resultAmount点$resultType",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_GLANCING = "(偏斜)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_MULTISTRIKE = "(溅射)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERENERGIZE = "(%s 过量充能)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERHEALING = "(%s 过量治疗)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_OVERKILLING = "(%s 过量伤害)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_PARRY = "(%d招架)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_REFLECT = "被反射",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_RESIST = "(%s 抵抗)",
|
||||||
|
TEXT_MODE_A_STRING_RESULT_VULNERABILITY = "(%s 易伤伤害)",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_ICON = "|Hicon:%s:source|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SOURCE_UNIT = "%s|Hunit:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_SPELL_EXTRA = "|Hspell:%s:%s:%s|h%s|h",
|
||||||
|
TEXT_MODE_A_STRING_TIMESTAMP = "%s> %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_SCHOOL = "%s %s",
|
||||||
|
TEXT_MODE_A_STRING_VALUE_TYPE = "%s(%s)",
|
||||||
|
TEXT_MODE_A_TIMESTAMP = "%H:%M:%S",
|
||||||
|
TIMESTAMP_COMBATLOG_TOOLTIP = "显示战斗记录信息的时间戳。",
|
||||||
|
UNIT_COLORS = "单位颜色:",
|
||||||
|
UNIT_NAMES = "单位名称",
|
||||||
|
UNIT_NAMES_COMBATLOG_TOOLTIP = "彩色标记单位名。",
|
||||||
|
UNIT_NAMES_SHOW_BRACES_COMBATLOG_TOOLTIP = "在单位名称外显示括号。",
|
||||||
|
UNIT_YOU = "你",
|
||||||
|
UNIT_YOU_DEST = "你",
|
||||||
|
UNIT_YOU_DEST_POSSESSIVE = "你的",
|
||||||
|
UNIT_YOU_SOURCE = "你",
|
||||||
|
UNIT_YOU_SOURCE_POSSESSIVE = "你的",
|
||||||
|
USE_FULL_TEXT_MODE = "使用详细模式",
|
||||||
|
}
|
||||||
Vendored
-50
@@ -1,50 +0,0 @@
|
|||||||
-- barlength = {[formfactor]={cols, rows}}
|
|
||||||
pfGridmath = {
|
|
||||||
[1] = {{1,1}},
|
|
||||||
[2] = {{2,1},{1,2}},
|
|
||||||
[3] = {{3,1},{1,3}},
|
|
||||||
[4] = {{4,1},{2,2},{1,4}},
|
|
||||||
[5] = {{5,1},{1,5}},
|
|
||||||
[6] = {{6,1},{3,2},{2,3},{1,6}},
|
|
||||||
[7] = {{7,1},{1,7}},
|
|
||||||
[8] = {{8,1},{4,2},{2,4},{1,8}},
|
|
||||||
[9] = {{9,1},{3,3},{1,9}},
|
|
||||||
[10] = {{10,1},{5,2},{2,5},{1,10}},
|
|
||||||
[11] = {{11,1},{1,11}},
|
|
||||||
[12] = {{12,1},{6,2},{4,3},{3,4},{2,6},{1,12}}
|
|
||||||
}
|
|
||||||
|
|
||||||
-- list of valid unitstrings
|
|
||||||
pfValidUnits = {}
|
|
||||||
pfValidUnits["pet"] = true
|
|
||||||
pfValidUnits["player"] = true
|
|
||||||
pfValidUnits["target"] = true
|
|
||||||
pfValidUnits["mouseover"] = true
|
|
||||||
|
|
||||||
pfValidUnits["focus"] = true
|
|
||||||
pfValidUnits["focustarget"] = true
|
|
||||||
pfValidUnits["focustargettarget"] = true
|
|
||||||
|
|
||||||
pfValidUnits["pettarget"] = true
|
|
||||||
pfValidUnits["playertarget"] = true
|
|
||||||
pfValidUnits["targettarget"] = true
|
|
||||||
pfValidUnits["mouseovertarget"] = true
|
|
||||||
pfValidUnits["targettargettarget"] = true
|
|
||||||
|
|
||||||
for i=1,4 do
|
|
||||||
pfValidUnits["party" .. i] = true
|
|
||||||
pfValidUnits["party" .. i .. "target"] = true
|
|
||||||
pfValidUnits["partypet" .. i] = true
|
|
||||||
pfValidUnits["partypet" .. i .. "target"] = true
|
|
||||||
end
|
|
||||||
|
|
||||||
for i=1,40 do
|
|
||||||
pfValidUnits["raid" .. i] = true
|
|
||||||
pfValidUnits["raid" .. i .. "target"] = true
|
|
||||||
|
|
||||||
pfValidUnits["raidpet" .. i] = true
|
|
||||||
pfValidUnits["raidpet" .. i .. "target"] = true
|
|
||||||
|
|
||||||
pfValidUnits["nameplate" .. i] = true
|
|
||||||
pfValidUnits["nameplate" .. i .. "target"] = true
|
|
||||||
end
|
|
||||||
Vendored
-1
@@ -281,7 +281,6 @@ pfUI_translation["deDE"] = {
|
|||||||
["Enable Energy Ticks"] = nil,
|
["Enable Energy Ticks"] = nil,
|
||||||
["Enable Extended Guild Information"] = nil,
|
["Enable Extended Guild Information"] = nil,
|
||||||
["Enable Frame Shadow"] = nil,
|
["Enable Frame Shadow"] = nil,
|
||||||
["Enable Full-Text Search"] = nil,
|
|
||||||
["Enable Indicators"] = nil,
|
["Enable Indicators"] = nil,
|
||||||
["Enable Item Quality Color For Equipment Only"] = nil,
|
["Enable Item Quality Color For Equipment Only"] = nil,
|
||||||
["Enable \"Loot & Spam\" Chat Window"] = nil,
|
["Enable \"Loot & Spam\" Chat Window"] = nil,
|
||||||
|
|||||||
Vendored
-1
@@ -290,7 +290,6 @@ pfUI_translation["enUS"] = {
|
|||||||
["Enable Energy Ticks"] = nil,
|
["Enable Energy Ticks"] = nil,
|
||||||
["Enable Extended Guild Information"] = nil,
|
["Enable Extended Guild Information"] = nil,
|
||||||
["Enable Frame Shadow"] = nil,
|
["Enable Frame Shadow"] = nil,
|
||||||
["Enable Full-Text Search"] = nil,
|
|
||||||
["Enable Indicators"] = nil,
|
["Enable Indicators"] = nil,
|
||||||
["Enable Item Quality Color For Equipment Only"] = nil,
|
["Enable Item Quality Color For Equipment Only"] = nil,
|
||||||
["Enable \"Loot & Spam\" Chat Window"] = nil,
|
["Enable \"Loot & Spam\" Chat Window"] = nil,
|
||||||
|
|||||||
Vendored
-1
@@ -281,7 +281,6 @@ pfUI_translation["esES"] = {
|
|||||||
["Enable Energy Ticks"] = "Activar tics de energía",
|
["Enable Energy Ticks"] = "Activar tics de energía",
|
||||||
["Enable Extended Guild Information"] = "Activar información de hermandad extendida",
|
["Enable Extended Guild Information"] = "Activar información de hermandad extendida",
|
||||||
["Enable Frame Shadow"] = "Activar sombra del marco",
|
["Enable Frame Shadow"] = "Activar sombra del marco",
|
||||||
["Enable Full-Text Search"] = nil,
|
|
||||||
["Enable Indicators"] = "Activar indicadores",
|
["Enable Indicators"] = "Activar indicadores",
|
||||||
["Enable Item Quality Color For Equipment Only"] = "Mostrar el color de calidad de objetos solo para equipo",
|
["Enable Item Quality Color For Equipment Only"] = "Mostrar el color de calidad de objetos solo para equipo",
|
||||||
["Enable \"Loot & Spam\" Chat Window"] = "Activar ventana de chat \"Botín y spam\"",
|
["Enable \"Loot & Spam\" Chat Window"] = "Activar ventana de chat \"Botín y spam\"",
|
||||||
|
|||||||
Vendored
-1
@@ -281,7 +281,6 @@ pfUI_translation["frFR"] = {
|
|||||||
["Enable Energy Ticks"] = "Activer la barre de rechargement d'énergie",
|
["Enable Energy Ticks"] = "Activer la barre de rechargement d'énergie",
|
||||||
["Enable Extended Guild Information"] = "Activer les informations de guilde étendues",
|
["Enable Extended Guild Information"] = "Activer les informations de guilde étendues",
|
||||||
["Enable Frame Shadow"] = "Activer l'ombre des cadres",
|
["Enable Frame Shadow"] = "Activer l'ombre des cadres",
|
||||||
["Enable Full-Text Search"] = nil,
|
|
||||||
["Enable Indicators"] = "Activer les indicateurs",
|
["Enable Indicators"] = "Activer les indicateurs",
|
||||||
["Enable Item Quality Color For Equipment Only"] = "Activer la couleur de la qualité des objets seulement sur les pièces d'équipement",
|
["Enable Item Quality Color For Equipment Only"] = "Activer la couleur de la qualité des objets seulement sur les pièces d'équipement",
|
||||||
["Enable \"Loot & Spam\" Chat Window"] = "Activer la fenêtre de chat \"Butins & Spam\"",
|
["Enable \"Loot & Spam\" Chat Window"] = "Activer la fenêtre de chat \"Butins & Spam\"",
|
||||||
|
|||||||
Vendored
-1
@@ -281,7 +281,6 @@ pfUI_translation["koKR"] = {
|
|||||||
["Enable Energy Ticks"] = "Energy Ticks 활성화",
|
["Enable Energy Ticks"] = "Energy Ticks 활성화",
|
||||||
["Enable Extended Guild Information"] = "길드 정보 확장 사용",
|
["Enable Extended Guild Information"] = "길드 정보 확장 사용",
|
||||||
["Enable Frame Shadow"] = nil,
|
["Enable Frame Shadow"] = nil,
|
||||||
["Enable Full-Text Search"] = nil,
|
|
||||||
["Enable Indicators"] = nil,
|
["Enable Indicators"] = nil,
|
||||||
["Enable Item Quality Color For Equipment Only"] = "착용장비 전용 아이템품질 색상 활성화",
|
["Enable Item Quality Color For Equipment Only"] = "착용장비 전용 아이템품질 색상 활성화",
|
||||||
["Enable \"Loot & Spam\" Chat Window"] = "\"루팅 & 스팜\"채팅 창 사용",
|
["Enable \"Loot & Spam\" Chat Window"] = "\"루팅 & 스팜\"채팅 창 사용",
|
||||||
|
|||||||
Vendored
-1
@@ -281,7 +281,6 @@ pfUI_translation["ruRU"] = {
|
|||||||
["Enable Energy Ticks"] = "Включить восполнение энергии",
|
["Enable Energy Ticks"] = "Включить восполнение энергии",
|
||||||
["Enable Extended Guild Information"] = "Включить расширенную информацию о гильдии",
|
["Enable Extended Guild Information"] = "Включить расширенную информацию о гильдии",
|
||||||
["Enable Frame Shadow"] = "Включить тень окон",
|
["Enable Frame Shadow"] = "Включить тень окон",
|
||||||
["Enable Full-Text Search"] = nil,
|
|
||||||
["Enable Indicators"] = "Включить индикаторы",
|
["Enable Indicators"] = "Включить индикаторы",
|
||||||
["Enable Item Quality Color For Equipment Only"] = "Включить цвет качества предметов только для экипировки",
|
["Enable Item Quality Color For Equipment Only"] = "Включить цвет качества предметов только для экипировки",
|
||||||
["Enable \"Loot & Spam\" Chat Window"] = "Включить окно чата \"Добыча & Спам\"",
|
["Enable \"Loot & Spam\" Chat Window"] = "Включить окно чата \"Добыча & Спам\"",
|
||||||
|
|||||||
Vendored
-1
@@ -281,7 +281,6 @@ pfUI_translation["zhCN"] = {
|
|||||||
["Enable Energy Ticks"] = "显示能量刻度",
|
["Enable Energy Ticks"] = "显示能量刻度",
|
||||||
["Enable Extended Guild Information"] = "公会信息扩展显示",
|
["Enable Extended Guild Information"] = "公会信息扩展显示",
|
||||||
["Enable Frame Shadow"] = "启用框架阴影",
|
["Enable Frame Shadow"] = "启用框架阴影",
|
||||||
["Enable Full-Text Search"] = "启用全文搜索",
|
|
||||||
["Enable Indicators"] = "启用指示器",
|
["Enable Indicators"] = "启用指示器",
|
||||||
["Enable Item Quality Color For Equipment Only"] = "仅在装备上显示品质颜色",
|
["Enable Item Quality Color For Equipment Only"] = "仅在装备上显示品质颜色",
|
||||||
["Enable \"Loot & Spam\" Chat Window"] = "启用[拾取、综合]聊天窗口",
|
["Enable \"Loot & Spam\" Chat Window"] = "启用[拾取、综合]聊天窗口",
|
||||||
|
|||||||
Vendored
-1
@@ -281,7 +281,6 @@ pfUI_translation["zhTW"] = {
|
|||||||
["Enable Energy Ticks"] = "顯示能量刻度",
|
["Enable Energy Ticks"] = "顯示能量刻度",
|
||||||
["Enable Extended Guild Information"] = "公會資訊擴展顯示",
|
["Enable Extended Guild Information"] = "公會資訊擴展顯示",
|
||||||
["Enable Frame Shadow"] = "啟用框架陰影",
|
["Enable Frame Shadow"] = "啟用框架陰影",
|
||||||
["Enable Full-Text Search"] = nil,
|
|
||||||
["Enable Indicators"] = nil,
|
["Enable Indicators"] = nil,
|
||||||
["Enable Item Quality Color For Equipment Only"] = "僅在裝備上顯示品質顏色",
|
["Enable Item Quality Color For Equipment Only"] = "僅在裝備上顯示品質顏色",
|
||||||
["Enable \"Loot & Spam\" Chat Window"] = "啟用[拾取、綜合]聊天視窗",
|
["Enable \"Loot & Spam\" Chat Window"] = "啟用[拾取、綜合]聊天視窗",
|
||||||
|
|||||||
@@ -2,5 +2,6 @@
|
|||||||
<Include file="..\api\api.lua"/>
|
<Include file="..\api\api.lua"/>
|
||||||
<Include file="..\api\config.lua"/>
|
<Include file="..\api\config.lua"/>
|
||||||
<Include file="..\api\ui-widgets.lua"/>
|
<Include file="..\api\ui-widgets.lua"/>
|
||||||
|
<Include file="..\api\ui-widgets.xml"/>
|
||||||
<Include file="..\api\unitframes.lua"/>
|
<Include file="..\api\unitframes.lua"/>
|
||||||
</Ui>
|
</Ui>
|
||||||
|
|||||||
+8
-1
@@ -7,7 +7,14 @@
|
|||||||
<Include file="..\env\locales_esES.lua"/>
|
<Include file="..\env\locales_esES.lua"/>
|
||||||
<Include file="..\env\locales_ruRU.lua"/>
|
<Include file="..\env\locales_ruRU.lua"/>
|
||||||
|
|
||||||
<Include file="..\env\tables.lua"/>
|
<Include file="..\env\combatlog_enUS.lua"/>
|
||||||
|
<Include file="..\env\combatlog_koKR.lua"/>
|
||||||
|
<Include file="..\env\combatlog_frFR.lua"/>
|
||||||
|
<Include file="..\env\combatlog_deDE.lua"/>
|
||||||
|
<Include file="..\env\combatlog_zhCN.lua"/>
|
||||||
|
<Include file="..\env\combatlog_esES.lua"/>
|
||||||
|
<Include file="..\env\combatlog_ruRU.lua"/>
|
||||||
|
|
||||||
<Include file="..\env\profiles.lua"/>
|
<Include file="..\env\profiles.lua"/>
|
||||||
|
|
||||||
<Include file="..\env\translations_enUS.lua"/>
|
<Include file="..\env\translations_enUS.lua"/>
|
||||||
|
|||||||
@@ -7,6 +7,8 @@
|
|||||||
<Include file="..\modules\gryphons.lua"/>
|
<Include file="..\modules\gryphons.lua"/>
|
||||||
<Include file="..\modules\hunterbar.lua"/>
|
<Include file="..\modules\hunterbar.lua"/>
|
||||||
<Include file="..\modules\chat.lua"/>
|
<Include file="..\modules\chat.lua"/>
|
||||||
|
<Include file="..\modules\combatlog.lua"/>
|
||||||
|
<Include file="..\modules\combatlog_config.lua"/>
|
||||||
<Include file="..\modules\whisperproxy.lua"/>
|
<Include file="..\modules\whisperproxy.lua"/>
|
||||||
<Include file="..\modules\chatcopy.lua"/>
|
<Include file="..\modules\chatcopy.lua"/>
|
||||||
<Include file="..\modules\bubbles.lua"/>
|
<Include file="..\modules\bubbles.lua"/>
|
||||||
|
|||||||
+58
-167
@@ -2,16 +2,21 @@
|
|||||||
setfenv(1, pfUI:GetEnvironment())
|
setfenv(1, pfUI:GetEnvironment())
|
||||||
|
|
||||||
--[[ libpredict ]]--
|
--[[ libpredict ]]--
|
||||||
-- A pfUI library that detects, receives and sends heal and resurrection predictions.
|
-- A pfUI library that detects, receives and sends heal predictions.
|
||||||
-- Healing predictions are done by caching the last known "normal" heal value of the
|
-- Healing predictions are done by caching the last known "normal" heal value of the
|
||||||
-- spell when last being used. Those chaches are cleared when new talents are detected.
|
-- spell when last being used. Those chaches are cleared when new talents are detected.
|
||||||
-- The API provides function calls similar to later WoW expansions such as:
|
-- The API provides function calls similar to later WoW expansions such as:
|
||||||
-- UnitGetIncomingHeals(unit)
|
-- UnitGetIncomingHeals(unit)
|
||||||
-- UnitHasIncomingResurrection(unit)
|
-- UnitHasResurrection(unit)
|
||||||
--
|
--
|
||||||
-- The library is able to receive and send compatible messages to HealComm
|
-- UnitHasResurrection extends ClassicAPI's UnitHasIncomingResurrection, which
|
||||||
-- including resurrections. It has an option to disable the sending of those
|
-- ends with the cast, to a resurrection that landed and waits for the target
|
||||||
-- messages in case HealComm is already active.
|
-- to accept it.
|
||||||
|
--
|
||||||
|
-- The library is able to receive and send compatible messages to HealComm,
|
||||||
|
-- and announces the player's resurrections to HealComm and CTRA. It has an
|
||||||
|
-- option to disable the sending of those messages in case HealComm is
|
||||||
|
-- already active.
|
||||||
--
|
--
|
||||||
-- Casts are read from ClassicAPI's UNIT_SPELLCAST_* events and heal amounts
|
-- Casts are read from ClassicAPI's UNIT_SPELLCAST_* events and heal amounts
|
||||||
-- from COMBAT_LOG_EVENT_UNFILTERED. GetHotDuration() reads live HoT timers
|
-- from COMBAT_LOG_EVENT_UNFILTERED. GetHotDuration() reads live HoT timers
|
||||||
@@ -20,18 +25,16 @@ setfenv(1, pfUI:GetEnvironment())
|
|||||||
-- return instantly when another libpredict is already active
|
-- return instantly when another libpredict is already active
|
||||||
if pfUI.api.libpredict then return end
|
if pfUI.api.libpredict then return end
|
||||||
|
|
||||||
local heals, ress, events, hots = {}, {}, {}, {}
|
local heals, events, hots = {}, {}, {}
|
||||||
local spell_queue = { "DUMMY", "DUMMYRank 9", "TARGET" }
|
local spell_queue = { "DUMMY", "DUMMYRank 9", "TARGET" }
|
||||||
local player = UnitName("player")
|
local player = UnitName("player")
|
||||||
local cache, gear_string = {}, ""
|
local cache, gear_string = {}, ""
|
||||||
local foreignCache = {} -- [casterName][spellKey] = amount, in-memory cache for other healers
|
local foreignCache = {} -- [casterName][spellKey] = amount, in-memory cache for other healers
|
||||||
local rejuvDuration, renewDuration = 12, 15 --default durations
|
local rejuvDuration, renewDuration = 12, 15 --default durations
|
||||||
local ressGuidToName = {} -- [casterGuid] = casterName, for interrupted-cast cleanup
|
|
||||||
local healGuidToName = {} -- [casterGuid] = casterName, for interrupted-cast cleanup
|
local healGuidToName = {} -- [casterGuid] = casterName, for interrupted-cast cleanup
|
||||||
local sentTargets = {} -- [castGUID] = target name of an own cast, from UNIT_SPELLCAST_SENT
|
local sentTargets = {} -- [castGUID] = target name of an own cast, from UNIT_SPELLCAST_SENT
|
||||||
local castTargets = {} -- [castGUID] = target name of a foreign cast, from UNIT_SPELLCAST_START
|
local resOffers = {} -- [guid] = expiry of a landed resurrection the target has yet to accept
|
||||||
local ress_timers = {} -- [target][sender] = expiry_timestamp (60s rez window)
|
local RES_OFFER_TIMEOUT = 60 -- the target's resurrect popup declines itself after 60s
|
||||||
local RESS_TIMEOUT = 60 -- Vanilla: rez offer expires after 60s
|
|
||||||
|
|
||||||
-- Localized spell names resolved once from canonical rank-1 spellIDs.
|
-- Localized spell names resolved once from canonical rank-1 spellIDs.
|
||||||
-- Every rank shares the same name, so per-rank comparisons elsewhere can
|
-- Every rank shares the same name, so per-rank comparisons elsewhere can
|
||||||
@@ -42,7 +45,6 @@ local RENEW = C_Spell.GetSpellName(139) -- Renew (Rank 1)
|
|||||||
local REGROWTH = C_Spell.GetSpellName(8936) -- Regrowth (Rank 1)
|
local REGROWTH = C_Spell.GetSpellName(8936) -- Regrowth (Rank 1)
|
||||||
|
|
||||||
local libpredict = CreateFrame("Frame")
|
local libpredict = CreateFrame("Frame")
|
||||||
libpredict:RegisterEvent("UNIT_HEALTH")
|
|
||||||
libpredict:RegisterEvent("CHAT_MSG_ADDON")
|
libpredict:RegisterEvent("CHAT_MSG_ADDON")
|
||||||
libpredict:RegisterEvent("PLAYER_TARGET_CHANGED")
|
libpredict:RegisterEvent("PLAYER_TARGET_CHANGED")
|
||||||
libpredict:RegisterEvent("PLAYER_LOGOUT")
|
libpredict:RegisterEvent("PLAYER_LOGOUT")
|
||||||
@@ -55,13 +57,8 @@ libpredict:SetScript("OnEvent", function()
|
|||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
if event == "CHAT_MSG_ADDON" and (arg1 == "HealComm" or arg1 == "CTRA") then
|
if event == "CHAT_MSG_ADDON" and arg1 == "HealComm" then
|
||||||
this:ParseChatMessage(arg4, arg2, arg1)
|
this:ParseChatMessage(arg4, arg2)
|
||||||
elseif event == "UNIT_HEALTH" then
|
|
||||||
local name = UnitName(arg1)
|
|
||||||
if name and ress[name] and not UnitIsDeadOrGhost(arg1) then
|
|
||||||
ress[name] = nil
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
@@ -95,12 +92,6 @@ local function cacheRaidNames()
|
|||||||
if pguid then guidNameCache[pguid] = UnitName("player") end
|
if pguid then guidNameCache[pguid] = UnitName("player") end
|
||||||
end
|
end
|
||||||
|
|
||||||
local function isRezSpell(spellId)
|
|
||||||
if not L["resurrections"] then return false end
|
|
||||||
local spellName = C_Spell.GetSpellName(spellId)
|
|
||||||
return spellName and L["resurrections"][spellName]
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Build cache on world enter
|
-- Build cache on world enter
|
||||||
libpredict:RegisterEvent("PLAYER_ENTERING_WORLD")
|
libpredict:RegisterEvent("PLAYER_ENTERING_WORLD")
|
||||||
libpredict:RegisterEvent("RAID_ROSTER_UPDATE")
|
libpredict:RegisterEvent("RAID_ROSTER_UPDATE")
|
||||||
@@ -131,7 +122,6 @@ local function OnOwnCastStart(spellId, castGUID)
|
|||||||
|
|
||||||
if L["resurrections"][spellName] then
|
if L["resurrections"][spellName] then
|
||||||
if target then
|
if target then
|
||||||
libpredict:Ress(player, target, UnitGUID("player"))
|
|
||||||
libpredict.sender:SendHealCommMsg("Resurrection/" .. target .. "/start/")
|
libpredict.sender:SendHealCommMsg("Resurrection/" .. target .. "/start/")
|
||||||
libpredict.sender:SendResCommMsg("RES " .. target)
|
libpredict.sender:SendResCommMsg("RES " .. target)
|
||||||
libpredict.sender.resurrecting = true
|
libpredict.sender.resurrecting = true
|
||||||
@@ -212,7 +202,7 @@ local function OnOwnCastStart(spellId, castGUID)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Own cast landed: HealStop, Regrowth timer, instant HoTs, own rez timer
|
-- Own cast landed: HealStop, Regrowth timer, instant HoTs
|
||||||
local function OnOwnCastSucceeded(spellId, castGUID)
|
local function OnOwnCastSucceeded(spellId, castGUID)
|
||||||
local target = sentTargets[castGUID] or spell_queue[3]
|
local target = sentTargets[castGUID] or spell_queue[3]
|
||||||
sentTargets[castGUID] = nil
|
sentTargets[castGUID] = nil
|
||||||
@@ -250,14 +240,10 @@ local function OnOwnCastSucceeded(spellId, castGUID)
|
|||||||
libpredict:Hot(player, target, hotType, duration, nil, "UNIT_SPELLCAST_SUCCEEDED", rank)
|
libpredict:Hot(player, target, hotType, duration, nil, "UNIT_SPELLCAST_SUCCEEDED", rank)
|
||||||
libpredict.sender:SendHealCommMsg(hotType .. "/" .. target .. "/" .. duration .. "/" .. rank .. "/")
|
libpredict.sender:SendHealCommMsg(hotType .. "/" .. target .. "/" .. duration .. "/" .. rank .. "/")
|
||||||
end
|
end
|
||||||
|
|
||||||
if isRezSpell(spellId) then
|
|
||||||
libpredict:RessSetTimer(player, target)
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Foreign cast-time spell started (heals + rez)
|
-- Foreign cast-time heal started
|
||||||
local function OnOtherCastStart(unit, spellId, castGUID)
|
local function OnOtherCastStart(unit, spellId)
|
||||||
local spellName = C_Spell.GetSpellName(spellId)
|
local spellName = C_Spell.GetSpellName(spellId)
|
||||||
if not spellName then return end
|
if not spellName then return end
|
||||||
|
|
||||||
@@ -267,13 +253,6 @@ local function OnOtherCastStart(unit, spellId, castGUID)
|
|||||||
|
|
||||||
local targetName = UnitSpellTargetName(unit)
|
local targetName = UnitSpellTargetName(unit)
|
||||||
if not targetName then return end
|
if not targetName then return end
|
||||||
castTargets[castGUID] = targetName
|
|
||||||
|
|
||||||
-- Resurrection cast
|
|
||||||
if L["resurrections"][spellName] then
|
|
||||||
libpredict:Ress(casterName, targetName, casterGuid)
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Heal cast: look up cached amount from a previous cast by this healer
|
-- Heal cast: look up cached amount from a previous cast by this healer
|
||||||
local _, _, _, startMs, endMs = C_Spell.UnitCastingInfo(unit)
|
local _, _, _, startMs, endMs = C_Spell.UnitCastingInfo(unit)
|
||||||
@@ -324,35 +303,31 @@ local function OnOtherCastStart(unit, spellId, castGUID)
|
|||||||
libpredict:Heal(casterName, targetName, amount, castTime, casterGuid)
|
libpredict:Heal(casterName, targetName, amount, castTime, casterGuid)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Foreign cast landed: rez timer, or the predicted heal is fulfilled
|
-- Foreign cast landed: the predicted heal is fulfilled
|
||||||
local function OnOtherCastSucceeded(unit, spellId, castGUID)
|
local function OnOtherCastSucceeded(unit)
|
||||||
local casterGuid = UnitGUID(unit)
|
local casterName = resolveNameFromGuid(UnitGUID(unit))
|
||||||
local casterName = resolveNameFromGuid(casterGuid)
|
|
||||||
if not casterName then return end
|
if not casterName then return end
|
||||||
|
|
||||||
if isRezSpell(spellId) then
|
|
||||||
local targetName = castTargets[castGUID]
|
|
||||||
if targetName then
|
|
||||||
libpredict:RessSetTimer(casterName, targetName)
|
|
||||||
end
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
libpredict:HealStop(casterName)
|
libpredict:HealStop(casterName)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Foreign cast interrupted: remove cancelled resses/heals
|
-- Foreign cast interrupted: remove cancelled heals
|
||||||
local function OnOtherCastInterrupted(unit)
|
local function OnOtherCastInterrupted(unit)
|
||||||
local casterGuid = UnitGUID(unit)
|
local casterGuid = UnitGUID(unit)
|
||||||
if not casterGuid then return end
|
if not casterGuid then return end
|
||||||
local ressName = ressGuidToName[casterGuid]
|
|
||||||
if ressName then
|
|
||||||
libpredict:RessStop(ressName)
|
|
||||||
end
|
|
||||||
local healName = healGuidToName[casterGuid]
|
local healName = healGuidToName[casterGuid]
|
||||||
if healName then libpredict:HealStop(healName) end
|
if healName then libpredict:HealStop(healName) end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Flag the unit frames showing `guid` to redraw their resurrection icon
|
||||||
|
local function RefreshResFrames(guid)
|
||||||
|
for _, frame in pairs(pfUI.uf.frames) do
|
||||||
|
if frame.unitstr and UnitGUID(frame.unitstr) == guid then
|
||||||
|
frame.update_indicators = true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
libpredict:SetScript("OnUpdate", function()
|
libpredict:SetScript("OnUpdate", function()
|
||||||
-- throttle cleanup - no need to check every frame
|
-- throttle cleanup - no need to check every frame
|
||||||
local now = pfUI.uf.now or GetTime()
|
local now = pfUI.uf.now or GetTime()
|
||||||
@@ -366,13 +341,12 @@ libpredict:SetScript("OnUpdate", function()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Rez timeout: remove offer after 60s if player doesn't accept
|
-- drop resurrection offers the target accepted or let run out
|
||||||
for target, senders in pairs(ress_timers) do
|
for guid, expiry in pairs(resOffers) do
|
||||||
for sender, expiry in pairs(senders) do
|
local unit = UnitTokenFromGUID(guid)
|
||||||
if now >= expiry then
|
if now >= expiry or not (unit and UnitIsDeadOrGhost(unit)) then
|
||||||
senders[sender] = nil
|
resOffers[guid] = nil
|
||||||
if ress[target] then ress[target][sender] = nil end
|
RefreshResFrames(guid)
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
@@ -386,8 +360,6 @@ function libpredict:ParseComm(sender, msg)
|
|||||||
if libpredict.debug then
|
if libpredict.debug then
|
||||||
DEFAULT_CHAT_FRAME:AddMessage("|cff00ffff[libpredict RX]|r HealStop from " .. tostring(sender))
|
DEFAULT_CHAT_FRAME:AddMessage("|cff00ffff[libpredict RX]|r HealStop from " .. tostring(sender))
|
||||||
end
|
end
|
||||||
elseif msg == "Resurrection/stop/" then
|
|
||||||
msgtype = "RessStop"
|
|
||||||
elseif msg then
|
elseif msg then
|
||||||
local msgobj = {strsplit("/", msg)}
|
local msgobj = {strsplit("/", msg)}
|
||||||
|
|
||||||
@@ -397,10 +369,6 @@ function libpredict:ParseComm(sender, msg)
|
|||||||
msgtype, time = "Delay", msgobj[2]
|
msgtype, time = "Delay", msgobj[2]
|
||||||
end
|
end
|
||||||
|
|
||||||
if msgobj[1] and msgobj[1] == "Resurrection" and msgobj[2] then
|
|
||||||
msgtype, target = "Ress", msgobj[2]
|
|
||||||
end
|
|
||||||
|
|
||||||
if msgobj[1] == "Heal" and msgobj[2] then
|
if msgobj[1] == "Heal" and msgobj[2] then
|
||||||
msgtype, target, heal, time = "Heal", msgobj[2], msgobj[3], msgobj[4]
|
msgtype, target, heal, time = "Heal", msgobj[2], msgobj[3], msgobj[4]
|
||||||
end
|
end
|
||||||
@@ -472,25 +440,12 @@ end
|
|||||||
local recentHots = {}
|
local recentHots = {}
|
||||||
local DUPLICATE_WINDOW = 0.5 -- Ignoriere gleiche Nachricht innerhalb 0.5s
|
local DUPLICATE_WINDOW = 0.5 -- Ignoriere gleiche Nachricht innerhalb 0.5s
|
||||||
|
|
||||||
function libpredict:ParseChatMessage(sender, msg, comm)
|
function libpredict:ParseChatMessage(sender, msg)
|
||||||
local msgtype, target, heal, time, rank
|
local msgtype, target, heal, time, rank = libpredict:ParseComm(sender, msg)
|
||||||
|
|
||||||
if comm == "HealComm" then
|
|
||||||
msgtype, target, heal, time, rank = libpredict:ParseComm(sender, msg)
|
|
||||||
elseif comm == "CTRA" then
|
|
||||||
local _, _, cmd, ctratarget = string.find(msg, "(%a+)%s?([^#]*)")
|
|
||||||
if cmd and ctratarget and cmd == "RES" and ctratarget ~= "" and ctratarget ~= UNKNOWN then
|
|
||||||
msgtype = "Ress"
|
|
||||||
target = ctratarget
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
if msgtype == "Stop" and sender then
|
if msgtype == "Stop" and sender then
|
||||||
libpredict:HealStop(sender)
|
libpredict:HealStop(sender)
|
||||||
return
|
return
|
||||||
elseif ( msg == "RessStop" or msg == "RESNO" ) and sender then
|
|
||||||
libpredict:RessStop(sender)
|
|
||||||
return
|
|
||||||
elseif msgtype == "Delay" and time then
|
elseif msgtype == "Delay" and time then
|
||||||
libpredict:HealDelay(sender, time)
|
libpredict:HealDelay(sender, time)
|
||||||
elseif msgtype == "Heal" and target and heal and time then
|
elseif msgtype == "Heal" and target and heal and time then
|
||||||
@@ -501,29 +456,6 @@ function libpredict:ParseChatMessage(sender, msg, comm)
|
|||||||
else
|
else
|
||||||
libpredict:Heal(sender, target, heal, time)
|
libpredict:Heal(sender, target, heal, time)
|
||||||
end
|
end
|
||||||
elseif msgtype == "Ress" then
|
|
||||||
-- HealComm: only for other players (own resses tracked via UNIT_SPELLCAST_START)
|
|
||||||
local playerName = UnitName("player")
|
|
||||||
if sender ~= playerName then
|
|
||||||
local senderGuid
|
|
||||||
for i = 1, GetNumRaidMembers() do
|
|
||||||
local unit = "raid" .. i
|
|
||||||
if UnitName(unit) == sender then
|
|
||||||
senderGuid = UnitGUID(unit)
|
|
||||||
break
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if not senderGuid then
|
|
||||||
for i = 1, GetNumPartyMembers() do
|
|
||||||
local unit = "party" .. i
|
|
||||||
if UnitName(unit) == sender then
|
|
||||||
senderGuid = UnitGUID(unit)
|
|
||||||
break
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
libpredict:Ress(sender, target, senderGuid)
|
|
||||||
end
|
|
||||||
elseif msgtype == "Hot" then
|
elseif msgtype == "Hot" then
|
||||||
-- Duplicate check: ignore same sender+target+spell within DUPLICATE_WINDOW
|
-- Duplicate check: ignore same sender+target+spell within DUPLICATE_WINDOW
|
||||||
local now = pfUI.uf.now or GetTime()
|
local now = pfUI.uf.now or GetTime()
|
||||||
@@ -672,41 +604,6 @@ function libpredict:HealDelay(sender, delay)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function libpredict:Ress(sender, target, senderGuid)
|
|
||||||
ress[target] = ress[target] or {}
|
|
||||||
ress[target][sender] = true
|
|
||||||
if senderGuid then ressGuidToName[senderGuid] = sender end
|
|
||||||
-- no timer here - timer is only set once the cast actually completes
|
|
||||||
end
|
|
||||||
|
|
||||||
function libpredict:RessSetTimer(sender, target)
|
|
||||||
ress_timers[target] = ress_timers[target] or {}
|
|
||||||
local existing = ress_timers[target][sender]
|
|
||||||
if not existing or GetTime() >= existing then
|
|
||||||
ress_timers[target][sender] = GetTime() + RESS_TIMEOUT
|
|
||||||
else
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function libpredict:RessStop(sender)
|
|
||||||
local now = GetTime()
|
|
||||||
for ttarget, t in pairs(ress) do
|
|
||||||
for tsender in pairs(ress[ttarget]) do
|
|
||||||
if sender == tsender then
|
|
||||||
local expiry = ress_timers[ttarget] and ress_timers[ttarget][tsender]
|
|
||||||
if not expiry or now >= expiry then
|
|
||||||
ress[ttarget][tsender] = nil
|
|
||||||
if ress_timers[ttarget] then ress_timers[ttarget][tsender] = nil end
|
|
||||||
else
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
for guid, name in pairs(ressGuidToName) do
|
|
||||||
if name == sender then ressGuidToName[guid] = nil end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function libpredict:UnitGetIncomingHeals(unit)
|
function libpredict:UnitGetIncomingHeals(unit)
|
||||||
if not unit then return 0 end
|
if not unit then return 0 end
|
||||||
local name = UnitName(unit)
|
local name = UnitName(unit)
|
||||||
@@ -729,21 +626,10 @@ function libpredict:UnitGetIncomingHeals(unit)
|
|||||||
return sumheal
|
return sumheal
|
||||||
end
|
end
|
||||||
|
|
||||||
function libpredict:UnitHasIncomingResurrection(unit)
|
-- Whether a resurrection is being cast at the unit, or landed and waits for
|
||||||
if not unit then return nil end
|
-- the unit to accept it
|
||||||
local name = UnitName(unit)
|
function libpredict:UnitHasResurrection(unit)
|
||||||
if not name then return nil end
|
return UnitHasIncomingResurrection(unit) or resOffers[UnitGUID(unit)] ~= nil
|
||||||
|
|
||||||
if not ress[name] then
|
|
||||||
return nil
|
|
||||||
else
|
|
||||||
for sender, val in pairs(ress[name]) do
|
|
||||||
if val == true then
|
|
||||||
return val
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
return nil
|
|
||||||
end
|
end
|
||||||
|
|
||||||
local realm = GetRealmName()
|
local realm = GetRealmName()
|
||||||
@@ -834,7 +720,6 @@ local pendingHots = {}
|
|||||||
|
|
||||||
-- Gather Data by User Actions
|
-- Gather Data by User Actions
|
||||||
hooksecurefunc("CastSpell", function(id, bookType)
|
hooksecurefunc("CastSpell", function(id, bookType)
|
||||||
if not libpredict.sender.enabled then return end
|
|
||||||
local effect, rank = libspell.GetSpellInfo(id, bookType)
|
local effect, rank = libspell.GetSpellInfo(id, bookType)
|
||||||
if not effect then return end
|
if not effect then return end
|
||||||
spell_queue[1] = effect
|
spell_queue[1] = effect
|
||||||
@@ -887,7 +772,6 @@ hooksecurefunc("CastSpell", function(id, bookType)
|
|||||||
end)
|
end)
|
||||||
|
|
||||||
hooksecurefunc("CastSpellByName", function(effect, target)
|
hooksecurefunc("CastSpellByName", function(effect, target)
|
||||||
if not libpredict.sender.enabled then return end
|
|
||||||
local effect, rank = libspell.GetSpellInfo(effect)
|
local effect, rank = libspell.GetSpellInfo(effect)
|
||||||
if not effect then return end
|
if not effect then return end
|
||||||
|
|
||||||
@@ -951,7 +835,6 @@ hooksecurefunc("CastSpellByName", function(effect, target)
|
|||||||
end)
|
end)
|
||||||
|
|
||||||
hooksecurefunc("UseAction", function(slot, target, selfcast)
|
hooksecurefunc("UseAction", function(slot, target, selfcast)
|
||||||
if not libpredict.sender.enabled then return end
|
|
||||||
if not IsCurrentAction(slot) then return end
|
if not IsCurrentAction(slot) then return end
|
||||||
local kind, id = GetActionInfo(slot)
|
local kind, id = GetActionInfo(slot)
|
||||||
local effect, rank
|
local effect, rank
|
||||||
@@ -1012,8 +895,10 @@ hooksecurefunc("UseAction", function(slot, target, selfcast)
|
|||||||
end)
|
end)
|
||||||
|
|
||||||
libpredict.sender = CreateFrame("Frame", "pfPredictionSender", UIParent)
|
libpredict.sender = CreateFrame("Frame", "pfPredictionSender", UIParent)
|
||||||
|
-- cleared when a HealComm addon already broadcasts this player's casts
|
||||||
libpredict.sender.enabled = true
|
libpredict.sender.enabled = true
|
||||||
libpredict.sender.SendHealCommMsg = function(self, msg)
|
libpredict.sender.SendHealCommMsg = function(self, msg)
|
||||||
|
if not self.enabled then return end
|
||||||
-- Smart channel selection: Only send to relevant channel to avoid duplicates
|
-- Smart channel selection: Only send to relevant channel to avoid duplicates
|
||||||
if IsInRaid() then
|
if IsInRaid() then
|
||||||
-- In raid: Only send to RAID (includes all raid members)
|
-- In raid: Only send to RAID (includes all raid members)
|
||||||
@@ -1026,6 +911,7 @@ libpredict.sender.SendHealCommMsg = function(self, msg)
|
|||||||
-- BG groups are handled by RAID channel
|
-- BG groups are handled by RAID channel
|
||||||
end
|
end
|
||||||
libpredict.sender.SendResCommMsg = function(self, msg)
|
libpredict.sender.SendResCommMsg = function(self, msg)
|
||||||
|
if not self.enabled then return end
|
||||||
-- Smart channel selection: Only send to relevant channel to avoid duplicates
|
-- Smart channel selection: Only send to relevant channel to avoid duplicates
|
||||||
if IsInRaid() then
|
if IsInRaid() then
|
||||||
-- In raid: Only send to RAID (includes all raid members)
|
-- In raid: Only send to RAID (includes all raid members)
|
||||||
@@ -1071,7 +957,6 @@ libpredict.sender:RegisterEvent("UNIT_SPELLCAST_DELAYED")
|
|||||||
libpredict.sender:RegisterEvent("UNIT_SPELLCAST_SUCCEEDED")
|
libpredict.sender:RegisterEvent("UNIT_SPELLCAST_SUCCEEDED")
|
||||||
libpredict.sender:RegisterEvent("UNIT_SPELLCAST_FAILED")
|
libpredict.sender:RegisterEvent("UNIT_SPELLCAST_FAILED")
|
||||||
libpredict.sender:RegisterEvent("UNIT_SPELLCAST_INTERRUPTED")
|
libpredict.sender:RegisterEvent("UNIT_SPELLCAST_INTERRUPTED")
|
||||||
libpredict.sender:RegisterEvent("UNIT_SPELLCAST_STOP")
|
|
||||||
libpredict.sender:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
|
libpredict.sender:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
|
||||||
|
|
||||||
-- Shared cleanup helper for failed/interrupted casts
|
-- Shared cleanup helper for failed/interrupted casts
|
||||||
@@ -1083,7 +968,6 @@ local function onCastFailed()
|
|||||||
s.healing = nil
|
s.healing = nil
|
||||||
elseif s.resurrecting then
|
elseif s.resurrecting then
|
||||||
local target = s.current_cast_target or spell_queue[3]
|
local target = s.current_cast_target or spell_queue[3]
|
||||||
libpredict:RessStop(UnitName("player"))
|
|
||||||
s:SendHealCommMsg("Resurrection/stop/")
|
s:SendHealCommMsg("Resurrection/stop/")
|
||||||
s:SendResCommMsg("RESNO " .. (target or ""))
|
s:SendResCommMsg("RESNO " .. (target or ""))
|
||||||
s.resurrecting = nil
|
s.resurrecting = nil
|
||||||
@@ -1134,11 +1018,20 @@ local function OnHeal()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- A landed resurrection: the target has an offer to accept, which outlasts
|
||||||
|
-- UnitHasIncomingResurrection's end with the cast
|
||||||
|
local function OnResurrect()
|
||||||
|
-- arg8=destGUID
|
||||||
|
resOffers[arg8] = GetTime() + RES_OFFER_TIMEOUT
|
||||||
|
RefreshResFrames(arg8)
|
||||||
|
end
|
||||||
|
|
||||||
local lastOtherCast = {} -- [event] = castGUID of the last other-unit event handled
|
local lastOtherCast = {} -- [event] = castGUID of the last other-unit event handled
|
||||||
|
|
||||||
libpredict.sender:SetScript("OnEvent", function()
|
libpredict.sender:SetScript("OnEvent", function()
|
||||||
if event == "COMBAT_LOG_EVENT_UNFILTERED" then
|
if event == "COMBAT_LOG_EVENT_UNFILTERED" then
|
||||||
if arg2 == "SPELL_HEAL" then OnHeal() end
|
if arg2 == "SPELL_HEAL" then OnHeal()
|
||||||
|
elseif arg2 == "SPELL_RESURRECT" then OnResurrect() end
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -1174,13 +1067,11 @@ libpredict.sender:SetScript("OnEvent", function()
|
|||||||
lastOtherCast[event] = arg2
|
lastOtherCast[event] = arg2
|
||||||
|
|
||||||
if event == "UNIT_SPELLCAST_START" then
|
if event == "UNIT_SPELLCAST_START" then
|
||||||
OnOtherCastStart(unit, arg3, arg2)
|
OnOtherCastStart(unit, arg3)
|
||||||
elseif event == "UNIT_SPELLCAST_SUCCEEDED" then
|
elseif event == "UNIT_SPELLCAST_SUCCEEDED" then
|
||||||
OnOtherCastSucceeded(unit, arg3, arg2)
|
OnOtherCastSucceeded(unit)
|
||||||
elseif event == "UNIT_SPELLCAST_INTERRUPTED" then
|
elseif event == "UNIT_SPELLCAST_INTERRUPTED" then
|
||||||
OnOtherCastInterrupted(unit)
|
OnOtherCastInterrupted(unit)
|
||||||
elseif event == "UNIT_SPELLCAST_STOP" then
|
|
||||||
castTargets[arg2] = nil
|
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
|||||||
+1
-14
@@ -382,8 +382,6 @@ pfUI:RegisterModule("actionbar", function ()
|
|||||||
end
|
end
|
||||||
elseif self.spellID then
|
elseif self.spellID then
|
||||||
GameTooltip:SetSpellByID(self.spellID)
|
GameTooltip:SetSpellByID(self.spellID)
|
||||||
elseif self.spellslot and self.booktype then
|
|
||||||
GameTooltip:SetSpell(self.spellslot, self.booktype)
|
|
||||||
else
|
else
|
||||||
GameTooltip:SetAction(self.id)
|
GameTooltip:SetAction(self.id)
|
||||||
end
|
end
|
||||||
@@ -456,11 +454,6 @@ pfUI:RegisterModule("actionbar", function ()
|
|||||||
id = self.bar == 1 and self.slot or sid-((self.bar)-1)*12
|
id = self.bar == 1 and self.slot or sid-((self.bar)-1)*12
|
||||||
end
|
end
|
||||||
|
|
||||||
-- overwrite with spell macro texture where possible
|
|
||||||
if self.spellslot and self.booktype then
|
|
||||||
texture = GetSpellTexture(self.spellslot, self.booktype)
|
|
||||||
end
|
|
||||||
|
|
||||||
if not self.showempty and self.backdrop and not texture and grid == 0 then
|
if not self.showempty and self.backdrop and not texture and grid == 0 then
|
||||||
self.backdrop:Hide()
|
self.backdrop:Hide()
|
||||||
self.hide = true
|
self.hide = true
|
||||||
@@ -590,9 +583,6 @@ pfUI:RegisterModule("actionbar", function ()
|
|||||||
start, duration, enable = GetShapeshiftFormCooldown(button.id)
|
start, duration, enable = GetShapeshiftFormCooldown(button.id)
|
||||||
elseif button.bar == 12 then
|
elseif button.bar == 12 then
|
||||||
start, duration, enable = GetPetActionCooldown(button.id)
|
start, duration, enable = GetPetActionCooldown(button.id)
|
||||||
elseif button.spellslot and button.booktype then
|
|
||||||
start, duration = GetSpellCooldown(button.spellslot, button.booktype)
|
|
||||||
enable = 1
|
|
||||||
else
|
else
|
||||||
start, duration, enable = GetActionCooldown(button.id)
|
start, duration, enable = GetActionCooldown(button.id)
|
||||||
end
|
end
|
||||||
@@ -1150,8 +1140,6 @@ pfUI:RegisterModule("actionbar", function ()
|
|||||||
f.count:SetJustifyH("RIGHT")
|
f.count:SetJustifyH("RIGHT")
|
||||||
f.count:SetJustifyV("BOTTOM")
|
f.count:SetJustifyV("BOTTOM")
|
||||||
|
|
||||||
f.scanmacro, f.spellslot, f.booktype = nil, nil, nil
|
|
||||||
|
|
||||||
-- range glow color
|
-- range glow color
|
||||||
f.rangeColor = GetStringColorObject(C.bars.rangecolor)
|
f.rangeColor = GetStringColorObject(C.bars.rangecolor)
|
||||||
|
|
||||||
@@ -1218,8 +1206,7 @@ pfUI:RegisterModule("actionbar", function ()
|
|||||||
end
|
end
|
||||||
|
|
||||||
-- the stored layout is invalid, temporary fallback
|
-- the stored layout is invalid, temporary fallback
|
||||||
local _, _, fcols, frows = string.find(tostring(formfactor or ""), "(%d+)%s*x%s*(%d+)")
|
if not fcols2 or not frows2 then
|
||||||
if not ((fcols and frows) or pfGridmath[buttons][BarLayoutFormfactor(formfactor)]) then
|
|
||||||
formfactor = BarLayoutOptions(buttons)[1]
|
formfactor = BarLayoutOptions(buttons)[1]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
+105
-141
@@ -69,12 +69,42 @@ pfUI:RegisterModule("addons", function ()
|
|||||||
pfUI.addons:Hide()
|
pfUI.addons:Hide()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
-- installed addons, one entry per row of the addon list
|
||||||
|
local addons = {}
|
||||||
|
for i = 1, GetNumAddOns() do
|
||||||
|
local name, title, notes = GetAddOnInfo(i)
|
||||||
|
addons[i] = {
|
||||||
|
index = i,
|
||||||
|
name = name,
|
||||||
|
title = title,
|
||||||
|
notes = notes,
|
||||||
|
author = GetAddOnMetadata(name, "Author"),
|
||||||
|
version = GetAddOnMetadata(name, "Version"),
|
||||||
|
deps = { GetAddOnDependencies(i) }, -- required (.toc Dependencies)
|
||||||
|
optdeps = { C_AddOns.GetAddOnOptionalDependencies(i) }, -- optional (.toc OptionalDeps)
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
local function IsAddonEnabled(index)
|
||||||
|
local _, _, _, enabled = GetAddOnInfo(index)
|
||||||
|
return enabled
|
||||||
|
end
|
||||||
|
|
||||||
|
local function SetAddonEnabled(index, enabled)
|
||||||
|
if enabled then
|
||||||
|
EnableAddOn(index)
|
||||||
|
else
|
||||||
|
DisableAddOn(index)
|
||||||
|
end
|
||||||
|
pfUI.addons.hasChanged = true
|
||||||
|
end
|
||||||
|
|
||||||
-- addons profile
|
-- addons profile
|
||||||
local function GetSelectedAddonsList()
|
local function GetSelectedAddonsList()
|
||||||
local selected_addons = {}
|
local selected_addons = {}
|
||||||
for i, frame in ipairs(pfUI.addons.list) do
|
for i, addon in ipairs(addons) do
|
||||||
if frame.input:GetChecked() then
|
if IsAddonEnabled(i) then
|
||||||
table.insert(selected_addons, frame.aname)
|
table.insert(selected_addons, addon.name)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
return selected_addons
|
return selected_addons
|
||||||
@@ -90,28 +120,20 @@ pfUI:RegisterModule("addons", function ()
|
|||||||
pfUI.addons.profile.dropdown:SetSelectionByText(profile)
|
pfUI.addons.profile.dropdown:SetSelectionByText(profile)
|
||||||
|
|
||||||
-- load profile
|
-- load profile
|
||||||
local selected_list = pfUI_addon_profiles[profile]
|
local selected = {}
|
||||||
for i=1, GetNumAddOns() do
|
for _, name in ipairs(pfUI_addon_profiles[profile]) do
|
||||||
local active = false
|
selected[name] = true
|
||||||
local f = pfUI.addons.list[i]
|
end
|
||||||
|
|
||||||
for i_i, n in ipairs(selected_list) do
|
for i, addon in ipairs(addons) do
|
||||||
if f.aname == n then
|
if selected[addon.name] and not IsAddonEnabled(i) then
|
||||||
active = true
|
SetAddonEnabled(i, true)
|
||||||
break
|
elseif not selected[addon.name] and IsAddonEnabled(i) then
|
||||||
|
SetAddonEnabled(i, false)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if active then
|
pfUI.addons.list.ScrollBox:ReinitializeFrames()
|
||||||
if not f.input:GetChecked() then
|
|
||||||
f.input:Click()
|
|
||||||
end
|
|
||||||
else
|
|
||||||
if f.input:GetChecked() then
|
|
||||||
f.input:Click()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
-- addon profiles
|
-- addon profiles
|
||||||
@@ -193,23 +215,6 @@ pfUI:RegisterModule("addons", function ()
|
|||||||
return menu
|
return menu
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- addon list: scroll frame
|
|
||||||
pfUI.addons.scroll = CreateScrollFrame("pfAddonListScroll", pfUI.addons)
|
|
||||||
pfUI.addons.scroll:SetSize(360, 410)
|
|
||||||
pfUI.addons.scroll:SetPoint("BOTTOM", 0, 10)
|
|
||||||
|
|
||||||
pfUI.addons.scroll.backdrop = CreateFrame("Frame", nil, pfUI.addons.scroll)
|
|
||||||
pfUI.addons.scroll.backdrop:SetFrameLevel(1)
|
|
||||||
pfUI.addons.scroll.backdrop:SetPoint("TOPLEFT", pfUI.addons.scroll, "TOPLEFT", -5, 5)
|
|
||||||
pfUI.addons.scroll.backdrop:SetPoint("BOTTOMRIGHT", pfUI.addons.scroll, "BOTTOMRIGHT", 5, -5)
|
|
||||||
CreateBackdrop(pfUI.addons.scroll.backdrop, nil, true)
|
|
||||||
|
|
||||||
-- addon list: scroll parent
|
|
||||||
pfUI.addons.list = CreateScrollChild("pfAddonList", pfUI.addons.scroll)
|
|
||||||
pfUI.addons.list:RegisterEvent("ADDON_LOADED")
|
|
||||||
pfUI.addons.list:RegisterEvent("PLAYER_ENTERING_WORLD")
|
|
||||||
pfUI.addons.list:SetHeight(GetNumAddOns() * 25 + 26)
|
|
||||||
|
|
||||||
local function AddDependencyLines(header, deps)
|
local function AddDependencyLines(header, deps)
|
||||||
if not deps or table.getn(deps) == 0 then return end
|
if not deps or table.getn(deps) == 0 then return end
|
||||||
GameTooltip:AddLine(" ")
|
GameTooltip:AddLine(" ")
|
||||||
@@ -225,137 +230,96 @@ pfUI:RegisterModule("addons", function ()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local function AddonOnEnter()
|
local function RowOnEnter(self)
|
||||||
this:SetBackdropBorderColor(1,1,1,.08)
|
local addon = self.addon
|
||||||
|
self:SetBackdropBorderColor(1,1,1,.08)
|
||||||
|
|
||||||
GameTooltip:SetOwner(this, "ANCHOR_RIGHT")
|
GameTooltip:SetOwner(self, "ANCHOR_RIGHT")
|
||||||
GameTooltip:SetText(this.atitle)
|
GameTooltip:SetText(addon.title)
|
||||||
if this.aversion then
|
if addon.version then
|
||||||
GameTooltip:AddDoubleLine(T["Version"], this.aversion, 1,1,1, .2,1,.8)
|
GameTooltip:AddDoubleLine(T["Version"], addon.version, 1,1,1, .2,1,.8)
|
||||||
end
|
end
|
||||||
|
|
||||||
if this.aauthor then
|
if addon.author then
|
||||||
GameTooltip:AddDoubleLine(T["Author"], this.aauthor, 1,1,1, .2,1,.8)
|
GameTooltip:AddDoubleLine(T["Author"], addon.author, 1,1,1, .2,1,.8)
|
||||||
end
|
end
|
||||||
|
|
||||||
GameTooltip:AddLine(this.anote, .75,.75,.75,1)
|
GameTooltip:AddLine(addon.notes, .75,.75,.75,1)
|
||||||
AddDependencyLines(T["Dependencies"], this.adeps)
|
AddDependencyLines(T["Dependencies"], addon.deps)
|
||||||
AddDependencyLines(T["Optional Dependencies"], this.aoptdeps)
|
AddDependencyLines(T["Optional Dependencies"], addon.optdeps)
|
||||||
GameTooltip:SetWidth(180)
|
GameTooltip:SetWidth(180)
|
||||||
GameTooltip:Show()
|
GameTooltip:Show()
|
||||||
end
|
end
|
||||||
|
|
||||||
local function AddonOnLeave()
|
local function RowOnLeave(self)
|
||||||
this:SetBackdropBorderColor(1,1,1,.04)
|
self:SetBackdropBorderColor(1,1,1,.04)
|
||||||
GameTooltip:Hide()
|
GameTooltip:Hide()
|
||||||
end
|
end
|
||||||
|
|
||||||
local function AddonOnClick()
|
local function RowOnClick(self)
|
||||||
this.input:Click()
|
self.input:Click()
|
||||||
end
|
end
|
||||||
|
|
||||||
local function InputOnClick()
|
local function InputOnClick(self)
|
||||||
if this:GetChecked() then
|
SetAddonEnabled(self:GetParent().addon.index, self:GetChecked())
|
||||||
EnableAddOn(this:GetID())
|
|
||||||
else
|
|
||||||
DisableAddOn(this:GetID())
|
|
||||||
end
|
|
||||||
pfUI.addons.hasChanged = true
|
|
||||||
|
|
||||||
local id, name = pfUI.addons.profile.dropdown:GetSelection()
|
local _, name = pfUI.addons.profile.dropdown:GetSelection()
|
||||||
name = name or T["Current"]
|
name = name or T["Current"]
|
||||||
pfUI_addon_profiles[name] = GetSelectedAddonsList()
|
pfUI_addon_profiles[name] = GetSelectedAddonsList()
|
||||||
end
|
end
|
||||||
|
|
||||||
pfUI.addons.list:SetScript("OnEvent", function()
|
local function InitRow(row, addon)
|
||||||
for i=1, GetNumAddOns() do
|
-- one-time setup of a pooled row
|
||||||
local aname, atitle, anote = GetAddOnInfo(i)
|
if not row.input then
|
||||||
local aauthor = GetAddOnMetadata(aname, "Author")
|
row:SetBackdrop(pfUI.backdrop_hover)
|
||||||
local aversion = GetAddOnMetadata(aname, "Version")
|
row:SetBackdropBorderColor(1,1,1,.04)
|
||||||
|
|
||||||
-- basic frame
|
row:EnableMouse(true)
|
||||||
if not pfUI.addons.list[i] then
|
row:SetScript("OnEnter", RowOnEnter)
|
||||||
pfUI.addons.list[i] = CreateFrame("Button", nil, pfUI.addons.list)
|
row:SetScript("OnLeave", RowOnLeave)
|
||||||
local frame = pfUI.addons.list[i]
|
row:SetScript("OnClick", RowOnClick)
|
||||||
frame.aname = aname
|
|
||||||
frame.atitle = atitle
|
|
||||||
frame.anote = anote
|
|
||||||
frame.aauthor = aauthor
|
|
||||||
frame.aversion = aversion
|
|
||||||
frame.adeps = { GetAddOnDependencies(i) } -- required (.toc Dependencies)
|
|
||||||
frame.aoptdeps = { C_AddOns.GetAddOnOptionalDependencies(i) } -- optional (.toc OptionalDeps)
|
|
||||||
|
|
||||||
frame:SetSize(340, 25)
|
|
||||||
frame:SetPoint("TOPLEFT", 5, i * -25 + 20)
|
|
||||||
|
|
||||||
frame:SetBackdrop(pfUI.backdrop_hover)
|
|
||||||
frame:SetBackdropBorderColor(1,1,1,.04)
|
|
||||||
|
|
||||||
frame:EnableMouse(1)
|
|
||||||
frame:SetScript("OnEnter", AddonOnEnter)
|
|
||||||
frame:SetScript("OnLeave", AddonOnLeave)
|
|
||||||
frame:SetScript("OnClick", AddonOnClick)
|
|
||||||
|
|
||||||
-- caption
|
-- caption
|
||||||
frame.caption = frame:CreateFontString("Status", "LOW", "GameFontNormal")
|
row.caption = row:CreateFontString(nil, "LOW", "GameFontNormal")
|
||||||
frame.caption:SetFont(pfUI.font_default, C.global.font_size + 2, "OUTLINE")
|
row.caption:SetFont(pfUI.font_default, C.global.font_size + 2, "OUTLINE")
|
||||||
frame.caption:SetPoint("LEFT", frame, "LEFT", 2, 0)
|
row.caption:SetPoint("LEFT", row, "LEFT", 2, 0)
|
||||||
frame.caption:SetFontObject(GameFontWhite)
|
row.caption:SetFontObject(GameFontWhite)
|
||||||
frame.caption:SetJustifyH("LEFT")
|
row.caption:SetJustifyH("LEFT")
|
||||||
frame.caption:SetText(atitle)
|
|
||||||
|
|
||||||
-- input field
|
-- input field
|
||||||
frame.input = CreateFrame("CheckButton", nil, frame, "UICheckButtonTemplate")
|
row.input = CreateFrame("CheckButton", nil, row, "UICheckButtonTemplate")
|
||||||
frame.input:SetFrameLevel(3)
|
row.input:SetNormalTexture("")
|
||||||
frame.input:SetNormalTexture("")
|
row.input:SetPushedTexture("")
|
||||||
frame.input:SetPushedTexture("")
|
row.input:SetHighlightTexture("")
|
||||||
frame.input:SetHighlightTexture("")
|
CreateBackdrop(row.input, nil, true)
|
||||||
CreateBackdrop(frame.input, nil, true)
|
row.input:SetBackdropBorderColor(.3,.3,.3,1)
|
||||||
frame.input:SetBackdropBorderColor(.3,.3,.3,1)
|
row.input:SetSize(14, 14)
|
||||||
frame.input:SetWidth(14)
|
row.input:SetPoint("RIGHT" , -5, 1)
|
||||||
frame.input:SetHeight(14)
|
row.input:SetScript("OnClick", InputOnClick)
|
||||||
frame.input:SetPoint("RIGHT" , -5, 1)
|
|
||||||
frame.input:SetID(i)
|
|
||||||
frame.input:SetScript("OnClick", InputOnClick)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
if IsAddOnLoaded(i) then
|
row.addon = addon
|
||||||
pfUI.addons.list[i].input:SetChecked()
|
row.caption:SetText(addon.title)
|
||||||
pfUI.addons.list[i].caption:SetAlpha(1)
|
row.caption:SetAlpha(IsAddOnLoaded(addon.index) and 1 or .5)
|
||||||
else
|
row.input:SetChecked(IsAddonEnabled(addon.index))
|
||||||
pfUI.addons.list[i].caption:SetAlpha(.5)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end)
|
|
||||||
|
|
||||||
-- show only frames in visible range
|
|
||||||
function pfUI.addons.scroll:ShowVisibleRange()
|
|
||||||
local top_index, bottom_index, range
|
|
||||||
range = floor(pfUI.addons.scroll:GetHeight() / 25) + 1
|
|
||||||
top_index = floor(pfUI.addons.scroll:GetVerticalScroll() / 25) > 0 and floor(pfUI.addons.scroll:GetVerticalScroll() / 25) or 1
|
|
||||||
bottom_index = top_index + range
|
|
||||||
for i=1, GetNumAddOns() do
|
|
||||||
if i >= top_index and i <= bottom_index then
|
|
||||||
pfUI.addons.list[i]:Show()
|
|
||||||
else
|
|
||||||
pfUI.addons.list[i]:Hide()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
pfUI.addons.scroll.slider:SetScript("OnValueChanged", function()
|
-- addon list: a ScrollBox keeps rows only for the addons in view
|
||||||
this:GetParent():SetVerticalScroll(this:GetValue())
|
pfUI.addons.list = CreateFrame("Frame", "pfAddonList", pfUI.addons, "pfUIScrollBoxListTemplate")
|
||||||
end)
|
pfUI.addons.list:SetSize(370, 420)
|
||||||
pfUI.addons.scroll:SetScript("OnScrollRangeChanged", function()
|
pfUI.addons.list:SetPoint("BOTTOM", 0, 5)
|
||||||
this.slider:SetMinMaxValues(1, floor(this:GetVerticalScrollRange() + 25))
|
CreateBackdrop(pfUI.addons.list, nil, true)
|
||||||
end)
|
|
||||||
pfUI.addons.scroll:SetScript("OnShow", function()
|
local view = CreateScrollBoxListLinearView(5, 5, 5, 8)
|
||||||
this.slider:SetValue(floor(this:GetVerticalScroll()))
|
view:SetElementExtent(25)
|
||||||
pfUI.addons.scroll:ShowVisibleRange()
|
view:SetElementInitializer("Button", InitRow)
|
||||||
end)
|
ScrollUtil.InitScrollBoxListWithScrollBar(pfUI.addons.list.ScrollBox, pfUI.addons.list.ScrollBar, view)
|
||||||
pfUI.addons.scroll:SetScript("OnVerticalScroll", function()
|
pfUI.addons.list.ScrollBox:SetDataProvider(CreateDataProvider(addons))
|
||||||
pfUI.addons.scroll:ShowVisibleRange()
|
|
||||||
this.slider:SetValue(floor(this:GetVerticalScroll()))
|
-- a load-on-demand addon that loads brightens its row
|
||||||
|
pfUI.addons.list:RegisterEvent("ADDON_LOADED")
|
||||||
|
pfUI.addons.list:SetScript("OnEvent", function(self)
|
||||||
|
self.ScrollBox:ReinitializeFrames()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
end)
|
end)
|
||||||
|
|||||||
+10
-11
@@ -29,20 +29,20 @@ pfUI:RegisterModule("afkcam", function ()
|
|||||||
overlay:SetFrameStrata("DIALOG")
|
overlay:SetFrameStrata("DIALOG")
|
||||||
overlay:SetAllPoints(WorldFrame)
|
overlay:SetAllPoints(WorldFrame)
|
||||||
|
|
||||||
overlay:SetScript("OnMouseUp",function()
|
-- /afk toggles, so send it only while AFK is still set: once the client
|
||||||
SendChatMessage("","AFK")
|
-- or the server has cleared it, /afk would set it again
|
||||||
this._parent:stop()
|
local function Wake()
|
||||||
end)
|
if IsChatAFK() then SendChatMessage("", "AFK") end
|
||||||
|
afkcam:stop()
|
||||||
|
end
|
||||||
|
overlay:SetScript("OnMouseUp", Wake)
|
||||||
overlay:SetScript("OnShow", function()
|
overlay:SetScript("OnShow", function()
|
||||||
this:EnableKeyboard(true)
|
this:EnableKeyboard(true)
|
||||||
end)
|
end)
|
||||||
overlay:SetScript("OnHide", function()
|
overlay:SetScript("OnHide", function()
|
||||||
this:EnableKeyboard(false)
|
this:EnableKeyboard(false)
|
||||||
end)
|
end)
|
||||||
overlay:SetScript("OnKeyUp",function()
|
overlay:SetScript("OnKeyUp", Wake)
|
||||||
SendChatMessage("","AFK")
|
|
||||||
this._parent:stop()
|
|
||||||
end)
|
|
||||||
overlay:Hide()
|
overlay:Hide()
|
||||||
|
|
||||||
local chat = CreateFrame("ScrollingMessageFrame", "pfAFKCamChat", overlay)
|
local chat = CreateFrame("ScrollingMessageFrame", "pfAFKCamChat", overlay)
|
||||||
@@ -82,7 +82,6 @@ pfUI:RegisterModule("afkcam", function ()
|
|||||||
end)
|
end)
|
||||||
overlay.chat = chat
|
overlay.chat = chat
|
||||||
|
|
||||||
overlay._parent = afkcam
|
|
||||||
afkcam.overlay = overlay
|
afkcam.overlay = overlay
|
||||||
|
|
||||||
local clock = CreateFrame("Frame", "pfAFKClock", overlay)
|
local clock = CreateFrame("Frame", "pfAFKClock", overlay)
|
||||||
@@ -166,9 +165,9 @@ pfUI:RegisterModule("afkcam", function ()
|
|||||||
if event == "PLAYER_FLAGS_CHANGED" then
|
if event == "PLAYER_FLAGS_CHANGED" then
|
||||||
if UnitIsAFK('player') then
|
if UnitIsAFK('player') then
|
||||||
delay:Show()
|
delay:Show()
|
||||||
elseif delay:IsVisible() then
|
else
|
||||||
delay:Hide()
|
delay:Hide()
|
||||||
this:stop()
|
if this._spinning then this:stop() end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if this._spinning then
|
if this._spinning then
|
||||||
|
|||||||
+29
-55
@@ -6,8 +6,6 @@ pfUI:RegisterModule("bags", function ()
|
|||||||
[1804] = {frame="picklock"},
|
[1804] = {frame="picklock"},
|
||||||
}
|
}
|
||||||
|
|
||||||
local scanner = libtipscan:GetScanner("input_search")
|
|
||||||
|
|
||||||
local function BagSortOpts()
|
local function BagSortOpts()
|
||||||
return {
|
return {
|
||||||
reverse = C.appearance.bags.sortreverse == "1",
|
reverse = C.appearance.bags.sortreverse == "1",
|
||||||
@@ -95,6 +93,7 @@ pfUI:RegisterModule("bags", function ()
|
|||||||
pfUI.bag:RegisterEvent("ITEM_LOCK_CHANGED")
|
pfUI.bag:RegisterEvent("ITEM_LOCK_CHANGED")
|
||||||
pfUI.bag:RegisterEvent("SPELLS_CHANGED")
|
pfUI.bag:RegisterEvent("SPELLS_CHANGED")
|
||||||
pfUI.bag:RegisterEvent("MERCHANT_CLOSED")
|
pfUI.bag:RegisterEvent("MERCHANT_CLOSED")
|
||||||
|
pfUI.bag:RegisterEvent("INVENTORY_SEARCH_UPDATE")
|
||||||
|
|
||||||
pfUI.bag.delay = { UpdateBag = {} }
|
pfUI.bag.delay = { UpdateBag = {} }
|
||||||
|
|
||||||
@@ -122,6 +121,11 @@ pfUI:RegisterModule("bags", function ()
|
|||||||
pfUI.bag:UpdateItemLock()
|
pfUI.bag:UpdateItemLock()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if this.delay.UpdateSearch then
|
||||||
|
this.delay.UpdateSearch = nil
|
||||||
|
pfUI.bag:UpdateSearch()
|
||||||
|
end
|
||||||
|
|
||||||
for bag in pairs(this.delay.UpdateBag) do
|
for bag in pairs(this.delay.UpdateBag) do
|
||||||
this.delay.UpdateBag[bag] = nil
|
this.delay.UpdateBag[bag] = nil
|
||||||
pfUI.bag:UpdateBag(bag)
|
pfUI.bag:UpdateBag(bag)
|
||||||
@@ -159,6 +163,10 @@ pfUI:RegisterModule("bags", function ()
|
|||||||
this.delay.UpdateItemLock = true
|
this.delay.UpdateItemLock = true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if event == "INVENTORY_SEARCH_UPDATE" then
|
||||||
|
this.delay.UpdateSearch = true
|
||||||
|
end
|
||||||
|
|
||||||
if event == "PLAYERBANKSLOTS_CHANGED" then
|
if event == "PLAYERBANKSLOTS_CHANGED" then
|
||||||
this.delay.UpdateBag[-1] = true
|
this.delay.UpdateBag[-1] = true
|
||||||
end
|
end
|
||||||
@@ -377,6 +385,21 @@ pfUI:RegisterModule("bags", function ()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- dim the slots that the bag search (C_Container.SetItemSearch) filters out
|
||||||
|
local searchInfo = {}
|
||||||
|
function pfUI.bag:UpdateSlotSearch(bag, slot)
|
||||||
|
local info = C_Container.GetContainerItemInfo(bag, slot, searchInfo)
|
||||||
|
pfUI.bags[bag].slots[slot].frame:SetAlpha(info and info.isFiltered and .25 or 1)
|
||||||
|
end
|
||||||
|
|
||||||
|
function pfUI.bag:UpdateSearch()
|
||||||
|
for bag = -2, 11 do
|
||||||
|
for slot in ipairs(pfUI.bags[bag].slots) do
|
||||||
|
pfUI.bag:UpdateSlotSearch(bag, slot)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function pfUI.bag:UpdateSlot(bag, slot)
|
function pfUI.bag:UpdateSlot(bag, slot)
|
||||||
if not pfUI.bags[bag] then return end
|
if not pfUI.bags[bag] then return end
|
||||||
|
|
||||||
@@ -465,6 +488,7 @@ pfUI:RegisterModule("bags", function ()
|
|||||||
SetItemButtonTexture(pfUI.bags[bag].slots[slot].frame, texture)
|
SetItemButtonTexture(pfUI.bags[bag].slots[slot].frame, texture)
|
||||||
SetItemButtonCount(pfUI.bags[bag].slots[slot].frame, count)
|
SetItemButtonCount(pfUI.bags[bag].slots[slot].frame, count)
|
||||||
SetItemButtonDesaturated(pfUI.bags[bag].slots[slot].frame, locked, 0.5, 0.5, 0.5)
|
SetItemButtonDesaturated(pfUI.bags[bag].slots[slot].frame, locked, 0.5, 0.5, 0.5)
|
||||||
|
pfUI.bag:UpdateSlotSearch(bag, slot)
|
||||||
|
|
||||||
local hasItem = texture and 1 or nil
|
local hasItem = texture and 1 or nil
|
||||||
pfUI.bags[bag].slots[slot].frame.hasItem = hasItem
|
pfUI.bags[bag].slots[slot].frame.hasItem = hasItem
|
||||||
@@ -1010,7 +1034,6 @@ pfUI:RegisterModule("bags", function ()
|
|||||||
-- bag search
|
-- bag search
|
||||||
if not frame.search then
|
if not frame.search then
|
||||||
frame.search = CreateFrame("Frame", "pfBagSearch", frame)
|
frame.search = CreateFrame("Frame", "pfBagSearch", frame)
|
||||||
frame.search.db = {}
|
|
||||||
frame.search:SetHeight(12)
|
frame.search:SetHeight(12)
|
||||||
frame.search:SetPoint("TOPLEFT", frame, "TOPLEFT", default_border, -default_border)
|
frame.search:SetPoint("TOPLEFT", frame, "TOPLEFT", default_border, -default_border)
|
||||||
frame.search:SetPoint("TOPRIGHT", frame.sort, "TOPLEFT", -default_border*3, -default_border)
|
frame.search:SetPoint("TOPRIGHT", frame.sort, "TOPLEFT", -default_border*3, -default_border)
|
||||||
@@ -1035,51 +1058,12 @@ pfUI:RegisterModule("bags", function ()
|
|||||||
|
|
||||||
frame.search.edit:SetScript("OnEditFocusLost", function()
|
frame.search.edit:SetScript("OnEditFocusLost", function()
|
||||||
this:SetText(T["Search"])
|
this:SetText(T["Search"])
|
||||||
for bag=-2, 11 do
|
C_Container.SetItemSearch("")
|
||||||
local bagsize = GetContainerNumSlots(bag)
|
|
||||||
if bag == -2 and pfUI.bag.showKeyring == true then bagsize = GetKeyRingSize() end
|
|
||||||
for slot=1, bagsize do
|
|
||||||
pfUI.bags[bag].slots[slot].frame:SetAlpha(1)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end)
|
end)
|
||||||
|
|
||||||
frame.search.edit:SetScript("OnTextChanged", function()
|
frame.search.edit:SetScript("OnTextChanged", function()
|
||||||
if this:GetText() == T["Search"] then return end
|
if this:GetText() == T["Search"] then return end
|
||||||
for bag=-2, 11 do
|
C_Container.SetItemSearch(this:GetText())
|
||||||
local bagsize = GetContainerNumSlots(bag)
|
|
||||||
if bag == -2 and pfUI.bag.showKeyring == true then bagsize = GetKeyRingSize() end
|
|
||||||
for slot=1, bagsize do
|
|
||||||
pfUI.bags[bag].slots[slot].frame:SetAlpha(.25)
|
|
||||||
local texture, itemCount, locked, quality, readable = GetContainerItemInfo(bag, slot)
|
|
||||||
if itemCount then
|
|
||||||
local itemLink = GetContainerItemLink(bag, slot)
|
|
||||||
local itemstring = string.sub(itemLink, string.find(itemLink, "%[")+1, string.find(itemLink, "%]")-1)
|
|
||||||
|
|
||||||
if C.appearance.bags.fulltext == "1" then
|
|
||||||
if not frame.search.db[itemLink] then
|
|
||||||
scanner:SetBagItem(bag, slot)
|
|
||||||
local text = scanner:Text()
|
|
||||||
|
|
||||||
local str = ""
|
|
||||||
for k, v in pairs(text) do
|
|
||||||
str = str .. (v[1] or "") .. (v[2] or "")
|
|
||||||
end
|
|
||||||
|
|
||||||
frame.search.db[itemLink] = strlower(str)
|
|
||||||
end
|
|
||||||
|
|
||||||
if strfind(frame.search.db[itemLink], strlower(this:GetText()), 1, true) then
|
|
||||||
pfUI.bags[bag].slots[slot].frame:SetAlpha(1)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
if strfind(strlower(itemstring), strlower(this:GetText()), 1, true) then
|
|
||||||
pfUI.bags[bag].slots[slot].frame:SetAlpha(1)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end)
|
end)
|
||||||
|
|
||||||
frame.search:SetScript("OnLeave", function()
|
frame.search:SetScript("OnLeave", function()
|
||||||
@@ -1094,17 +1078,7 @@ pfUI:RegisterModule("bags", function ()
|
|||||||
|
|
||||||
frame.search:SetScript("OnHide", function()
|
frame.search:SetScript("OnHide", function()
|
||||||
frame.search.edit:SetText(T["Search"])
|
frame.search.edit:SetText(T["Search"])
|
||||||
for bag = -2, 11 do
|
C_Container.SetItemSearch("")
|
||||||
if pfUI.bags[bag] then
|
|
||||||
local bagsize = GetContainerNumSlots(bag)
|
|
||||||
if bag == -2 and pfUI.bag.showKeyring == true then bagsize = GetKeyRingSize() end
|
|
||||||
for slot = 1, bagsize do
|
|
||||||
if pfUI.bags[bag] and pfUI.bags[bag].slots[slot] then
|
|
||||||
pfUI.bags[bag].slots[slot].frame:SetAlpha(1)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
|||||||
+6
-11
@@ -150,8 +150,8 @@ pfUI:RegisterModule("castbar", function ()
|
|||||||
-- One-shot poll: read C_Spell for the bar's unit, stamp or clear. Called
|
-- One-shot poll: read C_Spell for the bar's unit, stamp or clear. Called
|
||||||
-- from event handlers (cast start, target/focus change), never per-frame.
|
-- from event handlers (cast start, target/focus change), never per-frame.
|
||||||
local function RefreshBar(cb, rank)
|
local function RefreshBar(cb, rank)
|
||||||
local query = cb.unitstr ~= "" and cb.unitstr or cb.unitname
|
local query = cb.unitstr
|
||||||
if not query or (cb.unitstr ~= "" and not UnitExists(cb.unitstr)) then
|
if not UnitExists(query) then
|
||||||
ClearBar(cb)
|
ClearBar(cb)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
@@ -178,7 +178,7 @@ pfUI:RegisterModule("castbar", function ()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local function CreateCastbar(name, parent, unitstr, unitname)
|
local function CreateCastbar(name, parent, unitstr)
|
||||||
local cb = CreateFrame("Frame", name, parent or UIParent)
|
local cb = CreateFrame("Frame", name, parent or UIParent)
|
||||||
|
|
||||||
cb:SetHeight(C.global.font_size * 1.5)
|
cb:SetHeight(C.global.font_size * 1.5)
|
||||||
@@ -186,7 +186,6 @@ pfUI:RegisterModule("castbar", function ()
|
|||||||
cb:SetFrameLevel(8)
|
cb:SetFrameLevel(8)
|
||||||
|
|
||||||
cb.unitstr = unitstr
|
cb.unitstr = unitstr
|
||||||
cb.unitname = unitname
|
|
||||||
|
|
||||||
-- icon
|
-- icon
|
||||||
cb.icon = CreateFrame("Frame", nil, cb)
|
cb.icon = CreateFrame("Frame", nil, cb)
|
||||||
@@ -277,7 +276,7 @@ pfUI:RegisterModule("castbar", function ()
|
|||||||
|
|
||||||
-- Non-player bars: if the unit disappears (target died / detarget),
|
-- Non-player bars: if the unit disappears (target died / detarget),
|
||||||
-- drop the bar immediately.
|
-- drop the bar immediately.
|
||||||
if this.unitstr ~= "" and this.unitstr ~= "player" and not UnitExists(this.unitstr) then
|
if this.unitstr ~= "player" and not UnitExists(this.unitstr) then
|
||||||
ClearBar(this)
|
ClearBar(this)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
@@ -423,13 +422,12 @@ pfUI:RegisterModule("castbar", function ()
|
|||||||
-- endMs. delay is a positive magnitude; OnUpdate signs it "+" for casts
|
-- endMs. delay is a positive magnitude; OnUpdate signs it "+" for casts
|
||||||
-- and "-" for channels. Skipped during a tradeskill merge.
|
-- and "-" for channels. Skipped during a tradeskill merge.
|
||||||
if this.endTime and not this.tradeskillTotal then
|
if this.endTime and not this.tradeskillTotal then
|
||||||
local query = this.unitstr ~= "" and this.unitstr or this.unitname
|
|
||||||
local startMs, endMs
|
local startMs, endMs
|
||||||
if this.isChannel then
|
if this.isChannel then
|
||||||
local _, _, _, s, e = C_Spell.UnitChannelInfo(query)
|
local _, _, _, s, e = C_Spell.UnitChannelInfo(unit)
|
||||||
startMs, endMs = s, e
|
startMs, endMs = s, e
|
||||||
else
|
else
|
||||||
local _, _, _, s, e = C_Spell.UnitCastingInfo(query)
|
local _, _, _, s, e = C_Spell.UnitCastingInfo(unit)
|
||||||
startMs, endMs = s, e
|
startMs, endMs = s, e
|
||||||
end
|
end
|
||||||
if startMs and endMs then
|
if startMs and endMs then
|
||||||
@@ -544,9 +542,6 @@ pfUI:RegisterModule("castbar", function ()
|
|||||||
pfUI.castbar.focus:SetHeight(C.castbar.focus.height)
|
pfUI.castbar.focus:SetHeight(C.castbar.focus.height)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- bind castbar to the "focus" unit token; the GUID resolves at read time
|
|
||||||
pfUI.castbar.focus.unitstr = "focus"
|
|
||||||
|
|
||||||
UpdateMovable(pfUI.castbar.focus)
|
UpdateMovable(pfUI.castbar.focus)
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
+30
-12
@@ -376,7 +376,8 @@ pfUI:RegisterModule("chat", function ()
|
|||||||
CreateBackdrop(LanguageMenu)
|
CreateBackdrop(LanguageMenu)
|
||||||
CreateBackdrop(VoiceMacroMenu)
|
CreateBackdrop(VoiceMacroMenu)
|
||||||
|
|
||||||
local combatlogpanel = (CombatLogQuickButtonFrame_Custom and CombatLogQuickButtonFrame_Custom:GetHeight() or 0)
|
-- the combatlog module's quick button bar sits above the docked log
|
||||||
|
local combatlogpanel = (ChatFrame2.CombatLogQuickButtonFrame and ChatFrame2.CombatLogQuickButtonFrame:GetHeight() or 0)
|
||||||
|
|
||||||
for i=1, NUM_CHAT_WINDOWS do
|
for i=1, NUM_CHAT_WINDOWS do
|
||||||
local frame = _G["ChatFrame"..i]
|
local frame = _G["ChatFrame"..i]
|
||||||
@@ -389,7 +390,7 @@ pfUI:RegisterModule("chat", function ()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if combat > 5 then
|
if frame.CombatLogQuickButtonFrame or combat > 5 then
|
||||||
frame.pfCombatLog = true
|
frame.pfCombatLog = true
|
||||||
else
|
else
|
||||||
frame.pfCombatLog = nil
|
frame.pfCombatLog = nil
|
||||||
@@ -779,6 +780,20 @@ pfUI:RegisterModule("chat", function ()
|
|||||||
local r,g,b,a = GetStringColor(C.chat.text.timecolor)
|
local r,g,b,a = GetStringColor(C.chat.text.timecolor)
|
||||||
local timecolorhex = rgbhex(r,g,b,a)
|
local timecolorhex = rgbhex(r,g,b,a)
|
||||||
|
|
||||||
|
-- AddMessage puts the time between these at the start of each line
|
||||||
|
local timestampStart = timecolorhex .. tleft
|
||||||
|
local timestampEnd = tright .. "|r "
|
||||||
|
|
||||||
|
-- [ StripTimestamp ]
|
||||||
|
-- Returns a chat line without the timestamp AddMessage put before it.
|
||||||
|
function pfUI.chat.StripTimestamp(text)
|
||||||
|
if C.chat.text.time ~= "1" or text:sub(1, #timestampStart) ~= timestampStart then
|
||||||
|
return text
|
||||||
|
end
|
||||||
|
local _, last = text:find(timestampEnd, #timestampStart + 1, true)
|
||||||
|
return last and text:sub(last + 1) or text
|
||||||
|
end
|
||||||
|
|
||||||
local r,g,b = GetStringColor(C.chat.text.unknowncolor)
|
local r,g,b = GetStringColor(C.chat.text.unknowncolor)
|
||||||
local unknowncolorhex = rgbhex(r,g,b)
|
local unknowncolorhex = rgbhex(r,g,b)
|
||||||
|
|
||||||
@@ -788,12 +803,14 @@ pfUI:RegisterModule("chat", function ()
|
|||||||
return pfUI_playerDB[name].level
|
return pfUI_playerDB[name].level
|
||||||
end
|
end
|
||||||
|
|
||||||
local function AddMessage(frame, text, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17)
|
-- Passes every argument after the text on: GetMessageInfo returns them all,
|
||||||
|
-- and a hook that drops some loses them for every frame after it.
|
||||||
|
local function AddMessage(frame, text, ...)
|
||||||
if not text then return end
|
if not text then return end
|
||||||
|
|
||||||
-- skip chat parsing on combat log
|
-- skip chat parsing on combat log
|
||||||
if frame.pfCombatLog then
|
if frame.pfCombatLog then
|
||||||
return frame:HookAddMessage(text, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17)
|
return frame:HookAddMessage(text, ...)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- payload of the CHAT_MSG event printing this line; nil for lines
|
-- payload of the CHAT_MSG event printing this line; nil for lines
|
||||||
@@ -879,24 +896,25 @@ pfUI:RegisterModule("chat", function ()
|
|||||||
-- pushes the whisper colour code off position 1 and the find below fails
|
-- pushes the whisper colour code off position 1 and the find below fails
|
||||||
local isWhisper = C.chat.global.whispermod == "1" and string.find(text, wcol, 1) == 1
|
local isWhisper = C.chat.global.whispermod == "1" and string.find(text, wcol, 1) == 1
|
||||||
|
|
||||||
|
if isWhisper then
|
||||||
|
-- patch incoming whisper string to match the colors, before the
|
||||||
|
-- timestamp so it keeps the form StripTimestamp looks for
|
||||||
|
text = string.gsub(text, "|r", "|r" .. wcol)
|
||||||
|
end
|
||||||
|
|
||||||
-- show timestamp in chat
|
-- show timestamp in chat
|
||||||
if C.chat.text.time == "1" then
|
if C.chat.text.time == "1" then
|
||||||
text = timecolorhex .. tleft .. date(C.chat.text.timeformat) .. tright .. "|r " .. text
|
text = timestampStart .. date(C.chat.text.timeformat) .. timestampEnd .. text
|
||||||
end
|
end
|
||||||
|
|
||||||
-- save chat history
|
-- save chat history
|
||||||
if isWhisper then
|
if isWhisper then
|
||||||
SaveChatHistory(frame:GetID(), string.gsub(text, wcol, ""), cr, cg, cb)
|
SaveChatHistory(frame:GetID(), string.gsub(text, wcol, ""), cr, cg, cb)
|
||||||
else
|
else
|
||||||
SaveChatHistory(frame:GetID(), text, a1, a2, a3)
|
SaveChatHistory(frame:GetID(), text, ...)
|
||||||
end
|
end
|
||||||
|
|
||||||
if isWhisper then
|
frame:HookAddMessage(text, ...)
|
||||||
-- patch incoming whisper string to match the colors
|
|
||||||
text = string.gsub(text, "|r", "|r" .. wcol)
|
|
||||||
end
|
|
||||||
|
|
||||||
frame:HookAddMessage(text, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
for i=1,NUM_CHAT_WINDOWS do
|
for i=1,NUM_CHAT_WINDOWS do
|
||||||
|
|||||||
+32
-88
@@ -1,5 +1,4 @@
|
|||||||
pfUI:RegisterModule("chatcopy", function ()
|
pfUI:RegisterModule("chatcopy", function ()
|
||||||
local limit = 100
|
|
||||||
local f = CreateFrame("Frame")
|
local f = CreateFrame("Frame")
|
||||||
f:RegisterEvent("PLAYER_ENTERING_WORLD")
|
f:RegisterEvent("PLAYER_ENTERING_WORLD")
|
||||||
f:SetScript("OnEvent", function()
|
f:SetScript("OnEvent", function()
|
||||||
@@ -15,26 +14,27 @@ pfUI:RegisterModule("chatcopy", function ()
|
|||||||
button.icon:SetTexture("Interface\\Buttons\\UI-GuildButton-PublicNote-Disabled")
|
button.icon:SetTexture("Interface\\Buttons\\UI-GuildButton-PublicNote-Disabled")
|
||||||
button.icon:SetAllPoints()
|
button.icon:SetAllPoints()
|
||||||
|
|
||||||
button:SetScript("OnClick", function()
|
-- show or hide the copy box of every chat frame
|
||||||
if arg1 == "LeftButton" then
|
local function SetCopyMode(state)
|
||||||
this.state = not this.state
|
button.state = state
|
||||||
|
|
||||||
for i=1, _G.NUM_CHAT_WINDOWS do
|
for i=1, _G.NUM_CHAT_WINDOWS do
|
||||||
local frame = _G["ChatFrame"..i]
|
local scroll = _G["ChatFrame"..i].scroll
|
||||||
local scroll = frame.scroll
|
if scroll then
|
||||||
|
scroll:SetShown(state)
|
||||||
if scroll and this.state then
|
|
||||||
scroll:Show()
|
|
||||||
elseif scroll then
|
|
||||||
scroll:Hide()
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if this.state then
|
if state then
|
||||||
button.icon:SetTexture("Interface\\Buttons\\UI-GuildButton-PublicNote-Up")
|
button.icon:SetTexture("Interface\\Buttons\\UI-GuildButton-PublicNote-Up")
|
||||||
else
|
else
|
||||||
button.icon:SetTexture("Interface\\Buttons\\UI-GuildButton-PublicNote-Disabled")
|
button.icon:SetTexture("Interface\\Buttons\\UI-GuildButton-PublicNote-Disabled")
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
button:SetScript("OnClick", function()
|
||||||
|
if arg1 == "LeftButton" then
|
||||||
|
SetCopyMode(not this.state)
|
||||||
elseif arg1 == "RightButton" then
|
elseif arg1 == "RightButton" then
|
||||||
if ChatMenu:IsShown() then
|
if ChatMenu:IsShown() then
|
||||||
ChatMenu:Hide()
|
ChatMenu:Hide()
|
||||||
@@ -56,38 +56,9 @@ pfUI:RegisterModule("chatcopy", function ()
|
|||||||
|
|
||||||
for i=1, _G.NUM_CHAT_WINDOWS do
|
for i=1, _G.NUM_CHAT_WINDOWS do
|
||||||
local frame = _G["ChatFrame"..i]
|
local frame = _G["ChatFrame"..i]
|
||||||
local name = frame:GetName()
|
|
||||||
|
|
||||||
local combat = 0
|
-- the chat frame's messages in an edit box to copy from
|
||||||
for i, msg in pairs(frame.messageTypeList) do
|
local scroll = CreateFrame("Frame", "pfChatCopy" .. i, frame, "pfUIScrollingEditBoxTemplate")
|
||||||
if strfind(msg, "SPELL", 1) or strfind(msg, "COMBAT", 1) then
|
|
||||||
combat = combat + 1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
if combat < 5 then
|
|
||||||
-- initialize message cache
|
|
||||||
local history = {}
|
|
||||||
local AddMessage = frame.AddMessage
|
|
||||||
frame.AddMessage = function(self,msg,r,g,b)
|
|
||||||
if msg and r and g and b then
|
|
||||||
local col = rgbhex(r,g,b)
|
|
||||||
table.insert(history, 1, col..string.gsub(msg, "|r", col))
|
|
||||||
elseif msg then
|
|
||||||
table.insert(history, 1, "|cffffffff"..msg)
|
|
||||||
end
|
|
||||||
|
|
||||||
if history[limit] then
|
|
||||||
table.remove(history, limit)
|
|
||||||
end
|
|
||||||
AddMessage(self,msg,r,g,b)
|
|
||||||
end
|
|
||||||
|
|
||||||
-- read chat defaults
|
|
||||||
local font, size, flags = frame:GetFont()
|
|
||||||
|
|
||||||
-- build the frames
|
|
||||||
local scroll = CreateScrollFrame("ChatFrameScroll"..i, frame)
|
|
||||||
scroll:SetAllPoints(frame)
|
scroll:SetAllPoints(frame)
|
||||||
scroll.tex = scroll:CreateTexture(nil, "BACKGROUND")
|
scroll.tex = scroll:CreateTexture(nil, "BACKGROUND")
|
||||||
scroll.tex:SetTexture(0,0,0,.95)
|
scroll.tex:SetTexture(0,0,0,.95)
|
||||||
@@ -95,60 +66,33 @@ pfUI:RegisterModule("chatcopy", function ()
|
|||||||
scroll.tex:SetPoint("BOTTOMRIGHT", 3, -3)
|
scroll.tex:SetPoint("BOTTOMRIGHT", 3, -3)
|
||||||
scroll:Hide()
|
scroll:Hide()
|
||||||
|
|
||||||
local editbox = CreateFrame("EditBox", "pfChatCopyBox" .. i, scroll)
|
scroll:RegisterCallback("OnEscapePressed", function()
|
||||||
editbox:SetSize(frame:GetSize())
|
SetCopyMode(false)
|
||||||
editbox:SetAllPoints(scroll)
|
end, scroll)
|
||||||
editbox:SetTextColor(1,1,1,1)
|
|
||||||
editbox:SetFontObject(ChatFontNormal)
|
|
||||||
editbox:SetFont(font, size, flags)
|
|
||||||
editbox:SetAutoFocus(true)
|
|
||||||
editbox:SetMultiLine(true)
|
|
||||||
editbox:SetMaxLetters(0)
|
|
||||||
|
|
||||||
editbox:SetScript("OnMouseDown", function()
|
scroll:HookScript("OnShow", function()
|
||||||
editbox.hasFocus = true
|
-- each line in its own color, which also replaces the |r resets inside it
|
||||||
end)
|
local lines = {}
|
||||||
|
for index=1, frame:GetNumMessages() do
|
||||||
editbox:SetScript("OnEscapePressed", function()
|
local text, r, g, b = frame:GetMessageInfo(index)
|
||||||
if editbox.hasFocus then
|
if C.chat.text.copytime == "0" then
|
||||||
editbox:HighlightText(0, 0)
|
text = pfUI.chat.StripTimestamp(text)
|
||||||
editbox:ClearFocus()
|
|
||||||
editbox.hasFocus = false
|
|
||||||
else
|
|
||||||
editbox:GetParent():Hide()
|
|
||||||
pfChatCopyButton.icon:SetTexture("Interface\\Buttons\\UI-GuildButton-PublicNote-Disabled")
|
|
||||||
pfChatCopyButton.state = false
|
|
||||||
end
|
|
||||||
end)
|
|
||||||
|
|
||||||
scroll:SetScrollChild(editbox)
|
|
||||||
scroll:SetScript("OnShow", function()
|
|
||||||
editbox:SetText("")
|
|
||||||
for i=limit,0,-1 do
|
|
||||||
if history[i] then
|
|
||||||
editbox:Insert("\n" .. history[i])
|
|
||||||
end
|
end
|
||||||
|
local color = rgbhex(r, g, b)
|
||||||
|
table.insert(lines, color .. text:gsub("|r", color))
|
||||||
end
|
end
|
||||||
|
local text = table.concat(lines, "\n")
|
||||||
|
|
||||||
editbox:SetScript("OnUpdate", function()
|
scroll:SetFont(frame:GetFont())
|
||||||
if not this.count then this.count = 0 end
|
scroll:SetText(text)
|
||||||
|
|
||||||
scroll:UpdateScrollChildRect()
|
-- the cursor at the end scrolls the box to the newest line
|
||||||
scroll:SetVerticalScroll(scroll:GetVerticalScrollRange())
|
scroll:SetFocus()
|
||||||
scroll:Scroll()
|
scroll:SetCursorPosition(#text)
|
||||||
this.count = this.count + 1
|
|
||||||
|
|
||||||
-- the scroll frame takes a while to update
|
|
||||||
if this.count >= 3 then
|
|
||||||
this:SetScript("OnUpdate", nil)
|
|
||||||
this.count = 0
|
|
||||||
end
|
|
||||||
end)
|
|
||||||
end)
|
end)
|
||||||
|
|
||||||
frame.scroll = scroll
|
frame.scroll = scroll
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
this:UnregisterAllEvents()
|
this:UnregisterAllEvents()
|
||||||
end)
|
end)
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+151
-235
@@ -270,39 +270,20 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
-- ============================================================
|
-- ============================================================
|
||||||
|
|
||||||
local LIST_VISIBLE_ROWS = 7
|
local LIST_VISIBLE_ROWS = 7
|
||||||
local LIST_ROW_STRIDE = SET_ROW_HEIGHT + 2
|
-- The template keeps 5px around the rows, which sit 2px apart.
|
||||||
local listFrame = CreateFrame("Frame", nil, frame)
|
local listFrame = CreateFrame("Frame", nil, frame, "pfUIScrollBoxListTemplate")
|
||||||
listFrame:SetPoint("TOPLEFT", frame, "TOPLEFT", 16, -58)
|
listFrame:SetPoint("TOPLEFT", frame, "TOPLEFT", 16, -58)
|
||||||
-- Height fits N rows + (N-1) inter-row gaps + 3px top/bottom padding.
|
listFrame:SetSize(180, LIST_VISIBLE_ROWS * (SET_ROW_HEIGHT + 2) - 2 + 10)
|
||||||
listFrame:SetSize(180, LIST_VISIBLE_ROWS * LIST_ROW_STRIDE + 4)
|
|
||||||
CreateBackdrop(listFrame, nil, nil, .75)
|
CreateBackdrop(listFrame, nil, nil, .75)
|
||||||
|
|
||||||
-- Mouse-wheel scroll: list of [sets..., newSetRow] is virtualized
|
-- One-time setup of a pooled row. A row shows a set or, last in the
|
||||||
-- through LIST_VISIBLE_ROWS slots. Refresh() consumes listFrame.offset
|
-- list, the "New Set" entry; InitSetRow sets what differs.
|
||||||
-- and the wheel handler clamps + bumps it.
|
local function SetupSetRow(row)
|
||||||
listFrame.offset = 0
|
|
||||||
listFrame:EnableMouseWheel(true)
|
|
||||||
listFrame:SetScript("OnMouseWheel", function()
|
|
||||||
listFrame.offset = listFrame.offset - (arg1 or 0)
|
|
||||||
pfUI.equipmentmanager.Refresh()
|
|
||||||
end)
|
|
||||||
|
|
||||||
local setRows = {}
|
|
||||||
local function CreateSetRow()
|
|
||||||
local row = CreateFrame("Button", nil, listFrame)
|
|
||||||
row:SetSize(170, SET_ROW_HEIGHT)
|
|
||||||
-- Position is set per-Refresh based on the row's visible slot;
|
|
||||||
-- start anchored to avoid uninitialized geometry before first Refresh.
|
|
||||||
row:SetPoint("TOPLEFT", listFrame, "TOPLEFT", 5, -3)
|
|
||||||
|
|
||||||
row.icon = row:CreateTexture(nil, "ARTWORK")
|
row.icon = row:CreateTexture(nil, "ARTWORK")
|
||||||
row.icon:SetSize(30, 30)
|
row.icon:SetPoint("CENTER", row, "LEFT", 17, 0)
|
||||||
row.icon:SetPoint("LEFT", row, "LEFT", 2, 0)
|
|
||||||
row.icon:SetTexCoord(.08, .92, .08, .92)
|
|
||||||
|
|
||||||
row.text = row:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
row.text = row:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
||||||
row.text:SetPoint("LEFT", row.icon, "RIGHT", 6, 0)
|
row.text:SetPoint("LEFT", row, "LEFT", 38, 0)
|
||||||
row.text:SetPoint("RIGHT", row, "RIGHT", -22, 0)
|
|
||||||
row.text:SetJustifyH("LEFT")
|
row.text:SetJustifyH("LEFT")
|
||||||
|
|
||||||
row.highlight = row:CreateTexture(nil, "BACKGROUND")
|
row.highlight = row:CreateTexture(nil, "BACKGROUND")
|
||||||
@@ -316,7 +297,11 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
row.gear.tex = row.gear:CreateTexture(nil, "ARTWORK")
|
row.gear.tex = row.gear:CreateTexture(nil, "ARTWORK")
|
||||||
row.gear.tex:SetAllPoints(row.gear)
|
row.gear.tex:SetAllPoints(row.gear)
|
||||||
row.gear.tex:SetTexture(pfUI.path.."\\img\\Gear_64Grey")
|
row.gear.tex:SetTexture(pfUI.path.."\\img\\Gear_64Grey")
|
||||||
row.gear:SetHighlightTexture("Interface\\Buttons\\ButtonHilight-Square", "ADD")
|
row.gear.tex:SetAlpha(.5)
|
||||||
|
-- the gear drawn again additively lights up the gear itself
|
||||||
|
row.gear:SetHighlightTexture(pfUI.path.."\\img\\Gear_64Grey", "ADD")
|
||||||
|
-- moving onto the gear does not leave the row
|
||||||
|
row.gear:SetPropagateMouseMotion(true)
|
||||||
row.gear:Hide()
|
row.gear:Hide()
|
||||||
row.gear:SetScript("OnClick", function()
|
row.gear:SetScript("OnClick", function()
|
||||||
if not row.setID then return end
|
if not row.setID then return end
|
||||||
@@ -335,39 +320,30 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
end)
|
end)
|
||||||
|
|
||||||
row:SetScript("OnClick", function()
|
row:SetScript("OnClick", function()
|
||||||
|
if row.setID then
|
||||||
selectedSetID = row.setID
|
selectedSetID = row.setID
|
||||||
-- Detect double-click manually; vanilla Button has no native event.
|
|
||||||
local now = GetTime()
|
|
||||||
if row.lastClick and (now - row.lastClick) < 0.4 then
|
|
||||||
row.lastClick = nil
|
|
||||||
EquipSet(row.setID)
|
|
||||||
else
|
|
||||||
row.lastClick = now
|
|
||||||
end
|
|
||||||
pfUI.equipmentmanager.Refresh()
|
pfUI.equipmentmanager.Refresh()
|
||||||
|
else
|
||||||
|
OpenNamePopup("new")
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
row:SetScript("OnDoubleClick", function()
|
||||||
|
if row.setID then EquipSet(row.setID) end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Drag a set onto an action bar. PickupEquipmentSet is newer than
|
-- Drag a set onto an action bar.
|
||||||
-- the rest of C_EquipmentSet, so dragging stays inert on ClassicAPI
|
|
||||||
-- builds that don't ship it yet.
|
|
||||||
if C_EquipmentSet.PickupEquipmentSet then
|
|
||||||
row:RegisterForDrag("LeftButton")
|
row:RegisterForDrag("LeftButton")
|
||||||
row:SetScript("OnDragStart", function()
|
row:SetScript("OnDragStart", function()
|
||||||
if row.setID then C_EquipmentSet.PickupEquipmentSet(row.setID) end
|
if row.setID then C_EquipmentSet.PickupEquipmentSet(row.setID) end
|
||||||
end)
|
end)
|
||||||
end
|
|
||||||
|
|
||||||
-- Show the gear and tooltip while the cursor is over the row or its
|
-- A set row shows its gear and tooltip while the cursor is over it;
|
||||||
-- gear child. The gear sits inside the row's rectangle, so a single
|
-- the "New Set" row lights up.
|
||||||
-- MouseIsOverHitRect(row) check covers both. OnLeave on the row and the
|
|
||||||
-- gear catches every exit path, so no OnUpdate poll is needed.
|
|
||||||
local function HideRowHover()
|
|
||||||
if MouseIsOverHitRect(row) then return end
|
|
||||||
GameTooltip:Hide()
|
|
||||||
row.gear:Hide()
|
|
||||||
end
|
|
||||||
row:SetScript("OnEnter", function()
|
row:SetScript("OnEnter", function()
|
||||||
if not row.setID then return end
|
if not row.setID then
|
||||||
|
row.highlight:Show()
|
||||||
|
return
|
||||||
|
end
|
||||||
local name = C_EquipmentSet.GetEquipmentSetInfo(row.setID)
|
local name = C_EquipmentSet.GetEquipmentSetInfo(row.setID)
|
||||||
if name then
|
if name then
|
||||||
GameTooltip:SetOwner(row, "ANCHOR_RIGHT")
|
GameTooltip:SetOwner(row, "ANCHOR_RIGHT")
|
||||||
@@ -376,40 +352,50 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
end
|
end
|
||||||
row.gear:Show()
|
row.gear:Show()
|
||||||
end)
|
end)
|
||||||
row:SetScript("OnLeave", HideRowHover)
|
row:SetScript("OnLeave", function()
|
||||||
row.gear:SetScript("OnLeave", HideRowHover)
|
GameTooltip:Hide()
|
||||||
|
row.gear:Hide()
|
||||||
return row
|
if not row.setID then row.highlight:Hide() end
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Rows are allocated lazily in Refresh — ClassicAPI no longer caps
|
local function InitSetRow(row, entry)
|
||||||
-- the number of equipment sets, so we grow the pool to numSets on
|
if not row.text then SetupSetRow(row) end
|
||||||
-- demand. The set list is wheel-scrolled, so only LIST_VISIBLE_ROWS
|
|
||||||
-- are ever positioned in-frame at a time, but each row is bound to a
|
|
||||||
-- specific set index (row[i] always shows ids[i]).
|
|
||||||
|
|
||||||
local newSetRow = CreateFrame("Button", nil, listFrame)
|
row.setID = entry.setID
|
||||||
newSetRow:SetSize(170, SET_ROW_HEIGHT);
|
row.gear:Hide()
|
||||||
|
|
||||||
newSetRow.icon = newSetRow:CreateTexture(nil, "ARTWORK")
|
if not entry.setID then
|
||||||
newSetRow.icon:SetSize(24, 24);
|
row.icon:SetSize(24, 24)
|
||||||
newSetRow.icon:SetPoint("LEFT", newSetRow, "LEFT", 5, 0)
|
row.icon:SetTexCoord(0, 1, 0, 1)
|
||||||
newSetRow.icon:SetTexture(pfUI.path.."\\img\\Character-Plus")
|
row.icon:SetTexture(pfUI.path.."\\img\\Character-Plus")
|
||||||
|
row.text:SetPoint("RIGHT", row, "RIGHT", -4, 0)
|
||||||
|
row.text:SetText(PAPERDOLL_NEWEQUIPMENTSET)
|
||||||
|
row.text:SetTextColor(0.2, 1, 0.2)
|
||||||
|
row.highlight:Hide()
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
newSetRow.text = newSetRow:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
local name, icon, _, isEquipped, _, _, _, numMissing = C_EquipmentSet.GetEquipmentSetInfo(entry.setID)
|
||||||
newSetRow.text:SetPoint("LEFT", newSetRow.icon, "RIGHT", 8, 0)
|
row.icon:SetSize(30, 30)
|
||||||
newSetRow.text:SetPoint("RIGHT", newSetRow, "RIGHT", -4, 0)
|
row.icon:SetTexCoord(.08, .92, .08, .92)
|
||||||
newSetRow.text:SetJustifyH("LEFT")
|
if icon then
|
||||||
newSetRow.text:SetText(PAPERDOLL_NEWEQUIPMENTSET)
|
row.icon:SetTexture(string.find(icon, "\\") and icon or ("Interface\\Icons\\" .. icon))
|
||||||
newSetRow.text:SetTextColor(0.2, 1, 0.2)
|
else
|
||||||
|
row.icon:SetTexture("Interface\\Icons\\INV_Misc_QuestionMark")
|
||||||
|
end
|
||||||
|
-- Color precedence: missing items (red) > equipped (green) > normal (white).
|
||||||
|
local color = (numMissing and numMissing > 0) and "|cffff5555"
|
||||||
|
or isEquipped and "|cff33ff33" or "|cffffffff"
|
||||||
|
row.text:SetPoint("RIGHT", row, "RIGHT", -22, 0)
|
||||||
|
row.text:SetText(color .. (name or "?") .. "|r")
|
||||||
|
row.highlight:SetShown(entry.setID == selectedSetID)
|
||||||
|
end
|
||||||
|
|
||||||
newSetRow.highlight = newSetRow:CreateTexture(nil, "BACKGROUND")
|
local setView = CreateScrollBoxListLinearView(0, 0, 0, 2, 2)
|
||||||
newSetRow.highlight:SetAllPoints(newSetRow)
|
setView:SetElementExtent(SET_ROW_HEIGHT)
|
||||||
newSetRow.highlight:SetTexture(.3, .3, .3, .4)
|
setView:SetElementInitializer("Button", InitSetRow)
|
||||||
newSetRow.highlight:Hide()
|
ScrollUtil.InitScrollBoxListWithScrollBar(listFrame.ScrollBox, listFrame.ScrollBar, setView)
|
||||||
newSetRow:SetScript("OnEnter", function() newSetRow.highlight:Show() end)
|
|
||||||
newSetRow:SetScript("OnLeave", function() newSetRow.highlight:Hide() end)
|
|
||||||
newSetRow:SetScript("OnClick", function() OpenNamePopup("new") end)
|
|
||||||
|
|
||||||
local function MakeButton(name, label, parent, anchor, ax, ay, width)
|
local function MakeButton(name, label, parent, anchor, ax, ay, width)
|
||||||
local b = CreateFrame("Button", name, parent, "UIPanelButtonTemplate")
|
local b = CreateFrame("Button", name, parent, "UIPanelButtonTemplate")
|
||||||
@@ -863,60 +849,21 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
selectedSetID = nil
|
selectedSetID = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Virtual list = sets ++ newSetRow. Clamp the current scroll
|
-- The rows are the sets, then the "New Set" entry. They are rebuilt
|
||||||
-- offset against the visible window before laying out rows so
|
-- only when the sets change; otherwise the shown rows refresh in
|
||||||
-- deleting sets snaps the list back into view.
|
-- place, so the row under the cursor stays the same frame and a
|
||||||
local totalItems = numSets + 1
|
-- double-click reaches it.
|
||||||
local maxOffset = math.max(0, totalItems - LIST_VISIBLE_ROWS)
|
local setsKey = table.concat(ids, ",")
|
||||||
if listFrame.offset > maxOffset then listFrame.offset = maxOffset end
|
if setsKey ~= listFrame.setsKey then
|
||||||
if listFrame.offset < 0 then listFrame.offset = 0 end
|
listFrame.setsKey = setsKey
|
||||||
local off = listFrame.offset
|
local entries = {}
|
||||||
|
for _, setID in ipairs(ids) do
|
||||||
-- Set rows: lazy-grow the pool to numSets, then position visible
|
table.insert(entries, { setID = setID })
|
||||||
-- ones into slots and hide the rest. Each row stays bound to a
|
end
|
||||||
-- specific set index (row[i] always shows ids[i]).
|
table.insert(entries, { newSet = true })
|
||||||
for i = 1, numSets do
|
listFrame.ScrollBox:SetDataProvider(CreateDataProvider(entries), ScrollBoxConstants.RetainScrollPosition)
|
||||||
if not setRows[i] then setRows[i] = CreateSetRow() end
|
|
||||||
local row = setRows[i]
|
|
||||||
local slot = i - off
|
|
||||||
if slot >= 1 and slot <= LIST_VISIBLE_ROWS then
|
|
||||||
local setID = ids[i]
|
|
||||||
local name, icon, _, isEquipped, _, _, _, numMissing = C_EquipmentSet.GetEquipmentSetInfo(setID)
|
|
||||||
row.setID = setID
|
|
||||||
-- Color precedence: missing items (red) > equipped (green) > normal (white).
|
|
||||||
local color = (numMissing and numMissing > 0) and "|cffff5555"
|
|
||||||
or isEquipped and "|cff33ff33" or "|cffffffff"
|
|
||||||
row.text:SetText(color .. (name or "?") .. "|r")
|
|
||||||
if icon then
|
|
||||||
local full = string.find(icon, "\\") and icon or ("Interface\\Icons\\" .. icon)
|
|
||||||
row.icon:SetTexture(full)
|
|
||||||
else
|
else
|
||||||
row.icon:SetTexture("Interface\\Icons\\INV_Misc_QuestionMark")
|
listFrame.ScrollBox:ReinitializeFrames()
|
||||||
end
|
|
||||||
if setID == selectedSetID then row.highlight:Show() else row.highlight:Hide() end
|
|
||||||
row:ClearAllPoints()
|
|
||||||
row:SetPoint("TOPLEFT", listFrame, "TOPLEFT", 5, -3 - (slot - 1) * LIST_ROW_STRIDE)
|
|
||||||
row:Show()
|
|
||||||
else
|
|
||||||
row:Hide()
|
|
||||||
row.setID = nil
|
|
||||||
end
|
|
||||||
end
|
|
||||||
-- Hide pool entries past the current set count (left over from a
|
|
||||||
-- previous Refresh with more sets — e.g. just deleted one).
|
|
||||||
for i = numSets + 1, table.getn(setRows) do
|
|
||||||
setRows[i]:Hide()
|
|
||||||
setRows[i].setID = nil
|
|
||||||
end
|
|
||||||
|
|
||||||
-- "+ New Set" row occupies virtual index numSets+1.
|
|
||||||
local newSlot = (numSets + 1) - off
|
|
||||||
if newSlot >= 1 and newSlot <= LIST_VISIBLE_ROWS then
|
|
||||||
newSetRow:ClearAllPoints()
|
|
||||||
newSetRow:SetPoint("TOPLEFT", listFrame, "TOPLEFT", 5, -3 - (newSlot - 1) * LIST_ROW_STRIDE)
|
|
||||||
newSetRow:Show()
|
|
||||||
else
|
|
||||||
newSetRow:Hide()
|
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Update the ignored-overlay textures attached to each paperdoll
|
-- Update the ignored-overlay textures attached to each paperdoll
|
||||||
@@ -1102,11 +1049,14 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
|
|
||||||
local UNUSED_COLS, UNUSED_ROWS = 7, 8
|
local UNUSED_COLS, UNUSED_ROWS = 7, 8
|
||||||
local UNUSED_SIZE, UNUSED_GAP = 30, 4
|
local UNUSED_SIZE, UNUSED_GAP = 30, 4
|
||||||
local UNUSED_STRIDE = UNUSED_SIZE + UNUSED_GAP
|
|
||||||
|
-- The grid's list template keeps 5px around the buttons and a 7px scroll
|
||||||
|
-- bar 2px right of them.
|
||||||
|
local UNUSED_GRID_W = UNUSED_COLS * (UNUSED_SIZE + UNUSED_GAP) - UNUSED_GAP + 2 + 7 + 10
|
||||||
|
local UNUSED_GRID_H = UNUSED_ROWS * (UNUSED_SIZE + UNUSED_GAP) - UNUSED_GAP + 10
|
||||||
|
|
||||||
local unusedPanel = CreateSubPanel("pfEqMgrUnusedFrame",
|
local unusedPanel = CreateSubPanel("pfEqMgrUnusedFrame",
|
||||||
UNUSED_COLS * UNUSED_STRIDE + 24, frame:GetHeight(), T["Items Not In Any Set"])
|
UNUSED_GRID_W + 22, frame:GetHeight(), T["Items Not In Any Set"])
|
||||||
unusedPanel.offset = 0 -- first visible row
|
|
||||||
|
|
||||||
unusedPanel.info = unusedPanel:CreateFontString(nil, "OVERLAY", "GameFontHighlightSmall")
|
unusedPanel.info = unusedPanel:CreateFontString(nil, "OVERLAY", "GameFontHighlightSmall")
|
||||||
unusedPanel.info:SetPoint("TOPLEFT", unusedPanel, "TOPLEFT", 14, -34)
|
unusedPanel.info:SetPoint("TOPLEFT", unusedPanel, "TOPLEFT", 14, -34)
|
||||||
@@ -1118,14 +1068,13 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
unusedPanel.showIgnored.label:SetPoint("RIGHT", unusedPanel.showIgnored, "LEFT", -4, 0)
|
unusedPanel.showIgnored.label:SetPoint("RIGHT", unusedPanel.showIgnored, "LEFT", -4, 0)
|
||||||
unusedPanel.showIgnored.label:SetText(T["Show Ignored"])
|
unusedPanel.showIgnored.label:SetText(T["Show Ignored"])
|
||||||
|
|
||||||
local unusedGrid = CreateFrame("Frame", nil, unusedPanel)
|
local unusedGrid = CreateFrame("Frame", nil, unusedPanel, "pfUIScrollBoxListTemplate")
|
||||||
unusedGrid:SetPoint("TOPLEFT", unusedPanel, "TOPLEFT", 12 + UNUSED_GAP/2, -54)
|
unusedGrid:SetPoint("TOPLEFT", unusedPanel, "TOPLEFT", 11, -51)
|
||||||
unusedGrid:SetSize(UNUSED_COLS * UNUSED_STRIDE, UNUSED_ROWS * UNUSED_STRIDE)
|
unusedGrid:SetSize(UNUSED_GRID_W, UNUSED_GRID_H)
|
||||||
unusedGrid:EnableMouseWheel(true)
|
|
||||||
|
|
||||||
unusedPanel.empty = unusedPanel:CreateFontString(nil, "OVERLAY", "GameFontDisable")
|
unusedPanel.empty = unusedPanel:CreateFontString(nil, "OVERLAY", "GameFontDisable")
|
||||||
unusedPanel.empty:SetPoint("CENTER", unusedGrid, "CENTER", 0, 0)
|
unusedPanel.empty:SetPoint("CENTER", unusedGrid, "CENTER", 0, 0)
|
||||||
unusedPanel.empty:SetWidth(UNUSED_COLS * UNUSED_STRIDE - 10)
|
unusedPanel.empty:SetWidth(UNUSED_GRID_W - 20)
|
||||||
unusedPanel.empty:SetText(T["Every equippable item is part of a set."])
|
unusedPanel.empty:SetText(T["Every equippable item is part of a set."])
|
||||||
|
|
||||||
unusedPanel.hint = unusedPanel:CreateFontString(nil, "OVERLAY", "GameFontDisableSmall")
|
unusedPanel.hint = unusedPanel:CreateFontString(nil, "OVERLAY", "GameFontDisableSmall")
|
||||||
@@ -1135,7 +1084,6 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
unusedPanel.hint:SetText(T["Shift-Click: Link Ctrl-Click: Preview\nRight-Click: Ignore / Unignore"])
|
unusedPanel.hint:SetText(T["Shift-Click: Link Ctrl-Click: Preview\nRight-Click: Ignore / Unignore"])
|
||||||
|
|
||||||
local RefreshUnusedPanel -- forward decl
|
local RefreshUnusedPanel -- forward decl
|
||||||
local unusedButtons = {}
|
|
||||||
|
|
||||||
-- Bag highlight: while the panel is open, items of the list glow in
|
-- Bag highlight: while the panel is open, items of the list glow in
|
||||||
-- pfUI's bag and bank frames and every other item is dimmed.
|
-- pfUI's bag and bank frames and every other item is dimmed.
|
||||||
@@ -1203,12 +1151,8 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
local WHERE_TAG = { equipped = "|cff33ff33E|r", bags = "", bank = "|cff66aaffB|r" }
|
local WHERE_TAG = { equipped = "|cff33ff33E|r", bags = "", bank = "|cff66aaffB|r" }
|
||||||
local WHERE_TEXT = { equipped = T["Equipped"], bags = T["In Bags"], bank = T["In Bank"] }
|
local WHERE_TEXT = { equipped = T["Equipped"], bags = T["In Bags"], bank = T["In Bank"] }
|
||||||
|
|
||||||
local function CreateUnusedButton(i)
|
-- one-time setup of a pooled grid button
|
||||||
local b = CreateFrame("Button", nil, unusedGrid)
|
local function SetupUnusedButton(b)
|
||||||
b:SetSize(UNUSED_SIZE, UNUSED_SIZE)
|
|
||||||
local col = math.mod(i - 1, UNUSED_COLS)
|
|
||||||
local row = math.floor((i - 1) / UNUSED_COLS)
|
|
||||||
b:SetPoint("TOPLEFT", unusedGrid, "TOPLEFT", col * UNUSED_STRIDE + UNUSED_GAP/2, -row * UNUSED_STRIDE - UNUSED_GAP/2)
|
|
||||||
CreateBackdrop(b)
|
CreateBackdrop(b)
|
||||||
b:RegisterForClicks("LeftButtonUp", "RightButtonUp")
|
b:RegisterForClicks("LeftButtonUp", "RightButtonUp")
|
||||||
|
|
||||||
@@ -1252,14 +1196,24 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
DressUpItemLink(e.link)
|
DressUpItemLink(e.link)
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
return b
|
|
||||||
end
|
end
|
||||||
|
|
||||||
unusedGrid:SetScript("OnMouseWheel", function()
|
local function InitUnusedButton(b, e)
|
||||||
unusedPanel.offset = unusedPanel.offset - (arg1 or 0)
|
if not b.icon then SetupUnusedButton(b) end
|
||||||
RefreshUnusedPanel()
|
|
||||||
end)
|
b.entry = e
|
||||||
|
b.icon:SetTexture(e.icon or "Interface\\Icons\\INV_Misc_QuestionMark")
|
||||||
|
b.icon:SetDesaturated(e.ignored and true or false)
|
||||||
|
b.icon:SetAlpha(e.ignored and .5 or 1)
|
||||||
|
b.tag:SetText(WHERE_TAG[e.where] or "")
|
||||||
|
local r, g, bl = GetItemQualityColor(e.quality or 1)
|
||||||
|
b.backdrop:SetBackdropBorderColor(r, g, bl, 1)
|
||||||
|
end
|
||||||
|
|
||||||
|
local unusedView = CreateScrollBoxListGridView(UNUSED_COLS, 0, 0, 0, 2, UNUSED_GAP, UNUSED_GAP)
|
||||||
|
unusedView:SetElementSize(UNUSED_SIZE, UNUSED_SIZE)
|
||||||
|
unusedView:SetElementInitializer("Button", InitUnusedButton)
|
||||||
|
ScrollUtil.InitScrollBoxListWithScrollBar(unusedGrid.ScrollBox, unusedGrid.ScrollBar, unusedView)
|
||||||
|
|
||||||
function RefreshUnusedPanel()
|
function RefreshUnusedPanel()
|
||||||
local list, numIgnored = ScanUnusedItems(unusedPanel.showIgnored:GetChecked() and true or nil)
|
local list, numIgnored = ScanUnusedItems(unusedPanel.showIgnored:GetChecked() and true or nil)
|
||||||
@@ -1267,33 +1221,7 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
local numShownIgnored = unusedPanel.showIgnored:GetChecked() and numIgnored or 0
|
local numShownIgnored = unusedPanel.showIgnored:GetChecked() and numIgnored or 0
|
||||||
unusedPanel.info:SetText(string.format(T["%d items, %d ignored"], total - numShownIgnored, numIgnored))
|
unusedPanel.info:SetText(string.format(T["%d items, %d ignored"], total - numShownIgnored, numIgnored))
|
||||||
|
|
||||||
local totalRows = math.ceil(total / UNUSED_COLS)
|
unusedGrid.ScrollBox:SetDataProvider(CreateDataProvider(list), ScrollBoxConstants.RetainScrollPosition)
|
||||||
local maxOffset = math.max(0, totalRows - UNUSED_ROWS)
|
|
||||||
if unusedPanel.offset > maxOffset then unusedPanel.offset = maxOffset end
|
|
||||||
if unusedPanel.offset < 0 then unusedPanel.offset = 0 end
|
|
||||||
local first = unusedPanel.offset * UNUSED_COLS
|
|
||||||
|
|
||||||
for i = 1, UNUSED_COLS * UNUSED_ROWS do
|
|
||||||
local e = list[first + i]
|
|
||||||
local b = unusedButtons[i]
|
|
||||||
if e then
|
|
||||||
if not b then
|
|
||||||
b = CreateUnusedButton(i)
|
|
||||||
unusedButtons[i] = b
|
|
||||||
end
|
|
||||||
b.entry = e
|
|
||||||
b.icon:SetTexture(e.icon or "Interface\\Icons\\INV_Misc_QuestionMark")
|
|
||||||
b.icon:SetDesaturated(e.ignored and true or false)
|
|
||||||
b.icon:SetAlpha(e.ignored and .5 or 1)
|
|
||||||
b.tag:SetText(WHERE_TAG[e.where] or "")
|
|
||||||
local r, g, bl = GetItemQualityColor(e.quality or 1)
|
|
||||||
if b.backdrop then b.backdrop:SetBackdropBorderColor(r, g, bl, 1) end
|
|
||||||
b:Show()
|
|
||||||
elseif b then
|
|
||||||
b.entry = nil
|
|
||||||
b:Hide()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
if total == 0 then unusedPanel.empty:Show() else unusedPanel.empty:Hide() end
|
if total == 0 then unusedPanel.empty:Show() else unusedPanel.empty:Hide() end
|
||||||
|
|
||||||
@@ -1690,10 +1618,8 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
-- ============================================================
|
-- ============================================================
|
||||||
|
|
||||||
local TRIGGER_ROWS, TRIGGER_ROW_H = 5, 24
|
local TRIGGER_ROWS, TRIGGER_ROW_H = 5, 24
|
||||||
local TRIGGER_STRIDE = TRIGGER_ROW_H + 2
|
|
||||||
local triggerPanel = CreateSubPanel("pfEqMgrTriggerFrame", 310, 404, T["Automatic Set Switching"])
|
local triggerPanel = CreateSubPanel("pfEqMgrTriggerFrame", 310, 404, T["Automatic Set Switching"])
|
||||||
local selectedTriggerID = nil
|
local selectedTriggerID = nil
|
||||||
triggerPanel.offset = 0
|
|
||||||
|
|
||||||
local cbAuto = CreateCheckbox(triggerPanel, T["Enable Automatic Set Switching"])
|
local cbAuto = CreateCheckbox(triggerPanel, T["Enable Automatic Set Switching"])
|
||||||
cbAuto:SetPoint("TOPLEFT", triggerPanel, "TOPLEFT", 12, -30)
|
cbAuto:SetPoint("TOPLEFT", triggerPanel, "TOPLEFT", 12, -30)
|
||||||
@@ -1702,15 +1628,11 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
UpdateEngine()
|
UpdateEngine()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
local triggerList = CreateFrame("Frame", nil, triggerPanel)
|
-- The template keeps 5px around the rows, which sit 2px apart.
|
||||||
|
local triggerList = CreateFrame("Frame", nil, triggerPanel, "pfUIScrollBoxListTemplate")
|
||||||
triggerList:SetPoint("TOPLEFT", triggerPanel, "TOPLEFT", 14, -56)
|
triggerList:SetPoint("TOPLEFT", triggerPanel, "TOPLEFT", 14, -56)
|
||||||
triggerList:SetSize(282, TRIGGER_ROWS * TRIGGER_STRIDE + 4)
|
triggerList:SetSize(282, TRIGGER_ROWS * (TRIGGER_ROW_H + 2) - 2 + 10)
|
||||||
CreateBackdrop(triggerList, nil, nil, .75)
|
CreateBackdrop(triggerList, nil, nil, .75)
|
||||||
triggerList:EnableMouseWheel(true)
|
|
||||||
triggerList:SetScript("OnMouseWheel", function()
|
|
||||||
triggerPanel.offset = triggerPanel.offset - (arg1 or 0)
|
|
||||||
RefreshTriggerPanel()
|
|
||||||
end)
|
|
||||||
|
|
||||||
triggerList.empty = triggerList:CreateFontString(nil, "OVERLAY", "GameFontDisable")
|
triggerList.empty = triggerList:CreateFontString(nil, "OVERLAY", "GameFontDisable")
|
||||||
triggerList.empty:SetPoint("CENTER", triggerList, "CENTER", 0, 0)
|
triggerList.empty:SetPoint("CENTER", triggerList, "CENTER", 0, 0)
|
||||||
@@ -1725,12 +1647,8 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
RefreshTriggerPanel()
|
RefreshTriggerPanel()
|
||||||
end
|
end
|
||||||
|
|
||||||
local triggerRows = {}
|
-- one-time setup of a pooled trigger row
|
||||||
for i = 1, TRIGGER_ROWS do
|
local function SetupTriggerRow(row)
|
||||||
local row = CreateFrame("Button", nil, triggerList)
|
|
||||||
row:SetSize(272, TRIGGER_ROW_H)
|
|
||||||
row:SetPoint("TOPLEFT", triggerList, "TOPLEFT", 5, -3 - (i - 1) * TRIGGER_STRIDE)
|
|
||||||
|
|
||||||
row.highlight = row:CreateTexture(nil, "BACKGROUND")
|
row.highlight = row:CreateTexture(nil, "BACKGROUND")
|
||||||
row.highlight:SetAllPoints(row)
|
row.highlight:SetAllPoints(row)
|
||||||
row.highlight:SetTexture(.3, .3, .3, .4)
|
row.highlight:SetTexture(.3, .3, .3, .4)
|
||||||
@@ -1792,10 +1710,39 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
GameTooltip:Show()
|
GameTooltip:Show()
|
||||||
end)
|
end)
|
||||||
row:SetScript("OnLeave", function() GameTooltip:Hide() end)
|
row:SetScript("OnLeave", function() GameTooltip:Hide() end)
|
||||||
|
|
||||||
triggerRows[i] = row
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local function InitTriggerRow(row, entry)
|
||||||
|
if not row.check then SetupTriggerRow(row) end
|
||||||
|
|
||||||
|
local t, index = entry.trigger, entry.index
|
||||||
|
row.trigger = t
|
||||||
|
row.index = index
|
||||||
|
row.check:SetChecked(t.enabled)
|
||||||
|
|
||||||
|
local color = "|cffffffff"
|
||||||
|
if not t.enabled then
|
||||||
|
color = "|cff808080"
|
||||||
|
elseif not SetExists(t.setID) then
|
||||||
|
color = "|cffff5555"
|
||||||
|
elseif db.applied == t.id then
|
||||||
|
color = "|cff33ff33"
|
||||||
|
elseif ConditionActive(t) then
|
||||||
|
color = "|cffffd100"
|
||||||
|
end
|
||||||
|
local target = SetExists(t.setID) and SetName(t.setID) or T["No set selected"]
|
||||||
|
row.text:SetText(color .. DescribeTrigger(t) .. "|r |cffaaaaaa>|r " .. color .. target .. "|r")
|
||||||
|
|
||||||
|
row.highlight:SetShown(t.id == selectedTriggerID)
|
||||||
|
row.up:SetEnabled(index > 1)
|
||||||
|
row.down:SetEnabled(index < table.getn(db.triggers))
|
||||||
|
end
|
||||||
|
|
||||||
|
local triggerView = CreateScrollBoxListLinearView(0, 0, 0, 2, 2)
|
||||||
|
triggerView:SetElementExtent(TRIGGER_ROW_H)
|
||||||
|
triggerView:SetElementInitializer("Button", InitTriggerRow)
|
||||||
|
ScrollUtil.InitScrollBoxListWithScrollBar(triggerList.ScrollBox, triggerList.ScrollBar, triggerView)
|
||||||
|
|
||||||
local btnNewTrigger = CreateFrame("Button", nil, triggerPanel, "UIPanelButtonTemplate")
|
local btnNewTrigger = CreateFrame("Button", nil, triggerPanel, "UIPanelButtonTemplate")
|
||||||
btnNewTrigger:SetSize(110, 22)
|
btnNewTrigger:SetSize(110, 22)
|
||||||
btnNewTrigger:SetPoint("TOPLEFT", triggerList, "BOTTOMLEFT", 0, -6)
|
btnNewTrigger:SetPoint("TOPLEFT", triggerList, "BOTTOMLEFT", 0, -6)
|
||||||
@@ -1813,10 +1760,10 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
db.nextID = db.nextID + 1
|
db.nextID = db.nextID + 1
|
||||||
table.insert(db.triggers, t)
|
table.insert(db.triggers, t)
|
||||||
selectedTriggerID = t.id
|
selectedTriggerID = t.id
|
||||||
-- Scroll so the new trigger is visible.
|
|
||||||
triggerPanel.offset = math.max(0, table.getn(db.triggers) - TRIGGER_ROWS)
|
|
||||||
UpdateEngine()
|
UpdateEngine()
|
||||||
RefreshTriggerPanel()
|
RefreshTriggerPanel()
|
||||||
|
-- the new trigger is the last row
|
||||||
|
triggerList.ScrollBox:ScrollToEnd()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Editor for the selected trigger
|
-- Editor for the selected trigger
|
||||||
@@ -2016,43 +1963,12 @@ pfUI:RegisterModule("equipmentmanager", function()
|
|||||||
local function RefreshTriggerRows()
|
local function RefreshTriggerRows()
|
||||||
cbAuto:SetChecked(C.equipmentmanager.autoswitch == "1")
|
cbAuto:SetChecked(C.equipmentmanager.autoswitch == "1")
|
||||||
|
|
||||||
local num = table.getn(db.triggers)
|
local entries = {}
|
||||||
local maxOffset = math.max(0, num - TRIGGER_ROWS)
|
for index, t in ipairs(db.triggers) do
|
||||||
if triggerPanel.offset > maxOffset then triggerPanel.offset = maxOffset end
|
table.insert(entries, { trigger = t, index = index })
|
||||||
if triggerPanel.offset < 0 then triggerPanel.offset = 0 end
|
|
||||||
|
|
||||||
for i, row in ipairs(triggerRows) do
|
|
||||||
local index = i + triggerPanel.offset
|
|
||||||
local t = db.triggers[index]
|
|
||||||
if t then
|
|
||||||
row.trigger = t
|
|
||||||
row.index = index
|
|
||||||
row.check:SetChecked(t.enabled)
|
|
||||||
|
|
||||||
local color = "|cffffffff"
|
|
||||||
if not t.enabled then
|
|
||||||
color = "|cff808080"
|
|
||||||
elseif not SetExists(t.setID) then
|
|
||||||
color = "|cffff5555"
|
|
||||||
elseif db.applied == t.id then
|
|
||||||
color = "|cff33ff33"
|
|
||||||
elseif ConditionActive(t) then
|
|
||||||
color = "|cffffd100"
|
|
||||||
end
|
end
|
||||||
local target = SetExists(t.setID) and SetName(t.setID) or T["No set selected"]
|
triggerList.ScrollBox:SetDataProvider(CreateDataProvider(entries), ScrollBoxConstants.RetainScrollPosition)
|
||||||
row.text:SetText(color .. DescribeTrigger(t) .. "|r |cffaaaaaa>|r " .. color .. target .. "|r")
|
triggerList.empty:SetShown(table.getn(entries) == 0)
|
||||||
|
|
||||||
if t.id == selectedTriggerID then row.highlight:Show() else row.highlight:Hide() end
|
|
||||||
if index > 1 then row.up:Enable() else row.up:Disable() end
|
|
||||||
if index < num then row.down:Enable() else row.down:Disable() end
|
|
||||||
row:Show()
|
|
||||||
else
|
|
||||||
row.trigger = nil
|
|
||||||
row.index = nil
|
|
||||||
row:Hide()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if num == 0 then triggerList.empty:Show() else triggerList.empty:Hide() end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function RefreshTriggerPanel()
|
function RefreshTriggerPanel()
|
||||||
|
|||||||
+5
-28
@@ -29,38 +29,15 @@ pfUI:RegisterModule("focus", function ()
|
|||||||
end)
|
end)
|
||||||
|
|
||||||
-- /focus and /clearfocus live in ClassicAPI's SlashCommandsRegistry now.
|
-- /focus and /clearfocus live in ClassicAPI's SlashCommandsRegistry now.
|
||||||
-- /focusname is pfUI-specific because the engine has no name→GUID
|
-- `/focus Name` takes the nearest prefix match; /focusname tries the exact
|
||||||
-- lookup for off-screen units — we resolve via a short target-swap.
|
-- name first, so "Bob" still wins over a nearer "Bobby".
|
||||||
|
|
||||||
pfUI.api.RegisterSlashCommand("PFFOCUSNAME", { '/focusname', '/pffocusname' }, function(msg)
|
pfUI.api.RegisterSlashCommand("PFFOCUSNAME", { '/focusname', '/pffocusname' }, function(msg)
|
||||||
if msg == "" then return end
|
if msg == "" then return end
|
||||||
|
|
||||||
local prevGUID = UnitGUID("target")
|
local unit = UnitTokenFromName(msg, true) or UnitTokenFromName(msg)
|
||||||
local prevPlayer = UnitIsUnit("target", "player")
|
if unit then
|
||||||
|
FocusUnit(unit)
|
||||||
-- Suppress async "Unknown unit" errors fired by TargetByName misses.
|
|
||||||
UIErrorsFrame:UnregisterEvent("UI_ERROR_MESSAGE")
|
|
||||||
|
|
||||||
-- Try exact match first, then prefix match via /target.
|
|
||||||
TargetByName(msg, true)
|
|
||||||
if not UnitExists("target") then
|
|
||||||
SlashCmdList.TARGET(msg)
|
|
||||||
end
|
|
||||||
|
|
||||||
if UnitExists("target") then
|
|
||||||
FocusUnit("target")
|
|
||||||
end
|
|
||||||
|
|
||||||
RunNextFrame(function()
|
|
||||||
UIErrorsFrame:RegisterEvent("UI_ERROR_MESSAGE")
|
|
||||||
end)
|
|
||||||
|
|
||||||
if prevGUID and prevGUID ~= "0x0000000000000000" then
|
|
||||||
TargetUnit(prevGUID)
|
|
||||||
elseif prevPlayer then
|
|
||||||
TargetUnit("player")
|
|
||||||
else
|
|
||||||
ClearTarget()
|
|
||||||
end
|
end
|
||||||
end, true)
|
end, true)
|
||||||
|
|
||||||
|
|||||||
+11
-13
@@ -515,14 +515,15 @@ pfUI:RegisterModule("gui", function ()
|
|||||||
|
|
||||||
-- are we a frame with contents?
|
-- are we a frame with contents?
|
||||||
if func then
|
if func then
|
||||||
f.scroll = CreateScrollFrame(nil, f)
|
f.scroll = CreateFrame("ScrollFrame", nil, f, "pfUIScrollFrameTemplate")
|
||||||
SetAllPointsOffset(f.scroll, f, 2)
|
SetAllPointsOffset(f.scroll, f, 2)
|
||||||
f.scroll.content = CreateScrollChild(nil, f.scroll)
|
f.scroll.content = f.scroll.Content
|
||||||
f.scroll.content.parent = f.scroll
|
f.scroll.content.parent = f.scroll
|
||||||
f.scroll.content:SetScript("OnShow", function()
|
f.scroll.content:SetScript("OnShow", function()
|
||||||
if not this.setup then
|
if not this.setup then
|
||||||
func()
|
func()
|
||||||
this.setup = true
|
this.setup = true
|
||||||
|
this.parent:UpdateScrollChildRect()
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
@@ -774,7 +775,10 @@ pfUI:RegisterModule("gui", function ()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if strlen(this:GetText()) < 1 then return end
|
if strlen(this:GetText()) < 1 then
|
||||||
|
parent:UpdateScrollChildRect()
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
local i = 1
|
local i = 1
|
||||||
local search = strlower(this:GetText())
|
local search = strlower(this:GetText())
|
||||||
@@ -798,16 +802,9 @@ pfUI:RegisterModule("gui", function ()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- reload scroll frames
|
-- measure the new results and start at the top
|
||||||
scroll:Hide()
|
parent:UpdateScrollChildRect()
|
||||||
scroll:SetHeight(i * 25 )
|
|
||||||
scroll:Show()
|
|
||||||
parent:SetScrollChild(scroll)
|
|
||||||
QueueFunction(function()
|
|
||||||
parent:SetVerticalScroll(0)
|
parent:SetVerticalScroll(0)
|
||||||
parent:UpdateScrollState()
|
|
||||||
parent:Scroll()
|
|
||||||
end)
|
|
||||||
end)
|
end)
|
||||||
|
|
||||||
pfUI.gui.search:SetScript("OnEditFocusGained", function(self)
|
pfUI.gui.search:SetScript("OnEditFocusGained", function(self)
|
||||||
@@ -2459,7 +2456,6 @@ pfUI:RegisterModule("gui", function ()
|
|||||||
CreateConfig(nil, T["Hide Chat When Bags Are Opened"], C.appearance.bags, "hidechat", "checkbox")
|
CreateConfig(nil, T["Hide Chat When Bags Are Opened"], C.appearance.bags, "hidechat", "checkbox")
|
||||||
CreateConfig(nil, T["Bagslots Per Row"], C.appearance.bags, "bagrowlength")
|
CreateConfig(nil, T["Bagslots Per Row"], C.appearance.bags, "bagrowlength")
|
||||||
CreateConfig(nil, T["Bankslots Per Row"], C.appearance.bags, "bankrowlength")
|
CreateConfig(nil, T["Bankslots Per Row"], C.appearance.bags, "bankrowlength")
|
||||||
CreateConfig(nil, T["Enable Full-Text Search"], C.appearance.bags, "fulltext")
|
|
||||||
CreateConfig(nil, T["Item Slot Size"], C.appearance.bags, "icon_size")
|
CreateConfig(nil, T["Item Slot Size"], C.appearance.bags, "icon_size")
|
||||||
CreateConfig(Reload, T["Reverse Cooldown Animation"], C.appearance.bags, "cooldown_reverse", "checkbox")
|
CreateConfig(Reload, T["Reverse Cooldown Animation"], C.appearance.bags, "cooldown_reverse", "checkbox")
|
||||||
CreateConfig(nil, T["Auto Sell Grey Items"], C.global, "autosell", "checkbox")
|
CreateConfig(nil, T["Auto Sell Grey Items"], C.global, "autosell", "checkbox")
|
||||||
@@ -2896,6 +2892,8 @@ pfUI:RegisterModule("gui", function ()
|
|||||||
CreateConfig(nil, T["Timestamp Format"], C.chat.text, "timeformat", nil, nil, nil, nil, "STRING")
|
CreateConfig(nil, T["Timestamp Format"], C.chat.text, "timeformat", nil, nil, nil, nil, "STRING")
|
||||||
CreateConfig(nil, T["Timestamp Brackets"], C.chat.text, "timebracket", nil, nil, nil, nil, "STRING")
|
CreateConfig(nil, T["Timestamp Brackets"], C.chat.text, "timebracket", nil, nil, nil, nil, "STRING")
|
||||||
CreateConfig(nil, T["Timestamp Color"], C.chat.text, "timecolor", "color")
|
CreateConfig(nil, T["Timestamp Color"], C.chat.text, "timecolor", "color")
|
||||||
|
-- read each time chat copy opens, so no reload
|
||||||
|
CreateConfig(function() end, T["Show Timestamps In Chat Copy"], C.chat.text, "copytime", "checkbox")
|
||||||
CreateConfig(nil, T["Hide Channel Names"], C.chat.text, "channelnumonly", "checkbox")
|
CreateConfig(nil, T["Hide Channel Names"], C.chat.text, "channelnumonly", "checkbox")
|
||||||
CreateConfig(nil, T["Generate Playerlinks"], C.chat.text, "playerlinks", "checkbox")
|
CreateConfig(nil, T["Generate Playerlinks"], C.chat.text, "playerlinks", "checkbox")
|
||||||
CreateConfig(nil, T["Enable URL Detection"], C.chat.text, "detecturl", "checkbox")
|
CreateConfig(nil, T["Enable URL Detection"], C.chat.text, "detecturl", "checkbox")
|
||||||
|
|||||||
+61
-88
@@ -1,9 +1,9 @@
|
|||||||
pfUI:RegisterModule("loothistory", function ()
|
pfUI:RegisterModule("loothistory", function ()
|
||||||
local rawborder, border = GetBorderSize()
|
local rawborder, border = GetBorderSize()
|
||||||
|
|
||||||
-- Layout
|
-- Layout (rows are 2px apart)
|
||||||
local ITEM_H, PLAYER_H = 24, 18
|
local ITEM_H, PLAYER_H = 24, 16
|
||||||
local ITEM_W, PLAYER_W = 350, 330
|
local PLAYER_INDENT = 18
|
||||||
|
|
||||||
-- rollType constants returned by C_LootHistory.GetPlayerInfo (0/1/2; vanilla
|
-- rollType constants returned by C_LootHistory.GetPlayerInfo (0/1/2; vanilla
|
||||||
-- has no disenchant roll).
|
-- has no disenchant roll).
|
||||||
@@ -86,30 +86,24 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
pfUI.loothistory.clear:SetText(T["Clear"])
|
pfUI.loothistory.clear:SetText(T["Clear"])
|
||||||
pfUI.loothistory.clear:SetScript("OnClick", function() C_LootHistory.Clear() end)
|
pfUI.loothistory.clear:SetScript("OnClick", function() C_LootHistory.Clear() end)
|
||||||
|
|
||||||
-- scroll frame
|
-- ==========================================================================
|
||||||
pfUI.loothistory.scroll = CreateScrollFrame("pfLootHistoryScroll", pfUI.loothistory)
|
-- List: a row per item and, under an expanded item, a row per player
|
||||||
pfUI.loothistory.scroll:SetSize(360, 440)
|
-- ==========================================================================
|
||||||
pfUI.loothistory.scroll:SetPoint("BOTTOM", 0, 10)
|
local list = CreateFrame("Frame", "pfLootHistoryList", pfUI.loothistory, "pfUIScrollBoxListTemplate")
|
||||||
|
list:SetSize(370, 450)
|
||||||
pfUI.loothistory.scroll.backdrop = CreateFrame("Frame", nil, pfUI.loothistory.scroll)
|
list:SetPoint("BOTTOM", 0, 5)
|
||||||
pfUI.loothistory.scroll.backdrop:SetFrameLevel(1)
|
CreateBackdrop(list, nil, true)
|
||||||
pfUI.loothistory.scroll.backdrop:SetPoint("TOPLEFT", pfUI.loothistory.scroll, "TOPLEFT", -5, 5)
|
|
||||||
pfUI.loothistory.scroll.backdrop:SetPoint("BOTTOMRIGHT", pfUI.loothistory.scroll, "BOTTOMRIGHT", 5, -5)
|
|
||||||
CreateBackdrop(pfUI.loothistory.scroll.backdrop, nil, true)
|
|
||||||
|
|
||||||
local list = CreateScrollChild("pfLootHistoryList", pfUI.loothistory.scroll)
|
|
||||||
pfUI.loothistory.list = list
|
pfUI.loothistory.list = list
|
||||||
|
|
||||||
-- ==========================================================================
|
|
||||||
-- Frame pools
|
|
||||||
-- ==========================================================================
|
|
||||||
local itemFrames = {}
|
|
||||||
|
|
||||||
local FullUpdate -- forward declaration (toggle handlers call it)
|
local FullUpdate -- forward declaration (toggle handlers call it)
|
||||||
|
|
||||||
local function CreateItemFrame()
|
local function ToggleExpanded(f)
|
||||||
local f = CreateFrame("Button", nil, list)
|
local id = f.rollID
|
||||||
f:SetSize(ITEM_W, ITEM_H)
|
if id then expanded[id] = not expanded[id]; FullUpdate() end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- one-time setup of a pooled item row
|
||||||
|
local function SetupItemRow(f)
|
||||||
f:SetBackdrop(pfUI.backdrop_hover)
|
f:SetBackdrop(pfUI.backdrop_hover)
|
||||||
f:SetBackdropBorderColor(1, 1, 1, .04)
|
f:SetBackdropBorderColor(1, 1, 1, .04)
|
||||||
f:EnableMouse(1)
|
f:EnableMouse(1)
|
||||||
@@ -118,10 +112,7 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
f.toggle = CreateFrame("Button", nil, f)
|
f.toggle = CreateFrame("Button", nil, f)
|
||||||
f.toggle:SetSize(14, 14)
|
f.toggle:SetSize(14, 14)
|
||||||
f.toggle:SetPoint("LEFT", 4, 0)
|
f.toggle:SetPoint("LEFT", 4, 0)
|
||||||
f.toggle:SetScript("OnClick", function()
|
f.toggle:SetScript("OnClick", function() ToggleExpanded(f) end)
|
||||||
local id = f.rollID
|
|
||||||
if id then expanded[id] = not expanded[id]; FullUpdate() end
|
|
||||||
end)
|
|
||||||
|
|
||||||
-- icon + quality-colored border
|
-- icon + quality-colored border
|
||||||
f.iconbg = CreateFrame("Frame", nil, f)
|
f.iconbg = CreateFrame("Frame", nil, f)
|
||||||
@@ -138,18 +129,18 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
f.winicon:SetSize(14, 14)
|
f.winicon:SetSize(14, 14)
|
||||||
f.winicon:SetPoint("RIGHT", f, "RIGHT", -6, 0)
|
f.winicon:SetPoint("RIGHT", f, "RIGHT", -6, 0)
|
||||||
|
|
||||||
f.winroll = f:CreateFontString("Status", "OVERLAY", "GameFontNormal")
|
f.winroll = f:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
||||||
f.winroll:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
f.winroll:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
||||||
f.winroll:SetPoint("RIGHT", f.winicon, "LEFT", -2, 0)
|
f.winroll:SetPoint("RIGHT", f.winicon, "LEFT", -2, 0)
|
||||||
f.winroll:SetTextColor(1, 1, 1, 1)
|
f.winroll:SetTextColor(1, 1, 1, 1)
|
||||||
|
|
||||||
f.winname = f:CreateFontString("Status", "OVERLAY", "GameFontNormal")
|
f.winname = f:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
||||||
f.winname:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
f.winname:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
||||||
f.winname:SetPoint("RIGHT", f.winroll, "LEFT", -4, 0)
|
f.winname:SetPoint("RIGHT", f.winroll, "LEFT", -4, 0)
|
||||||
f.winname:SetJustifyH("RIGHT")
|
f.winname:SetJustifyH("RIGHT")
|
||||||
|
|
||||||
-- item name (leaves room on the right for the winner block)
|
-- item name (leaves room on the right for the winner block)
|
||||||
f.name = f:CreateFontString("Status", "OVERLAY", "GameFontNormal")
|
f.name = f:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
||||||
f.name:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
f.name:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
||||||
f.name:SetPoint("LEFT", f.iconbg, "RIGHT", 5, 0)
|
f.name:SetPoint("LEFT", f.iconbg, "RIGHT", 5, 0)
|
||||||
f.name:SetPoint("RIGHT", f, "RIGHT", -100, 0)
|
f.name:SetPoint("RIGHT", f, "RIGHT", -100, 0)
|
||||||
@@ -167,20 +158,13 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
this:SetBackdropBorderColor(1, 1, 1, .04)
|
this:SetBackdropBorderColor(1, 1, 1, .04)
|
||||||
GameTooltip:Hide()
|
GameTooltip:Hide()
|
||||||
end)
|
end)
|
||||||
f:SetScript("OnClick", function()
|
f:SetScript("OnClick", function() ToggleExpanded(f) end)
|
||||||
local id = this.rollID
|
|
||||||
if id then expanded[id] = not expanded[id]; FullUpdate() end
|
|
||||||
end)
|
|
||||||
|
|
||||||
return f
|
|
||||||
end
|
end
|
||||||
|
|
||||||
local function CreatePlayerFrame()
|
-- one-time setup of a pooled player row
|
||||||
local f = CreateFrame("Frame", nil, list)
|
local function SetupPlayerRow(f)
|
||||||
f:SetSize(PLAYER_W, PLAYER_H)
|
|
||||||
|
|
||||||
-- name is indented to leave room for the winner checkmark on its left
|
-- name is indented to leave room for the winner checkmark on its left
|
||||||
f.name = f:CreateFontString("Status", "OVERLAY", "GameFontNormal")
|
f.name = f:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
||||||
f.name:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
f.name:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
||||||
f.name:SetPoint("LEFT", 20, 0)
|
f.name:SetPoint("LEFT", 20, 0)
|
||||||
f.name:SetJustifyH("LEFT")
|
f.name:SetJustifyH("LEFT")
|
||||||
@@ -189,7 +173,7 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
f.rollicon:SetSize(16, 16)
|
f.rollicon:SetSize(16, 16)
|
||||||
f.rollicon:SetPoint("RIGHT", -4, 0)
|
f.rollicon:SetPoint("RIGHT", -4, 0)
|
||||||
|
|
||||||
f.rolltext = f:CreateFontString("Status", "OVERLAY", "GameFontNormal")
|
f.rolltext = f:CreateFontString(nil, "OVERLAY", "GameFontNormal")
|
||||||
f.rolltext:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
f.rolltext:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
|
||||||
f.rolltext:SetPoint("RIGHT", f.rollicon, "LEFT", -3, 0)
|
f.rolltext:SetPoint("RIGHT", f.rollicon, "LEFT", -3, 0)
|
||||||
f.rolltext:SetTextColor(1, 1, 1, 1)
|
f.rolltext:SetTextColor(1, 1, 1, 1)
|
||||||
@@ -199,15 +183,8 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
f.winmark:SetSize(16, 16)
|
f.winmark:SetSize(16, 16)
|
||||||
f.winmark:SetTexture(WINMARK)
|
f.winmark:SetTexture(WINMARK)
|
||||||
f.winmark:SetPoint("RIGHT", f.name, "LEFT", -1, 0)
|
f.winmark:SetPoint("RIGHT", f.name, "LEFT", -1, 0)
|
||||||
|
|
||||||
return f
|
|
||||||
end
|
end
|
||||||
|
|
||||||
local playerPool = CreateObjectPool(CreatePlayerFrame, function(_, pf)
|
|
||||||
pf:Hide()
|
|
||||||
pf:ClearAllPoints()
|
|
||||||
end)
|
|
||||||
|
|
||||||
local function SetToggleTexture(toggle, isExpanded)
|
local function SetToggleTexture(toggle, isExpanded)
|
||||||
if isExpanded then
|
if isExpanded then
|
||||||
toggle:SetNormalTexture("Interface\\Buttons\\UI-MinusButton-Up")
|
toggle:SetNormalTexture("Interface\\Buttons\\UI-MinusButton-Up")
|
||||||
@@ -221,13 +198,13 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
-- ==========================================================================
|
-- ==========================================================================
|
||||||
-- Rendering
|
-- Rendering
|
||||||
-- ==========================================================================
|
-- ==========================================================================
|
||||||
local function UpdateItemFrame(f, i)
|
local function InitItemRow(f, row)
|
||||||
local rollID, itemLink, numPlayers, isDone, winnerIdx = C_LootHistory.GetItem(i)
|
if not f.toggle then SetupItemRow(f) end
|
||||||
|
|
||||||
|
local i = row.item
|
||||||
|
local rollID, itemLink, _, isDone, winnerIdx = C_LootHistory.GetItem(i)
|
||||||
f.rollID = rollID
|
f.rollID = rollID
|
||||||
f.itemIdx = i
|
|
||||||
f.itemLink = itemLink
|
f.itemLink = itemLink
|
||||||
f.numPlayers = numPlayers or 0
|
|
||||||
f.isDone = isDone
|
|
||||||
|
|
||||||
local isExpanded = rollID and expanded[rollID]
|
local isExpanded = rollID and expanded[rollID]
|
||||||
SetToggleTexture(f.toggle, isExpanded)
|
SetToggleTexture(f.toggle, isExpanded)
|
||||||
@@ -279,7 +256,10 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local function RenderPlayerFrame(pf, name, class, rollType, roll, isWinner)
|
local function InitPlayerRow(pf, row)
|
||||||
|
if not pf.name then SetupPlayerRow(pf) end
|
||||||
|
|
||||||
|
local name, class, rollType, roll, isWinner = C_LootHistory.GetPlayerInfo(row.item, row.player)
|
||||||
pf.name:SetText(name or UNKNOWN)
|
pf.name:SetText(name or UNKNOWN)
|
||||||
pf.name:SetTextColor(PFUI_CLASS_COLORS[class]:GetRGB())
|
pf.name:SetTextColor(PFUI_CLASS_COLORS[class]:GetRGB())
|
||||||
|
|
||||||
@@ -289,6 +269,22 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
if isWinner then pf.winmark:Show() else pf.winmark:Hide() end
|
if isWinner then pf.winmark:Show() else pf.winmark:Hide() end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local view = CreateScrollBoxListLinearView(2, 2, 4, 4, 2)
|
||||||
|
view:SetElementFactory(function(factory, row)
|
||||||
|
if row.player then
|
||||||
|
factory("Frame", InitPlayerRow)
|
||||||
|
else
|
||||||
|
factory("Button", InitItemRow)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
view:SetElementExtentCalculator(function(_, row)
|
||||||
|
return row.player and PLAYER_H or ITEM_H
|
||||||
|
end)
|
||||||
|
view:SetElementIndentCalculator(function(row)
|
||||||
|
return row.player and PLAYER_INDENT or 0
|
||||||
|
end)
|
||||||
|
ScrollUtil.InitScrollBoxListWithScrollBar(list.ScrollBox, list.ScrollBar, view)
|
||||||
|
|
||||||
-- A player row is worth showing while the roll is undecided (see everyone),
|
-- A player row is worth showing while the roll is undecided (see everyone),
|
||||||
-- or afterwards only if they actually rolled or it's you (hide the passers'
|
-- or afterwards only if they actually rolled or it's you (hide the passers'
|
||||||
-- noise on a decided roll) — mirrors Blizzard's ShouldDisplayPlayer.
|
-- noise on a decided roll) — mirrors Blizzard's ShouldDisplayPlayer.
|
||||||
@@ -298,46 +294,23 @@ pfUI:RegisterModule("loothistory", function ()
|
|||||||
|
|
||||||
function FullUpdate()
|
function FullUpdate()
|
||||||
if not pfUI.loothistory:IsShown() then return end
|
if not pfUI.loothistory:IsShown() then return end
|
||||||
playerPool:ReleaseAll()
|
|
||||||
|
|
||||||
local num = C_LootHistory.GetNumItems()
|
local rows = {}
|
||||||
local y = -2
|
for i = 1, C_LootHistory.GetNumItems() do
|
||||||
|
local rollID, _, numPlayers, isDone = C_LootHistory.GetItem(i)
|
||||||
|
table.insert(rows, { item = i })
|
||||||
|
|
||||||
for i = 1, num do
|
if rollID and expanded[rollID] then
|
||||||
local f = itemFrames[i] or CreateItemFrame()
|
for p = 1, numPlayers or 0 do
|
||||||
itemFrames[i] = f
|
local _, _, _, roll, _, isMe = C_LootHistory.GetPlayerInfo(i, p)
|
||||||
UpdateItemFrame(f, i)
|
if ShouldDisplayPlayer(isDone, roll, isMe) then
|
||||||
f:ClearAllPoints()
|
table.insert(rows, { item = i, player = p })
|
||||||
f:SetPoint("TOPLEFT", list, "TOPLEFT", 4, y)
|
|
||||||
f:Show()
|
|
||||||
y = y - ITEM_H - 2
|
|
||||||
|
|
||||||
if f.rollID and expanded[f.rollID] then
|
|
||||||
for p = 1, f.numPlayers do
|
|
||||||
local name, class, rollType, roll, isWinner, isMe = C_LootHistory.GetPlayerInfo(i, p)
|
|
||||||
if ShouldDisplayPlayer(f.isDone, roll, isMe) then
|
|
||||||
local pf = playerPool:Acquire()
|
|
||||||
RenderPlayerFrame(pf, name, class, rollType, roll, isWinner)
|
|
||||||
pf:ClearAllPoints()
|
|
||||||
pf:SetPoint("TOPLEFT", list, "TOPLEFT", 22, y)
|
|
||||||
pf:Show()
|
|
||||||
y = y - PLAYER_H
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
y = y - 2
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
for i = num + 1, table.getn(itemFrames) do
|
list.ScrollBox:SetDataProvider(CreateDataProvider(rows), ScrollBoxConstants.RetainScrollPosition)
|
||||||
itemFrames[i]:Hide()
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Resize the scroll child and re-attach it: SetHeight alone on a
|
|
||||||
-- SetAllPoints'd child doesn't make the ScrollFrame recompute its scroll
|
|
||||||
-- range, so a dynamically-grown list wouldn't scroll until a /reload.
|
|
||||||
list:SetHeight(math.max(1, -y + 2))
|
|
||||||
pfUI.loothistory.scroll:SetScrollChild(list)
|
|
||||||
pfUI.loothistory.scroll:UpdateScrollState()
|
|
||||||
end
|
end
|
||||||
|
|
||||||
pfUI.loothistory:SetScript("OnShow", function() FullUpdate() end)
|
pfUI.loothistory:SetScript("OnShow", function() FullUpdate() end)
|
||||||
|
|||||||
+53
-3
@@ -105,11 +105,12 @@ pfUI:RegisterModule("panel", function()
|
|||||||
|
|
||||||
do -- FPS & Lag
|
do -- FPS & Lag
|
||||||
local widget = CreateFrame("Frame", "pfPanelWidgetLag", UIParent)
|
local widget = CreateFrame("Frame", "pfPanelWidgetLag", UIParent)
|
||||||
local lag, fps, laghex, fpshex, _
|
local lag, fps, laghex, fpshex, owner, _
|
||||||
widget.Tooltip = function()
|
widget.Tooltip = function(self)
|
||||||
|
owner = self
|
||||||
local active = 0
|
local active = 0
|
||||||
GameTooltip:ClearLines()
|
GameTooltip:ClearLines()
|
||||||
GameTooltip_SetDefaultAnchor(GameTooltip, this)
|
GameTooltip_SetDefaultAnchor(GameTooltip, self)
|
||||||
GameTooltip:AddLine("|cff555555" .. T["Systeminfo"])
|
GameTooltip:AddLine("|cff555555" .. T["Systeminfo"])
|
||||||
for i=1, GetNumAddOns() do
|
for i=1, GetNumAddOns() do
|
||||||
if IsAddOnLoaded(i) then
|
if IsAddOnLoaded(i) then
|
||||||
@@ -128,6 +129,51 @@ pfUI:RegisterModule("panel", function()
|
|||||||
GameTooltip:AddLine(" ")
|
GameTooltip:AddLine(" ")
|
||||||
GameTooltip:AddDoubleLine(T["Memory Usage"], "|cffffffff" .. memmb)
|
GameTooltip:AddDoubleLine(T["Memory Usage"], "|cffffffff" .. memmb)
|
||||||
GameTooltip:AddDoubleLine(T["Next Memory Cleanup"], "|cffffffff" .. gcmb)
|
GameTooltip:AddDoubleLine(T["Next Memory Cleanup"], "|cffffffff" .. gcmb)
|
||||||
|
-- AddOn memory usage (see MainMenuBarPerformanceBarFrame_OnEnter in MainMenuBar.lua)
|
||||||
|
|
||||||
|
local ADDON_MEM_KB_ABBR = _G.ADDON_MEM_KB_ABBR or "(%.0f KB) %s";
|
||||||
|
local ADDON_MEM_MB_ABBR = _G.ADDON_MEM_MB_ABBR or "(%.2f MB) %s";
|
||||||
|
local TOTAL_MEM_KB_ABBR = _G.TOTAL_MEM_KB_ABBR or "AddOn Memory: %.0f KB";
|
||||||
|
local TOTAL_MEM_MB_ABBR = _G.TOTAL_MEM_MB_ABBR or "AddOn Memory: %.2f MB";
|
||||||
|
|
||||||
|
|
||||||
|
UpdateAddOnMemoryUsage()
|
||||||
|
local totalMem = 0
|
||||||
|
local topAddOns = {}
|
||||||
|
for i = 1, GetNumAddOns() do
|
||||||
|
local mem = GetAddOnMemoryUsage(i)
|
||||||
|
if mem and mem > 0 then
|
||||||
|
totalMem = totalMem + mem
|
||||||
|
for j = 1, 3 do
|
||||||
|
if not topAddOns[j] or mem > topAddOns[j].value then
|
||||||
|
for k = 3, j + 1, -1 do
|
||||||
|
topAddOns[k] = topAddOns[k - 1]
|
||||||
|
end
|
||||||
|
topAddOns[j] = { value = mem, name = C_AddOns.GetAddOnName(i) }
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if totalMem > 0 then
|
||||||
|
local str
|
||||||
|
if totalMem > 1000 then
|
||||||
|
str = format(TOTAL_MEM_MB_ABBR, totalMem / 1000)
|
||||||
|
else
|
||||||
|
str = format(TOTAL_MEM_KB_ABBR, totalMem)
|
||||||
|
end
|
||||||
|
GameTooltip:AddLine(" ")
|
||||||
|
GameTooltip:AddLine(str, 1, 1, 1)
|
||||||
|
for i = 1, 3 do
|
||||||
|
if not topAddOns[i] then break end
|
||||||
|
if topAddOns[i].value > 1000 then
|
||||||
|
str = format(ADDON_MEM_MB_ABBR, topAddOns[i].value / 1000, topAddOns[i].name)
|
||||||
|
else
|
||||||
|
str = format(ADDON_MEM_KB_ABBR, topAddOns[i].value, topAddOns[i].name)
|
||||||
|
end
|
||||||
|
GameTooltip:AddLine(str, 1, 1, 1)
|
||||||
|
end
|
||||||
|
end
|
||||||
GameTooltip:AddLine(" ")
|
GameTooltip:AddLine(" ")
|
||||||
GameTooltip:AddDoubleLine(T["Network Down"], "|cffffffff" .. round(nin,1) .. "KB/s")
|
GameTooltip:AddDoubleLine(T["Network Down"], "|cffffffff" .. round(nin,1) .. "KB/s")
|
||||||
GameTooltip:AddDoubleLine(T["Network Up"], "|cffffffff" .. round(nout,1) .. "KB/s")
|
GameTooltip:AddDoubleLine(T["Network Up"], "|cffffffff" .. round(nout,1) .. "KB/s")
|
||||||
@@ -157,6 +203,10 @@ pfUI:RegisterModule("panel", function()
|
|||||||
end
|
end
|
||||||
|
|
||||||
pfUI.panel:OutputPanel("fps", fps .. " " .. T["fps"] .. " & " .. lag .. " " .. T["ms"], widget.Tooltip, widget.Click)
|
pfUI.panel:OutputPanel("fps", fps .. " " .. T["fps"] .. " & " .. lag .. " " .. T["ms"], widget.Tooltip, widget.Click)
|
||||||
|
|
||||||
|
if owner and GameTooltip:IsOwned(owner) then
|
||||||
|
widget.Tooltip(owner)
|
||||||
|
end
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
+17
-33
@@ -205,36 +205,23 @@ pfUI:RegisterModule("share", function ()
|
|||||||
table.insert(UISpecialFrames, "pfShare")
|
table.insert(UISpecialFrames, "pfShare")
|
||||||
|
|
||||||
do -- Edit Box
|
do -- Edit Box
|
||||||
f.scroll = pfUI.api.CreateScrollFrame("pfShareScroll", f)
|
f.scroll = CreateFrame("Frame", "pfShareScroll", f, "pfUIScrollingEditBoxTemplate")
|
||||||
f.scroll:SetPoint("TOPLEFT", f, "TOPLEFT", 10, -30)
|
f.scroll:SetPoint("TOPLEFT", f, "TOPLEFT", 10, -30)
|
||||||
f.scroll:SetPoint("BOTTOMRIGHT", f, "BOTTOMRIGHT", -10, 50)
|
f.scroll:SetPoint("BOTTOMRIGHT", f, "BOTTOMRIGHT", -10, 50)
|
||||||
f.scroll:SetWidth(560)
|
f.scroll:SetFont(pfUI.media["font:RobotoMono.ttf"], 9)
|
||||||
f.scroll:SetHeight(400)
|
f.scroll:SetTextInsets(15,15,15,15)
|
||||||
|
|
||||||
f.scroll.backdrop = CreateFrame("Frame", "pfShareScrollBackdrop", f.scroll)
|
-- the ScrollBox clips its children, so the backdrop is a sibling
|
||||||
f.scroll.backdrop:SetFrameLevel(1)
|
f.scroll.backdrop = CreateFrame("Frame", "pfShareScrollBackdrop", f)
|
||||||
f.scroll.backdrop:SetPoint("TOPLEFT", f.scroll, "TOPLEFT", -5, 5)
|
f.scroll.backdrop:SetPoint("TOPLEFT", f.scroll, "TOPLEFT", -5, 5)
|
||||||
f.scroll.backdrop:SetPoint("BOTTOMRIGHT", f.scroll, "BOTTOMRIGHT", 5, -5)
|
f.scroll.backdrop:SetPoint("BOTTOMRIGHT", f.scroll, "BOTTOMRIGHT", 5, -5)
|
||||||
pfUI.api.CreateBackdrop(f.scroll.backdrop, nil, true)
|
pfUI.api.CreateBackdrop(f.scroll.backdrop, nil, true)
|
||||||
|
f.scroll.backdrop.tint = f.scroll.backdrop:CreateTexture(nil, "ARTWORK")
|
||||||
|
f.scroll.backdrop.tint:SetAllPoints(f.scroll)
|
||||||
|
f.scroll.backdrop.tint:SetTexture(1,1,1,.05)
|
||||||
|
|
||||||
f.scroll.text = CreateFrame("EditBox", "pfShareEditBox", f.scroll)
|
f.scroll:RegisterCallback("OnTextChanged", function()
|
||||||
f.scroll.text.bg = f.scroll.text:CreateTexture(nil, "OVERLAY")
|
local text = f.scroll:GetText()
|
||||||
f.scroll.text.bg:SetAllPoints(f.scroll.text)
|
|
||||||
f.scroll.text.bg:SetTexture(1,1,1,.05)
|
|
||||||
f.scroll.text:SetMultiLine(true)
|
|
||||||
f.scroll.text:SetWidth(560)
|
|
||||||
f.scroll.text:SetHeight(400)
|
|
||||||
f.scroll.text:SetAllPoints(f.scroll)
|
|
||||||
f.scroll.text:SetTextInsets(15,15,15,15)
|
|
||||||
f.scroll.text:SetFont(pfUI.media["font:RobotoMono.ttf"], 9)
|
|
||||||
f.scroll.text:SetAutoFocus(false)
|
|
||||||
f.scroll.text:SetJustifyH("LEFT")
|
|
||||||
f.scroll.text:SetScript("OnEscapePressed", function() this:ClearFocus() end)
|
|
||||||
f.scroll.text:SetScript("OnTextChanged", function()
|
|
||||||
this:GetParent():UpdateScrollChildRect()
|
|
||||||
this:GetParent():UpdateScrollState()
|
|
||||||
|
|
||||||
local text = this:GetText()
|
|
||||||
local blob = Decode(text)
|
local blob = Decode(text)
|
||||||
local json = not blob and DecodeJSON(text) or nil
|
local json = not blob and DecodeJSON(text) or nil
|
||||||
local legacy = not blob and not json and DecodeLegacy(text) or nil
|
local legacy = not blob and not json and DecodeLegacy(text) or nil
|
||||||
@@ -253,27 +240,26 @@ pfUI:RegisterModule("share", function ()
|
|||||||
f.readButton:Enable()
|
f.readButton:Enable()
|
||||||
f.readButton.text:SetText(T["Decode"])
|
f.readButton.text:SetText(T["Decode"])
|
||||||
f.readButton.func = function()
|
f.readButton.func = function()
|
||||||
local current = f.scroll.text:GetText()
|
local current = f.scroll:GetText()
|
||||||
local config = Decode(current) or DecodeLegacy(current)
|
local config = Decode(current) or DecodeLegacy(current)
|
||||||
if config then
|
if config then
|
||||||
f.scroll.text:SetText(C_EncodingUtil.SerializeJSON(config))
|
f.scroll:SetText(C_EncodingUtil.SerializeJSON(config))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
elseif json then
|
elseif json then
|
||||||
f.readButton:Enable()
|
f.readButton:Enable()
|
||||||
f.readButton.text:SetText(T["Encode"])
|
f.readButton.text:SetText(T["Encode"])
|
||||||
f.readButton.func = function()
|
f.readButton.func = function()
|
||||||
local config = DecodeJSON(f.scroll.text:GetText())
|
local config = DecodeJSON(f.scroll:GetText())
|
||||||
if config then
|
if config then
|
||||||
f.scroll.text:SetText(Encode(config))
|
f.scroll:SetText(Encode(config))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
f.readButton:Disable()
|
f.readButton:Disable()
|
||||||
f.readButton.text:SetText(T["N/A"])
|
f.readButton.text:SetText(T["N/A"])
|
||||||
end
|
end
|
||||||
end)
|
end, f)
|
||||||
f.scroll:SetScrollChild(f.scroll.text)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
do -- button: close
|
do -- button: close
|
||||||
@@ -322,7 +308,7 @@ pfUI:RegisterModule("share", function ()
|
|||||||
f.loadButton.text:SetFont(pfUI.font_default, pfUI_config.global.font_size, "OUTLINE")
|
f.loadButton.text:SetFont(pfUI.font_default, pfUI_config.global.font_size, "OUTLINE")
|
||||||
f.loadButton.text:SetText(T["Import"])
|
f.loadButton.text:SetText(T["Import"])
|
||||||
f.loadButton:SetScript("OnClick", function()
|
f.loadButton:SetScript("OnClick", function()
|
||||||
local text = f.scroll.text:GetText()
|
local text = f.scroll:GetText()
|
||||||
local config = Decode(text) or DecodeJSON(text) or DecodeLegacy(text)
|
local config = Decode(text) or DecodeJSON(text) or DecodeLegacy(text)
|
||||||
if not config then return end
|
if not config then return end
|
||||||
|
|
||||||
@@ -383,9 +369,7 @@ pfUI:RegisterModule("share", function ()
|
|||||||
ignored["disabled"] = f.ignorePosition:GetChecked()
|
ignored["disabled"] = f.ignorePosition:GetChecked()
|
||||||
|
|
||||||
local encoded = Encode(DiffConfig(myconfig, defconfig, ignored) or {})
|
local encoded = Encode(DiffConfig(myconfig, defconfig, ignored) or {})
|
||||||
f.scroll.text:SetText(encoded)
|
f.scroll:SetText(encoded)
|
||||||
f.scroll.text.value = encoded
|
|
||||||
f.scroll:SetVerticalScroll(0)
|
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -1172,21 +1172,9 @@ pfUI:RegisterModule("thirdparty-vanilla", function()
|
|||||||
end)
|
end)
|
||||||
|
|
||||||
local EnableHealComm = function()
|
local EnableHealComm = function()
|
||||||
-- hook healcomm's addon message to parse single-player events
|
-- HealComm-1.0 already broadcasts this player's casts: keep libpredict
|
||||||
|
-- tracking them, but stop it sending a second copy
|
||||||
if AceLibrary and AceLibrary:HasInstance("HealComm-1.0") and pfUI.api.libpredict then
|
if AceLibrary and AceLibrary:HasInstance("HealComm-1.0") and pfUI.api.libpredict then
|
||||||
local HealComm = AceLibrary("HealComm-1.0")
|
|
||||||
|
|
||||||
-- use pfUI frames to draw healComm predictions
|
|
||||||
local pfHookHealCommSendAddonMessage = HealComm.SendAddonMessage
|
|
||||||
function HealComm.SendAddonMessage(this, msg)
|
|
||||||
if not IsInGroup() then
|
|
||||||
libpredict:ParseChatMessage(UnitName("player"), msg, "HealComm")
|
|
||||||
end
|
|
||||||
pfHookHealCommSendAddonMessage(this, msg)
|
|
||||||
end
|
|
||||||
|
|
||||||
-- disable pfUI predictions
|
|
||||||
pfUI.api.libpredict.sender:UnregisterAllEvents()
|
|
||||||
pfUI.api.libpredict.sender.enabled = nil
|
pfUI.api.libpredict.sender.enabled = nil
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -497,19 +497,4 @@ function pfUI.SetupCVars()
|
|||||||
UIParentLoadAddOn("Blizzard_CombatText")
|
UIParentLoadAddOn("Blizzard_CombatText")
|
||||||
end
|
end
|
||||||
|
|
||||||
if not RunMacroText then
|
|
||||||
local obj = setmetatable({ ["GetText"] = function(self) return self.text end }, {
|
|
||||||
__index = function(tab,key)
|
|
||||||
local value = function() return end
|
|
||||||
rawset(tab,key,value)
|
|
||||||
return value
|
|
||||||
end
|
|
||||||
})
|
|
||||||
|
|
||||||
function RunMacroText(text)
|
|
||||||
obj.text = text
|
|
||||||
ChatEdit_ParseText(obj, 1)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
_G.PLAYER_BUFF_START_ID = -1
|
_G.PLAYER_BUFF_START_ID = -1
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
## Notes: A complete user interface replacement.
|
## Notes: A complete user interface replacement.
|
||||||
## Notes-ruRU: Полная замена пользовательского интерфейса.
|
## Notes-ruRU: Полная замена пользовательского интерфейса.
|
||||||
## Version: @project-version@
|
## Version: @project-version@
|
||||||
## SavedVariables: pfUI_profiles, pfUI_addon_profiles, pfUI_cache, pfUI_throttle
|
## SavedVariables: pfUI_profiles, pfUI_addon_profiles, pfUI_cache, pfUI_throttle, pfUI_combatlog
|
||||||
## SavedVariablesPerCharacter: pfUI_config, pfUI_init, pfUI_playerDB, pfUI_eqmgr
|
## SavedVariablesPerCharacter: pfUI_config, pfUI_init, pfUI_playerDB, pfUI_eqmgr
|
||||||
## X-Website: https://github.com/brues-code/pfUI
|
## X-Website: https://github.com/brues-code/pfUI
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@
|
|||||||
## Notes: A complete user interface replacement.
|
## Notes: A complete user interface replacement.
|
||||||
## Notes-ruRU: Полная замена пользовательского интерфейса.
|
## Notes-ruRU: Полная замена пользовательского интерфейса.
|
||||||
## Version: @project-version@
|
## Version: @project-version@
|
||||||
## SavedVariables: pfUI_profiles, pfUI_addon_profiles, pfUI_cache, pfUI_throttle
|
## SavedVariables: pfUI_profiles, pfUI_addon_profiles, pfUI_cache, pfUI_throttle, pfUI_combatlog
|
||||||
## SavedVariablesPerCharacter: pfUI_config, pfUI_init, pfUI_playerDB, pfUI_eqmgr
|
## SavedVariablesPerCharacter: pfUI_config, pfUI_init, pfUI_playerDB, pfUI_eqmgr
|
||||||
## X-Website: https://github.com/brues-code/pfUI
|
## X-Website: https://github.com/brues-code/pfUI
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@
|
|||||||
## Notes: A complete user interface replacement.
|
## Notes: A complete user interface replacement.
|
||||||
## Notes-ruRU: Полная замена пользовательского интерфейса.
|
## Notes-ruRU: Полная замена пользовательского интерфейса.
|
||||||
## Version: @project-version@
|
## Version: @project-version@
|
||||||
## SavedVariables: pfUI_profiles, pfUI_addon_profiles, pfUI_cache, pfUI_throttle
|
## SavedVariables: pfUI_profiles, pfUI_addon_profiles, pfUI_cache, pfUI_throttle, pfUI_combatlog
|
||||||
## SavedVariablesPerCharacter: pfUI_config, pfUI_init, pfUI_playerDB, pfUI_eqmgr
|
## SavedVariablesPerCharacter: pfUI_config, pfUI_init, pfUI_playerDB, pfUI_eqmgr
|
||||||
## X-Website: https://github.com/brues-code/pfUI
|
## X-Website: https://github.com/brues-code/pfUI
|
||||||
|
|
||||||
|
|||||||
@@ -279,6 +279,36 @@ pfUI:RegisterSkin("Character", function ()
|
|||||||
SkinCheckbox(ReputationDetailInactiveCheckBox)
|
SkinCheckbox(ReputationDetailInactiveCheckBox)
|
||||||
SkinCheckbox(ReputationDetailMainScreenCheckBox)
|
SkinCheckbox(ReputationDetailMainScreenCheckBox)
|
||||||
|
|
||||||
|
-- Expand or collapse every header at once, as the Skills tab's button
|
||||||
|
-- does. It shows "+" while any header is collapsed.
|
||||||
|
local collapseAll = CreateFrame("Button", "pfReputationCollapseAllButton", ReputationFrame, "ReputationHeaderTemplate")
|
||||||
|
collapseAll:SetText(ALL)
|
||||||
|
collapseAll:SetWidth(collapseAll:GetTextWidth() + 20)
|
||||||
|
-- on the "Faction" label's row, in the headers' +/- column
|
||||||
|
collapseAll:SetPoint("LEFT", ReputationFrameFactionLabel, "LEFT", -43, 0)
|
||||||
|
collapseAll:SetScript("OnClick", function()
|
||||||
|
if this.isCollapsed then
|
||||||
|
ExpandAllFactionHeaders()
|
||||||
|
else
|
||||||
|
CollapseAllFactionHeaders()
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
SkinCollapseButton(collapseAll, true)
|
||||||
|
|
||||||
|
-- GetFactionInfo, not C_Reputation.GetFactionDataByIndex: the latter
|
||||||
|
-- returns nil for the Other and Inactive headers.
|
||||||
|
hooksecurefunc("ReputationFrame_Update", function()
|
||||||
|
collapseAll.isCollapsed = nil
|
||||||
|
for i = 1, GetNumFactions() do
|
||||||
|
local _, _, _, _, _, _, _, _, isHeader, isCollapsed = GetFactionInfo(i)
|
||||||
|
if isHeader and isCollapsed then
|
||||||
|
collapseAll.isCollapsed = true
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
collapseAll:SetNormalTexture(collapseAll.isCollapsed and "Interface\\Buttons\\UI-PlusButton-Up" or "Interface\\Buttons\\UI-MinusButton-Up")
|
||||||
|
end)
|
||||||
|
|
||||||
-- Append "(N)" to each standing label where N is rep remaining to the
|
-- Append "(N)" to each standing label where N is rep remaining to the
|
||||||
-- next reaction. Skip exalted (reaction 8) and effectively-capped bars.
|
-- next reaction. Skip exalted (reaction 8) and effectively-capped bars.
|
||||||
-- Each bar's OnLeave handler (Blizzard's ReputationFrame.xml) restores
|
-- Each bar's OnLeave handler (Blizzard's ReputationFrame.xml) restores
|
||||||
|
|||||||
Reference in New Issue
Block a user