Fixes Enhanced character frame
Update nameplate coloring. Fix world map blips
This commit is contained in:
@@ -228,8 +228,28 @@ function NP:GetUnitClassByGUID(frame, guid)
|
||||
end
|
||||
end
|
||||
|
||||
local grenColorToClass = {}
|
||||
for class, color in pairs(RAID_CLASS_COLORS) do
|
||||
grenColorToClass[color.g] = class
|
||||
end
|
||||
|
||||
function NP:UnitClass(frame, unitType)
|
||||
return "DRUID"
|
||||
if frame._class then
|
||||
return frame._class
|
||||
end
|
||||
if unitType == "FRIENDLY_PLAYER" then
|
||||
if frame.unit then
|
||||
local _, class = UnitClass(frame.unit)
|
||||
if class then
|
||||
return class
|
||||
end
|
||||
else
|
||||
return NP:GetUnitClassByGUID(frame, frame.guid)
|
||||
end
|
||||
elseif unitType == "ENEMY_PLAYER" then
|
||||
local _, g = frame.oldHealthBar:GetStatusBarColor()
|
||||
return grenColorToClass[floor(g*100 + 0.5) / 100]
|
||||
end
|
||||
end
|
||||
|
||||
function NP:UnitDetailedThreatSituation(frame)
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,3 @@
|
||||
<Ui xmlns="http://www.blizzard.com/wow/ui/">
|
||||
<Script file="Config.lua"/>
|
||||
</Ui>
|
||||
@@ -0,0 +1,30 @@
|
||||
SLASH_ANALYZE1 = "/analyze"
|
||||
SlashCmdList.ANALYZE = function(arg)
|
||||
if arg == "" then
|
||||
arg = GetMouseFocus()
|
||||
else
|
||||
arg = _G[arg]
|
||||
end
|
||||
|
||||
if arg and arg:GetName() then
|
||||
ChatFrame1:AddMessage("|cffCC0000----------------------------")
|
||||
ChatFrame1:AddMessage(arg:GetName())
|
||||
for _, child in ipairs({arg:GetChildren()}) do
|
||||
if child:GetName() then
|
||||
ChatFrame1:AddMessage("+="..child:GetName())
|
||||
end
|
||||
end
|
||||
ChatFrame1:AddMessage("|cffCC0000----------------------------")
|
||||
end
|
||||
end
|
||||
|
||||
SLASH_PROFILE1 = "/profile"
|
||||
SlashCmdList.PROFILE = function()
|
||||
local cpuProfiling = GetCVar("scriptProfile") == "1"
|
||||
if cpuProfiling then
|
||||
SetCVar("scriptProfile", "0")
|
||||
else
|
||||
SetCVar("scriptProfile", "1")
|
||||
end
|
||||
ReloadUI()
|
||||
end
|
||||
@@ -0,0 +1,3 @@
|
||||
<Ui xmlns="http://www.blizzard.com/wow/ui/">
|
||||
<Script file="Analyzer.lua"/>
|
||||
</Ui>
|
||||
@@ -0,0 +1,207 @@
|
||||
local E, L, V, P, G = unpack(ElvUI)
|
||||
local addon = E:NewModule("ElvUI_Enhanced")
|
||||
local EP = E.Libs.EP
|
||||
|
||||
local addonName = ...
|
||||
|
||||
local format = string.format
|
||||
|
||||
local function gsPopupShow()
|
||||
local url = "https://www.wowinterface.com/downloads/getfile.php?id=12245&aid=47105"
|
||||
|
||||
E.PopupDialogs["GS_VERSION_INVALID"] = {
|
||||
text = L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"],
|
||||
button1 = DISABLE,
|
||||
hideOnEscape = 1,
|
||||
showAlert = 1,
|
||||
OnShow = function(self)
|
||||
self.editBox:SetAutoFocus(false)
|
||||
self.editBox.width = self.editBox:GetWidth()
|
||||
self.editBox:SetWidth(220)
|
||||
self.editBox:SetText(url)
|
||||
self.editBox:HighlightText()
|
||||
ChatEdit_FocusActiveWindow()
|
||||
end,
|
||||
OnAccept = function()
|
||||
DisableAddOn("GearScore")
|
||||
DisableAddOn("BonusScanner")
|
||||
ReloadUI()
|
||||
end,
|
||||
OnHide = function(self)
|
||||
self.editBox:SetWidth(self.editBox.width or 50)
|
||||
self.editBox.width = nil
|
||||
end,
|
||||
EditBoxOnEnterPressed = function(self)
|
||||
ChatEdit_FocusActiveWindow()
|
||||
self:GetParent():Hide()
|
||||
end,
|
||||
EditBoxOnEscapePressed = function(self)
|
||||
ChatEdit_FocusActiveWindow()
|
||||
self:GetParent():Hide()
|
||||
end,
|
||||
EditBoxOnTextChanged = function(self)
|
||||
if self:GetText() ~= url then
|
||||
self:SetText(url)
|
||||
end
|
||||
self:HighlightText()
|
||||
self:ClearFocus()
|
||||
ChatEdit_FocusActiveWindow()
|
||||
end,
|
||||
OnEditFocusGained = function(self)
|
||||
self:HighlightText()
|
||||
end
|
||||
}
|
||||
|
||||
E:StaticPopup_Show("GS_VERSION_INVALID")
|
||||
end
|
||||
|
||||
function addon:ColorizeSettingName(name)
|
||||
return format("|cffff8000%s|r", name)
|
||||
end
|
||||
|
||||
function addon:DBConversions()
|
||||
if E.db.enhanced.general.trainAllButton ~= nil then
|
||||
E.db.enhanced.general.trainAllSkills = E.db.enhanced.general.trainAllButton
|
||||
E.db.enhanced.general.trainAllButton = nil
|
||||
end
|
||||
|
||||
if E.private.skins.animations ~= nil then
|
||||
E.private.enhanced.animatedAchievementBars = E.private.skins.animations
|
||||
E.private.skins.animations = nil
|
||||
end
|
||||
|
||||
if E.private.enhanced.blizzard and E.private.enhanced.blizzard.deathRecap ~= nil then
|
||||
E.private.enhanced.deathRecap = E.private.enhanced.blizzard.deathRecap
|
||||
E.private.enhanced.blizzard.deathRecap = nil
|
||||
end
|
||||
|
||||
if E.private.enhanced.character.model and E.private.enhanced.character.model.enable ~= nil then
|
||||
E.private.enhanced.character.modelFrames = E.private.enhanced.character.model.enable
|
||||
E.private.enhanced.character.model.enable = nil
|
||||
end
|
||||
|
||||
if P.unitframe.units.player.portrait.detachFromFrame ~= nil then
|
||||
E.db.enhanced.unitframe.detachPortrait.player.enable = P.unitframe.units.player.portrait.detachFromFrame
|
||||
E.db.enhanced.unitframe.detachPortrait.player.width = P.unitframe.units.player.portrait.detachedWidth
|
||||
E.db.enhanced.unitframe.detachPortrait.player.height = P.unitframe.units.player.portrait.detachedHeight
|
||||
E.db.enhanced.unitframe.detachPortrait.target.enable = P.unitframe.units.target.portrait.detachFromFrame
|
||||
E.db.enhanced.unitframe.detachPortrait.target.width = P.unitframe.units.target.portrait.detachedWidth
|
||||
E.db.enhanced.unitframe.detachPortrait.target.height = P.unitframe.units.target.portrait.detachedHeight
|
||||
|
||||
P.unitframe.units.player.portrait.detachFromFrame = nil
|
||||
P.unitframe.units.player.portrait.detachedWidth = nil
|
||||
P.unitframe.units.player.portrait.detachedHeight = nil
|
||||
P.unitframe.units.target.portrait.detachFromFrame = nil
|
||||
P.unitframe.units.target.portrait.detachedWidth = nil
|
||||
P.unitframe.units.target.portrait.detachedHeight = nil
|
||||
end
|
||||
|
||||
if E.db.enhanced.nameplates.cacheUnitClass ~= nil then
|
||||
E.db.enhanced.nameplates.classCache = true
|
||||
end
|
||||
if EnhancedDB and EnhancedDB.UnitClass and next(EnhancedDB.UnitClass) then
|
||||
local classMap = {}
|
||||
for i, class in ipairs(CLASS_SORT_ORDER) do
|
||||
classMap[class] = i
|
||||
end
|
||||
for name, class in pairs(EnhancedDB.UnitClass) do
|
||||
if type(class) == "string" then
|
||||
EnhancedDB.UnitClass[name] = classMap[class]
|
||||
end
|
||||
end
|
||||
|
||||
EnhancedDB.UnitClass[UNKNOWN] = nil
|
||||
end
|
||||
|
||||
if E.db.general.minimap.buttons then
|
||||
E.private.enhanced.minimapButtonGrabber = true
|
||||
|
||||
E.db.enhanced.minimap.buttonGrabber.buttonSize = E.db.general.minimap.buttons.buttonsize
|
||||
E.db.enhanced.minimap.buttonGrabber.buttonSpacing = E.db.general.minimap.buttons.buttonspacing
|
||||
E.db.enhanced.minimap.buttonGrabber.backdrop = E.db.general.minimap.buttons.backdrop
|
||||
E.db.enhanced.minimap.buttonGrabber.backdropSpacing = E.db.general.minimap.buttons.backdropSpacing
|
||||
E.db.enhanced.minimap.buttonGrabber.buttonsPerRow = E.db.general.minimap.buttons.buttonsPerRow
|
||||
E.db.enhanced.minimap.buttonGrabber.alpha = E.db.general.minimap.buttons.alpha
|
||||
E.db.enhanced.minimap.buttonGrabber.mouseover = E.db.general.minimap.buttons.mouseover
|
||||
E.db.enhanced.minimap.buttonGrabber.growFrom = E.db.general.minimap.buttons.point
|
||||
|
||||
if E.db.general.minimap.buttons.insideMinimap then
|
||||
E.db.enhanced.minimap.buttonGrabber.insideMinimap.enable = E.db.general.minimap.buttons.insideMinimap.enable
|
||||
E.db.enhanced.minimap.buttonGrabber.insideMinimap.position = E.db.general.minimap.buttons.insideMinimap.position
|
||||
E.db.enhanced.minimap.buttonGrabber.insideMinimap.xOffset = E.db.general.minimap.buttons.insideMinimap.xOffset
|
||||
E.db.enhanced.minimap.buttonGrabber.insideMinimap.yOffset = E.db.general.minimap.buttons.insideMinimap.yOffset
|
||||
end
|
||||
|
||||
E.db.general.minimap.buttons = nil
|
||||
end
|
||||
|
||||
if E.db.fogofwar then
|
||||
E.db.enhanced.map.fogClear.enable = E.db.fogofwar.enable
|
||||
|
||||
if E.db.fogofwar.color then
|
||||
E.db.enhanced.map.fogClear.color.r = E.db.fogofwar.color.r
|
||||
E.db.enhanced.map.fogClear.color.g = E.db.fogofwar.color.g
|
||||
E.db.enhanced.map.fogClear.color.b = E.db.fogofwar.color.b
|
||||
E.db.enhanced.map.fogClear.color.a = E.db.fogofwar.color.a
|
||||
end
|
||||
|
||||
E.db.fogofwar = nil
|
||||
end
|
||||
end
|
||||
|
||||
function addon:PrintAddonMerged(mergedAddonName)
|
||||
local _, _, _, enabled, _, reason = GetAddOnInfo(mergedAddonName)
|
||||
if reason == "MISSING" then return end
|
||||
|
||||
local text = format(L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."], mergedAddonName)
|
||||
E:Print(text)
|
||||
|
||||
if enabled then
|
||||
if not E.PopupDialogs.ENHANCED_MERGED_ADDON then
|
||||
E.PopupDialogs.ENHANCED_MERGED_ADDON = {
|
||||
button2 = CANCEL,
|
||||
OnAccept = function()
|
||||
DisableAddOn(E.PopupDialogs.ENHANCED_MERGED_ADDON.mergedAddonName)
|
||||
ReloadUI()
|
||||
end,
|
||||
whileDead = 1,
|
||||
hideOnEscape = false
|
||||
}
|
||||
end
|
||||
|
||||
local popup = E.PopupDialogs.ENHANCED_MERGED_ADDON
|
||||
popup.text = text
|
||||
popup.button1 = format("Disable %s", string.gsub(mergedAddonName, "^ElvUI_", ""))
|
||||
|
||||
E:StaticPopup_Show("ENHANCED_MERGED_ADDON")
|
||||
end
|
||||
end
|
||||
|
||||
function addon:Initialize()
|
||||
EnhancedDB = EnhancedDB or {}
|
||||
|
||||
self.version = GetAddOnMetadata("ElvUI_Enhanced", "Version")
|
||||
|
||||
self:DBConversions()
|
||||
|
||||
EP:RegisterPlugin(addonName, self.GetOptions)
|
||||
|
||||
if E.db.general.loginmessage then
|
||||
print(format(L["ENH_LOGIN_MSG"], E.media.hexvaluecolor, addon.version))
|
||||
end
|
||||
|
||||
if IsAddOnLoaded("GearScore") and IsAddOnLoaded("BonusScanner") then
|
||||
if GetAddOnMetadata("GearScore", "Version") == "3.1.20b - Release" then
|
||||
gsPopupShow()
|
||||
end
|
||||
end
|
||||
|
||||
self:PrintAddonMerged("ElvUI_MinimapButtons")
|
||||
self:PrintAddonMerged("ElvUI_FogofWar")
|
||||
end
|
||||
|
||||
local function InitializeCallback()
|
||||
addon:Initialize()
|
||||
end
|
||||
|
||||
E:RegisterModule(addon:GetName(), InitializeCallback)
|
||||
@@ -0,0 +1,18 @@
|
||||
## Interface: 30300
|
||||
## Author: Bunny, Apollyon, Loaal, Crum
|
||||
## Version: 1.05
|
||||
## Title: |cff1784d1E|r|cffe5e3e3lvUI|r |cff1784d1E|r|cffe5e3e3nhanced|r
|
||||
## Notes: Plugin-Enhancements for |cff1784d1E|r|cffe5e3e3lvUI|r.
|
||||
## SavedVariables: EnhancedDB
|
||||
## RequiredDeps: ElvUI
|
||||
## DefaultState: Enabled
|
||||
## Dependencies: AscensionUI
|
||||
|
||||
Developer\Load_Developer.xml
|
||||
Libraries\Load_Libraries.xml
|
||||
Locales\Load_Locales.xml
|
||||
Media\Load_Media.xml
|
||||
ElvUI_Enhanced.lua
|
||||
Settings\Load_Settings.xml
|
||||
Modules\Load_Modules.xml
|
||||
Config\Load_Config.xml
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,3 @@
|
||||
<Ui xmlns="http://www.blizzard.com/wow/ui/">
|
||||
<Script file="LibRangeCheck-2.0\LibRangeCheck-2.0.lua"/>
|
||||
</Ui>
|
||||
@@ -0,0 +1,11 @@
|
||||
<Ui xmlns="http://www.blizzard.com/wow/ui/">
|
||||
<Script file="enUS.lua"/>
|
||||
<Script file="deDE.lua"/>
|
||||
<Script file="esMX.lua"/>
|
||||
<Script file="frFR.lua"/>
|
||||
<Script file="koKR.lua"/>
|
||||
<Script file="ptBR.lua"/>
|
||||
<Script file="ruRU.lua"/>
|
||||
<Script file="zhTW.lua"/>
|
||||
<Script file="zhCN.lua"/>
|
||||
</Ui>
|
||||
@@ -0,0 +1,237 @@
|
||||
local E = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local L = E.Libs.ACL:NewLocale("ElvUI", "deDE")
|
||||
|
||||
-- DESC locales
|
||||
L["ENH_LOGIN_MSG"] = "Sie verwenden |cff1784d1ElvUI|r |cff1784d1Enhanced|r |cffff8000(WotLK)|r Version %s%s|r."
|
||||
L["DURABILITY_DESC"] = "Passen Sie die Einstellungen für die Haltbarkeit im Charakterfenster an."
|
||||
L["ITEMLEVEL_DESC"] = "Passen Sie die Einstellungen für die Anzeige von Gegenstandsstufen im Charakterfenster an."
|
||||
L["WATCHFRAME_DESC"] = "Passen Sie die Einstellungen des Watchframe (Questlog) nach ihren Wünschen an."
|
||||
|
||||
-- Incompatibility
|
||||
L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"] = true
|
||||
|
||||
-- AddOn List
|
||||
L["Enable All"] = "Alle aktivieren"
|
||||
L["Dependencies: "] = "Abhängigkeiten"
|
||||
L["Disable All"] = "Alle deaktivieren"
|
||||
L["Load AddOn"] = "Lade AddOn"
|
||||
L["Requires Reload"] = "Benötigt Reload"
|
||||
|
||||
-- Chat
|
||||
L["Filter DPS meters Spam"] = "Spam von DPS-Metern filtern"
|
||||
L["Replaces reports from damage meters with a clickable hyperlink to reduce chat spam"] = true
|
||||
|
||||
-- Datatext
|
||||
L["Ammo/Shard Counter"] = true
|
||||
L["Combat Indicator"] = "Kampfanzeige"
|
||||
L["Distance"] = "Entfernung"
|
||||
L["In Combat"] = "Im Kampf"
|
||||
L["New Mail"] = "Neue Post"
|
||||
L["No Mail"] = "Keine Post"
|
||||
L["Out of Combat"] = "Außerhalb des Kampfes"
|
||||
L["Reincarnation"] = "Wiederbelebung"
|
||||
L["Target Range"] = "Zielreichweite"
|
||||
|
||||
-- Death Recap
|
||||
L["Death Recap Frame"] = true
|
||||
L["%s %s"] = true
|
||||
L["%s by %s"] = "%s durch %s"
|
||||
L["%s sec before death at %s%% health."] = "%s Sekunden vor Tod bei %s%% Gesundheit."
|
||||
L["(%d Absorbed)"] = "(%d Absorbiert)"
|
||||
L["(%d Blocked)"] = "(%d Geblockt)"
|
||||
L["(%d Overkill)"] = "(%d Über dem Tod)"
|
||||
L["(%d Resisted)"] = "(%d Widerstanden)"
|
||||
L["Death Recap unavailable."] = "Todesursache nicht verfügbar."
|
||||
L["Death Recap"] = "Todesursache"
|
||||
L["Killing blow at %s%% health."] = "Todesstoß bei %s%% Gesundheit."
|
||||
L["You died."] = "Du bist gestorben."
|
||||
|
||||
-- Decline Duels
|
||||
L["Auto decline all duels"] = "Auto-Ablehnen von allen Duellen"
|
||||
L["Decline Duel"] = "Duell ablehnen"
|
||||
L["Declined duel request from "] = "Duellaufforderung abgelehnt von "
|
||||
|
||||
-- Enhanced Character Frame / Paperdoll Backgrounds
|
||||
L["Character Background"] = true
|
||||
L["Enhanced Character Frame"] = true
|
||||
L["Enhanced Model Frames"] = true
|
||||
L["Inspect Background"] = true
|
||||
L["Paperdoll Backgrounds"] = true
|
||||
L["Pet Background"] = true
|
||||
|
||||
-- Equipment
|
||||
L["Damaged Only"] = "Nur Beschädigte"
|
||||
L["Enable/Disable the display of durability information on the character screen."] = "Anzeige der Haltbarkeit im Charakterfenster."
|
||||
L["Enable/Disable the display of item levels on the character screen."] = "Anzeige von Gegenstandsstufen im Charakterfenster aktivieren / deaktivieren."
|
||||
L["Only show durabitlity information for items that are damaged."] = "Nur die Haltbarkeit für beschädigte Ausrüstungsteile anzeigen."
|
||||
L["Quality Color"] = "Qualitätsfarbe"
|
||||
|
||||
-- General
|
||||
L["Add button to Dressing Room frame with ability to undress model."] = true
|
||||
L["Add button to Trainer frame with ability to train all available skills in one click."] = true
|
||||
L["Alt-Click Merchant"] = true
|
||||
L["Already Known"] = true
|
||||
L["Animated Achievement Bars"] = true
|
||||
L["Automatically change your watched faction on the reputation bar to the faction you got reputation points for."] = "Ändere automatisch die beobachtete Fraktion auf der Erfahrungsleiste zu der Fraktion für die Sie grade Rufpunkte erhalten haben."
|
||||
L["Automatically release body when killed inside a battleground."] = "Gibt automatisch Ihren Geist frei, wenn Sie auf dem Schlachtfeld getötet wurden."
|
||||
L["Automatically select the quest reward with the highest vendor sell value."] = "Wählt automatisch die Questbelohnung mit dem höchsten Wiederverkaufswert beim Händler"
|
||||
L["Change color of item icons which already known."] = true
|
||||
L["Changes the transparency of all the movers."] = "Ändere die Transparenz aller Ankerpukte"
|
||||
L["Display quest levels at Quest Log."] = "Questlevel im Questlog anzeigen."
|
||||
L["Hide Zone Text"] = "Zonentext verstecken"
|
||||
L["Holding Alt key while buying something from vendor will now buy an entire stack."] = true
|
||||
L["Mover Transparency"] = "Transparenz Ankerpunkte"
|
||||
L["PvP Autorelease"] = "Automatische Freigabe im PvP"
|
||||
L["Select Quest Reward"] = "Wähle Questbelohnung"
|
||||
L["Show Quest Level"] = "Zeige Questlevel"
|
||||
L["Track Reputation"] = "Ruf beobachten"
|
||||
L["Train All Button"] = true
|
||||
L["Undress Button"] = true
|
||||
L["Undress"] = "Ausziehen"
|
||||
|
||||
-- HD Models Portrait Fix
|
||||
L["Debug"] = true
|
||||
L["List of models with broken portrait camera. Separete each model name with ';' simbol"] = true
|
||||
L["Models to fix"] = true
|
||||
L["Portrait HD Fix"] = true
|
||||
L["Print to chat model names of units with enabled 3D portraits."] = true
|
||||
|
||||
-- Interrupt Tracker
|
||||
L["Interrupt Tracker"] = true
|
||||
|
||||
-- Nameplates
|
||||
L["Cache Unit Class"] = true
|
||||
|
||||
-- Minimap
|
||||
L["Above Minimap"] = "Oberhalb der Minimap"
|
||||
L["Combat Hide"] = true
|
||||
L["FadeIn Delay"] = "Einblendungsverzögerung"
|
||||
L["Hide minimap while in combat."] = "Ausblenden der Minimap während des Kampfes."
|
||||
L["Show Location Digits"] = "Koordinaten einblenden"
|
||||
L["Toggle Location Digits."] = "Koordinaten ein- oder ausblenden."
|
||||
L["Location Digits"] = "Koordinaten Nachkommastellen"
|
||||
L["Location Panel"] = "Standort-Panel"
|
||||
L["Number of digits for map location."] = "Anzahl der Nachkommastellen der Koordinaten."
|
||||
L["The time to wait before fading the minimap back in after combat hide. (0 = Disabled)"] = "Die Zeit vor dem wieder Einblenden der Minimap nach dem Kampf. (0 = deaktiviert)"
|
||||
L["Toggle Location Panel."] = "Umschalten des Standort-Panels"
|
||||
|
||||
-- Timer Tracker
|
||||
L["Timer Tracker"] = true
|
||||
L["Hook DBM"] = true
|
||||
|
||||
-- Tooltip
|
||||
L["Check Player"] = true
|
||||
L["Colorize the tooltip border based on item quality."] = "Färbe den Tooltip-Rahmen basierend auf der Gegenstandsqualität"
|
||||
L["Check achievement completion instead of boss kill stats.\nSome servers log incorrect boss kill statistics, this is an alternative way to get player progress."] = true
|
||||
L["Icecrown Citadel"] = true
|
||||
L["Item Border Color"] = "Gegenstandsrahmen-Farbe"
|
||||
L["Progress Info"] = true
|
||||
L["Ruby Sanctum"] = true
|
||||
L["Show/Hides an Icon for Achievements on the Tooltip."] = "Icon für Erfolge am Tooltip anzeigen oder ausblenden."
|
||||
L["Show/Hides an Icon for Items on the Tooltip."] = "Icon für Gegenstände am Tooltip anzeigen oder ausblenden."
|
||||
L["Show/Hides an Icon for Spells on the Tooltip."] = "Icon für Zauber am Tooltip anzeigen oder ausblenden."
|
||||
L["Show/Hides an Icon for Spells and Items on the Tooltip."] = "Icon für Zauber oder Gegenstände am Tooltip anzeigen oder ausblenden."
|
||||
L["Tiers"] = true
|
||||
L["Tooltip Icon"] = true
|
||||
L["Trial of the Crusader"] = true
|
||||
L["Ulduar"] = true
|
||||
|
||||
-- Movers
|
||||
L["Loss Control"] = "Kontrollverlust"
|
||||
L["Player Portrait"] = "Spieler-Portrait"
|
||||
L["Target Portrait"] = "Ziel-Portrait"
|
||||
|
||||
-- Loss Control
|
||||
L["CC"] = "CC"
|
||||
L["Disarm"] = "Entwaffnen"
|
||||
L["Lose Control"] = true
|
||||
L["PvE"] = "PvE"
|
||||
L["Root"] = "Wurzeln"
|
||||
L["Silence"] = "Stille"
|
||||
L["Snare"] = "Verlangsamung"
|
||||
|
||||
-- Unitframes
|
||||
L["Class Icons"] = "Klassensymbole"
|
||||
L["Detached Height"] = "Höhe loslösen"
|
||||
L["Show class icon for units."] = "Zeige Klassensymbole für Einheiten"
|
||||
|
||||
-- WatchFrame
|
||||
L["City (Resting)"] = "Stadt (erholend)"
|
||||
L["Collapsed"] = "Eingeklappt"
|
||||
L["Hidden"] = "Versteckt"
|
||||
L["Party"] = "Gruppe"
|
||||
L["PvP"] = "PvP"
|
||||
L["Raid"] = "Schlachtzug"
|
||||
|
||||
--
|
||||
L["Drag"] = true
|
||||
L["Left-click on character and drag to rotate."] = true
|
||||
L["Mouse Wheel Down"] = true
|
||||
L["Mouse Wheel Up"] = true
|
||||
L["Reset Position"] = "Position zurücksetzen"
|
||||
L["Right-click on character and drag to move it within the window."] = true
|
||||
L["Rotate Left"] = true
|
||||
L["Rotate Right"] = true
|
||||
L["Zoom In"] = true
|
||||
L["Zoom Out"] = true
|
||||
|
||||
--
|
||||
L["Character Stats"] = true
|
||||
L["Damage Per Second"] = "DPS"
|
||||
L["Equipment Manager"] = true
|
||||
L["Hide Character Information"] = true
|
||||
L["Hide Pet Information"] = true
|
||||
L["Item Level"] = "Itemlevel"
|
||||
L["New Set"] = true
|
||||
L["Resistance"] = true
|
||||
L["Show Character Information"] = true
|
||||
L["Show Pet Information"] = true
|
||||
L["Titles"] = true
|
||||
L["Total Companions"] = true
|
||||
L["Total Mounts"] = true
|
||||
|
||||
L["ALL"] = "Alle"
|
||||
L["ALT_KEY"] = "ALT-Taste"
|
||||
|
||||
L["%d mails\nShift-Click to remove empty mails."] = true
|
||||
L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."] = true
|
||||
L["Cache Unit Guilds / NPC Titles"] = true
|
||||
L["Check Achievements"] = true
|
||||
L["Collected "] = true
|
||||
L["Collection completed."] = true
|
||||
L["Collection stopped, inventory is full."] = true
|
||||
L["Color based on reaction type."] = true
|
||||
L["Compact mode"] = true
|
||||
L["Companion Background"] = true
|
||||
L["Desaturate"] = true
|
||||
L["Detached Portrait"] = true
|
||||
L["Dressing Room"] = true
|
||||
L["Enhanced"] = true
|
||||
L["Equipment Info"] = true
|
||||
L["Error Frame"] = true
|
||||
L["Everywhere"] = true
|
||||
L["Fog of War"] = true
|
||||
L["Grow direction"] = true
|
||||
L["Guild"] = true
|
||||
L["Inside Minimap"] = true
|
||||
L["Key Press Animation"] = true
|
||||
L["Map"] = true
|
||||
L["Minimap Button Grabber"] = true
|
||||
L["NPC"] = "NSC"
|
||||
L["Overlay Color"] = true
|
||||
L["Reaction Color"] = true
|
||||
L["Reported by %s"] = true
|
||||
L["Rotation"] = true
|
||||
L["Separator"] = true
|
||||
L["Set the height of Error Frame. Higher frame can show more lines at once."] = true
|
||||
L["Set the width of Error Frame. Too narrow frame may cause messages to be split in several lines"] = true
|
||||
L["Show Everywhere"] = true
|
||||
L["Show on Arena."] = true
|
||||
L["Show on Battleground."] = true
|
||||
L["Smooth Animations"] = true
|
||||
L["Take All"] = true
|
||||
L["Take All Mail"] = true
|
||||
L["Take Cash"] = true
|
||||
L["This addon has been disabled. You should install an updated version."] = true
|
||||
L["Where to show"] = true
|
||||
L["seconds"] = true
|
||||
@@ -0,0 +1,237 @@
|
||||
local E = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local L = E.Libs.ACL:NewLocale("ElvUI", "enUS", true)
|
||||
|
||||
-- DESC locales
|
||||
L["ENH_LOGIN_MSG"] = "You are using |cff1784d1ElvUI Enhanced|r |cffff8000(WotLK)|r version %s%s|r."
|
||||
L["DURABILITY_DESC"] = "Adjust the settings for the durability information on the character screen."
|
||||
L["ITEMLEVEL_DESC"] = "Adjust the settings for the item level information on the character screen."
|
||||
L["WATCHFRAME_DESC"] = "Adjust the settings for the visibility of the watchframe (questlog) to your personal preference."
|
||||
|
||||
-- Incompatibility
|
||||
L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"] = true
|
||||
|
||||
-- AddOn List
|
||||
L["Enable All"] = true
|
||||
L["Dependencies: "] = true
|
||||
L["Disable All"] = true
|
||||
L["Load AddOn"] = true
|
||||
L["Requires Reload"] = true
|
||||
|
||||
-- Chat
|
||||
L["Filter DPS meters Spam"] = true
|
||||
L["Replaces reports from damage meters with a clickable hyperlink to reduce chat spam"] = true
|
||||
|
||||
-- Datatext
|
||||
L["Death Recap Frame"] = true
|
||||
L["Ammo/Shard Counter"] = true
|
||||
L["Combat Indicator"] = true
|
||||
L["Distance"] = true
|
||||
L["In Combat"] = true
|
||||
L["New Mail"] = true
|
||||
L["No Mail"] = true
|
||||
L["Out of Combat"] = true
|
||||
L["Reincarnation"] = true
|
||||
L["Target Range"] = true
|
||||
|
||||
-- Death Recap
|
||||
L["%s %s"] = true
|
||||
L["%s by %s"] = true
|
||||
L["%s sec before death at %s%% health."] = true
|
||||
L["(%d Absorbed)"] = true
|
||||
L["(%d Blocked)"] = true
|
||||
L["(%d Overkill)"] = true
|
||||
L["(%d Resisted)"] = true
|
||||
L["Death Recap unavailable."] = true
|
||||
L["Death Recap"] = true
|
||||
L["Killing blow at %s%% health."] = true
|
||||
L["You died."] = true
|
||||
|
||||
-- Decline Duels
|
||||
L["Auto decline all duels"] = true
|
||||
L["Decline Duel"] = true
|
||||
L["Declined duel request from "] = true
|
||||
|
||||
-- Enhanced Character Frame / Paperdoll Backgrounds
|
||||
L["Character Background"] = true
|
||||
L["Enhanced Character Frame"] = true
|
||||
L["Inspect Background"] = true
|
||||
L["Enhanced Model Frames"] = true
|
||||
L["Paperdoll Backgrounds"] = true
|
||||
L["Pet Background"] = true
|
||||
|
||||
-- Equipment
|
||||
L["Damaged Only"] = true
|
||||
L["Enable/Disable the display of durability information on the character screen."] = true
|
||||
L["Enable/Disable the display of item levels on the character screen."] = true
|
||||
L["Only show durabitlity information for items that are damaged."] = true
|
||||
L["Quality Color"] = true
|
||||
|
||||
-- General
|
||||
L["Add button to Dressing Room frame with ability to undress model."] = true
|
||||
L["Add button to Trainer frame with ability to train all available skills in one click."] = true
|
||||
L["Alt-Click Merchant"] = true
|
||||
L["Already Known"] = true
|
||||
L["Animated Achievement Bars"] = true
|
||||
L["Automatically change your watched faction on the reputation bar to the faction you got reputation points for."] = true
|
||||
L["Automatically release body when killed inside a battleground."] = true
|
||||
L["Automatically select the quest reward with the highest vendor sell value."] = true
|
||||
L["Change color of item icons which already known."] = true
|
||||
L["Changes the transparency of all the movers."] = true
|
||||
L["Display quest levels at Quest Log."] = true
|
||||
L["Hide Zone Text"] = true
|
||||
L["Holding Alt key while buying something from vendor will now buy an entire stack."] = true
|
||||
L["Mover Transparency"] = true
|
||||
L["PvP Autorelease"] = true
|
||||
L["Select Quest Reward"] = true
|
||||
L["Show Quest Level"] = true
|
||||
L["Track Reputation"] = true
|
||||
L["Train All Button"] = true
|
||||
L["Undress Button"] = true
|
||||
L["Undress"] = true
|
||||
|
||||
-- HD Models Portrait Fix
|
||||
L["Debug"] = true
|
||||
L["List of models with broken portrait camera. Separete each model name with ';' simbol"] = true
|
||||
L["Models to fix"] = true
|
||||
L["Portrait HD Fix"] = true
|
||||
L["Print to chat model names of units with enabled 3D portraits."] = true
|
||||
|
||||
-- Interrupt Tracker
|
||||
L["Interrupt Tracker"] = true
|
||||
|
||||
-- Nameplates
|
||||
L["Cache Unit Class"] = true
|
||||
|
||||
-- Minimap
|
||||
L["Above Minimap"] = true
|
||||
L["Combat Hide"] = true
|
||||
L["FadeIn Delay"] = true
|
||||
L["Hide minimap while in combat."] = true
|
||||
L["Show Location Digits"] = true
|
||||
L["Toggle Location Digits."] = true
|
||||
L["Location Digits"] = true
|
||||
L["Location Panel"] = true
|
||||
L["Number of digits for map location."] = true
|
||||
L["The time to wait before fading the minimap back in after combat hide. (0 = Disabled)"] = true
|
||||
L["Toggle Location Panel."] = true
|
||||
|
||||
-- Timer Tracker
|
||||
L["Timer Tracker"] = true
|
||||
L["Hook DBM"] = true
|
||||
|
||||
-- Tooltip
|
||||
L["Check Player"] = true
|
||||
L["Check achievement completion instead of boss kill stats.\nSome servers log incorrect boss kill statistics, this is an alternative way to get player progress."] = true
|
||||
L["Colorize the tooltip border based on item quality."] = true
|
||||
L["Icecrown Citadel"] = true
|
||||
L["Item Border Color"] = true
|
||||
L["Progress Info"] = true
|
||||
L["Ruby Sanctum"] = true
|
||||
L["Show/Hides an Icon for Achievements on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Items on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells and Items on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells on the Tooltip."] = true
|
||||
L["Tiers"] = true
|
||||
L["Tooltip Icon"] = true
|
||||
L["Trial of the Crusader"] = true
|
||||
L["Ulduar"] = true
|
||||
|
||||
-- Movers
|
||||
L["Loss Control"] = true
|
||||
L["Player Portrait"] = true
|
||||
L["Target Portrait"] = true
|
||||
|
||||
-- Lose Control
|
||||
L["CC"] = true
|
||||
L["Disarm"] = true
|
||||
L["Lose Control"] = true
|
||||
L["PvE"] = true
|
||||
L["Root"] = true
|
||||
L["Silence"] = true
|
||||
L["Snare"] = true
|
||||
|
||||
-- Unitframes
|
||||
L["Class Icons"] = true
|
||||
L["Detached Height"] = true
|
||||
L["Show class icon for units."] = true
|
||||
|
||||
-- WatchFrame
|
||||
L["Hidden"] = true
|
||||
L["Collapsed"] = true
|
||||
L["City (Resting)"] = true
|
||||
L["PvP"] = true
|
||||
L["Party"] = true
|
||||
L["Raid"] = true
|
||||
|
||||
--
|
||||
L["Drag"] = true
|
||||
L["Left-click on character and drag to rotate."] = true
|
||||
L["Mouse Wheel Down"] = true
|
||||
L["Mouse Wheel Up"] = true
|
||||
L["Reset Position"] = true
|
||||
L["Right-click on character and drag to move it within the window."] = true
|
||||
L["Rotate Left"] = true
|
||||
L["Rotate Right"] = true
|
||||
L["Zoom In"] = true
|
||||
L["Zoom Out"] = true
|
||||
|
||||
--
|
||||
L["Character Stats"] = true
|
||||
L["Damage Per Second"] = "DPS"
|
||||
L["Equipment Manager"] = true
|
||||
L["Hide Character Information"] = true
|
||||
L["Hide Pet Information"] = true
|
||||
L["Item Level"] = true
|
||||
L["New Set"] = true
|
||||
L["Resistance"] = true
|
||||
L["Show Character Information"] = true
|
||||
L["Show Pet Information"] = true
|
||||
L["Titles"] = true
|
||||
L["Total Companions"] = true
|
||||
L["Total Mounts"] = true
|
||||
|
||||
L["ALL"] = "All"
|
||||
L["ALT_KEY"] = "ALT key"
|
||||
|
||||
L["%d mails\nShift-Click to remove empty mails."] = true
|
||||
L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."] = true
|
||||
L["Cache Unit Guilds / NPC Titles"] = true
|
||||
L["Check Achievements"] = true
|
||||
L["Collected "] = true
|
||||
L["Collection completed."] = true
|
||||
L["Collection stopped, inventory is full."] = true
|
||||
L["Color based on reaction type."] = true
|
||||
L["Compact mode"] = true
|
||||
L["Companion Background"] = true
|
||||
L["Desaturate"] = true
|
||||
L["Detached Portrait"] = true
|
||||
L["Dressing Room"] = true
|
||||
L["Enhanced"] = true
|
||||
L["Equipment Info"] = true
|
||||
L["Error Frame"] = true
|
||||
L["Everywhere"] = true
|
||||
L["Fog of War"] = true
|
||||
L["Grow direction"] = true
|
||||
L["Guild"] = true
|
||||
L["Inside Minimap"] = true
|
||||
L["Key Press Animation"] = true
|
||||
L["Map"] = true
|
||||
L["Minimap Button Grabber"] = true
|
||||
L["NPC"] = true
|
||||
L["Overlay Color"] = true
|
||||
L["Reaction Color"] = true
|
||||
L["Reported by %s"] = true
|
||||
L["Rotation"] = true
|
||||
L["Separator"] = true
|
||||
L["Set the height of Error Frame. Higher frame can show more lines at once."] = true
|
||||
L["Set the width of Error Frame. Too narrow frame may cause messages to be split in several lines"] = true
|
||||
L["Show Everywhere"] = true
|
||||
L["Show on Arena."] = true
|
||||
L["Show on Battleground."] = true
|
||||
L["Smooth Animations"] = true
|
||||
L["Take All"] = true
|
||||
L["Take All Mail"] = true
|
||||
L["Take Cash"] = true
|
||||
L["This addon has been disabled. You should install an updated version."] = true
|
||||
L["Where to show"] = true
|
||||
L["seconds"] = true
|
||||
@@ -0,0 +1,237 @@
|
||||
local E = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local L = E.Libs.ACL:NewLocale("ElvUI", "esMX")
|
||||
|
||||
-- DESC locales
|
||||
L["ENH_LOGIN_MSG"] = "You are using |cff1784d1ElvUI Enhanced|r |cffff8000(WotLK)|r version %s%s|r."
|
||||
L["DURABILITY_DESC"] = "Adjust the settings for the durability information on the character screen."
|
||||
L["ITEMLEVEL_DESC"] = "Adjust the settings for the item level information on the character screen."
|
||||
L["WATCHFRAME_DESC"] = "Adjust the settings for the visibility of the watchframe (questlog) to your personal preference."
|
||||
|
||||
-- Incompatibility
|
||||
L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"] = true
|
||||
|
||||
-- AddOn List
|
||||
L["Enable All"] = true
|
||||
L["Dependencies: "] = true
|
||||
L["Disable All"] = true
|
||||
L["Load AddOn"] = true
|
||||
L["Requires Reload"] = true
|
||||
|
||||
-- Chat
|
||||
L["Filter DPS meters Spam"] = true
|
||||
L["Replaces reports from damage meters with a clickable hyperlink to reduce chat spam"] = true
|
||||
|
||||
-- Datatext
|
||||
L["Ammo/Shard Counter"] = true
|
||||
L["Combat Indicator"] = true
|
||||
L["Distance"] = true
|
||||
L["In Combat"] = true
|
||||
L["New Mail"] = true
|
||||
L["No Mail"] = true
|
||||
L["Out of Combat"] = true
|
||||
L["Reincarnation"] = true
|
||||
L["Target Range"] = true
|
||||
|
||||
-- Death Recap
|
||||
L["Death Recap Frame"] = true
|
||||
L["%s %s"] = true
|
||||
L["%s by %s"] = true
|
||||
L["%s sec before death at %s%% health."] = true
|
||||
L["(%d Absorbed)"] = true
|
||||
L["(%d Blocked)"] = true
|
||||
L["(%d Overkill)"] = true
|
||||
L["(%d Resisted)"] = true
|
||||
L["Death Recap unavailable."] = true
|
||||
L["Death Recap"] = true
|
||||
L["Killing blow at %s%% health."] = true
|
||||
L["You died."] = true
|
||||
|
||||
-- Decline Duels
|
||||
L["Auto decline all duels"] = true
|
||||
L["Decline Duel"] = true
|
||||
L["Declined duel request from "] = "Duelo rechazado de "
|
||||
|
||||
-- Enhanced Character Frame / Paperdoll Backgrounds
|
||||
L["Character Background"] = true
|
||||
L["Enhanced Character Frame"] = true
|
||||
L["Enhanced Model Frames"] = true
|
||||
L["Inspect Background"] = true
|
||||
L["Paperdoll Backgrounds"] = true
|
||||
L["Pet Background"] = true
|
||||
|
||||
-- Equipment
|
||||
L["Damaged Only"] = true
|
||||
L["Enable/Disable the display of durability information on the character screen."] = true
|
||||
L["Enable/Disable the display of item levels on the character screen."] = true
|
||||
L["Only show durabitlity information for items that are damaged."] = true
|
||||
L["Quality Color"] = true
|
||||
|
||||
-- General
|
||||
L["Add button to Dressing Room frame with ability to undress model."] = true
|
||||
L["Add button to Trainer frame with ability to train all available skills in one click."] = true
|
||||
L["Alt-Click Merchant"] = true
|
||||
L["Already Known"] = true
|
||||
L["Animated Achievement Bars"] = true
|
||||
L["Automatically change your watched faction on the reputation bar to the faction you got reputation points for."] = true
|
||||
L["Automatically release body when killed inside a battleground."] = true
|
||||
L["Automatically select the quest reward with the highest vendor sell value."] = true
|
||||
L["Change color of item icons which already known."] = true
|
||||
L["Changes the transparency of all the movers."] = true
|
||||
L["Display quest levels at Quest Log."] = true
|
||||
L["Hide Zone Text"] = true
|
||||
L["Holding Alt key while buying something from vendor will now buy an entire stack."] = true
|
||||
L["Mover Transparency"] = true
|
||||
L["PvP Autorelease"] = true
|
||||
L["Select Quest Reward"] = true
|
||||
L["Show Quest Level"] = true
|
||||
L["Track Reputation"] = true
|
||||
L["Train All Button"] = true
|
||||
L["Undress Button"] = true
|
||||
L["Undress"] = true
|
||||
|
||||
-- HD Models Portrait Fix
|
||||
L["Debug"] = true
|
||||
L["List of models with broken portrait camera. Separete each model name with ';' simbol"] = true
|
||||
L["Models to fix"] = true
|
||||
L["Portrait HD Fix"] = true
|
||||
L["Print to chat model names of units with enabled 3D portraits."] = true
|
||||
|
||||
-- Interrupt Tracker
|
||||
L["Interrupt Tracker"] = true
|
||||
|
||||
-- Nameplates
|
||||
L["Cache Unit Class"] = true
|
||||
|
||||
-- Minimap
|
||||
L["Above Minimap"] = true
|
||||
L["Combat Hide"] = true
|
||||
L["FadeIn Delay"] = true
|
||||
L["Hide minimap while in combat."] = true
|
||||
L["Show Location Digits"] = true
|
||||
L["Toggle Location Digits."] = true
|
||||
L["Location Digits"] = true
|
||||
L["Location Panel"] = true
|
||||
L["Number of digits for map location."] = true
|
||||
L["The time to wait before fading the minimap back in after combat hide. (0 = Disabled)"] = true
|
||||
L["Toggle Location Panel."] = true
|
||||
|
||||
-- Timer Tracker
|
||||
L["Timer Tracker"] = true
|
||||
L["Hook DBM"] = true
|
||||
|
||||
-- Tooltip
|
||||
L["Check Player"] = true
|
||||
L["Check achievement completion instead of boss kill stats.\nSome servers log incorrect boss kill statistics, this is an alternative way to get player progress."] = true
|
||||
L["Colorize the tooltip border based on item quality."] = true
|
||||
L["Icecrown Citadel"] = true
|
||||
L["Item Border Color"] = true
|
||||
L["Progress Info"] = true
|
||||
L["Ruby Sanctum"] = true
|
||||
L["Show/Hides an Icon for Achievements on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Items on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells and Items on the Tooltip."] = true
|
||||
L["Tiers"] = true
|
||||
L["Tooltip Icon"] = true
|
||||
L["Trial of the Crusader"] = true
|
||||
L["Ulduar"] = true
|
||||
|
||||
-- Movers
|
||||
L["Loss Control"] = "Pérdida de Control"
|
||||
L["Player Portrait"] = true
|
||||
L["Target Portrait"] = true
|
||||
|
||||
-- Loss Control
|
||||
L["CC"] = "CC"
|
||||
L["Disarm"] = "Desarme"
|
||||
L["Lose Control"] = true
|
||||
L["PvE"] = "PvE"
|
||||
L["Root"] = "Inmovilice"
|
||||
L["Silence"] = "Silencio"
|
||||
L["Snare"] = "Trampa"
|
||||
|
||||
-- Unitframes
|
||||
L["Class Icons"] = true
|
||||
L["Detached Height"] = true
|
||||
L["Show class icon for units."] = true
|
||||
|
||||
-- WatchFrame
|
||||
L["Hidden"] = true
|
||||
L["Collapsed"] = true
|
||||
L["City (Resting)"] = true
|
||||
L["PvP"] = true
|
||||
L["Party"] = true
|
||||
L["Raid"] = true
|
||||
|
||||
--
|
||||
L["Drag"] = true
|
||||
L["Left-click on character and drag to rotate."] = true
|
||||
L["Mouse Wheel Down"] = true
|
||||
L["Mouse Wheel Up"] = true
|
||||
L["Reset Position"] = "Reestablecer Posición"
|
||||
L["Right-click on character and drag to move it within the window."] = true
|
||||
L["Rotate Left"] = true
|
||||
L["Rotate Right"] = true
|
||||
L["Zoom In"] = true
|
||||
L["Zoom Out"] = true
|
||||
|
||||
--
|
||||
L["Character Stats"] = true
|
||||
L["Damage Per Second"] = "DPS"
|
||||
L["Equipment Manager"] = true
|
||||
L["Hide Character Information"] = true
|
||||
L["Hide Pet Information"] = true
|
||||
L["Item Level"] = true
|
||||
L["New Set"] = true
|
||||
L["Resistance"] = true
|
||||
L["Show Character Information"] = true
|
||||
L["Show Pet Information"] = true
|
||||
L["Titles"] = true
|
||||
L["Total Companions"] = true
|
||||
L["Total Mounts"] = true
|
||||
|
||||
L["ALL"] = "Todo"
|
||||
L["ALT_KEY"] = "Alt"
|
||||
|
||||
L["%d mails\nShift-Click to remove empty mails."] = true
|
||||
L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."] = true
|
||||
L["Cache Unit Guilds / NPC Titles"] = true
|
||||
L["Check Achievements"] = true
|
||||
L["Collected "] = true
|
||||
L["Collection completed."] = true
|
||||
L["Collection stopped, inventory is full."] = true
|
||||
L["Color based on reaction type."] = true
|
||||
L["Compact mode"] = true
|
||||
L["Companion Background"] = true
|
||||
L["Desaturate"] = true
|
||||
L["Detached Portrait"] = true
|
||||
L["Dressing Room"] = true
|
||||
L["Enhanced"] = true
|
||||
L["Equipment Info"] = true
|
||||
L["Error Frame"] = true
|
||||
L["Everywhere"] = true
|
||||
L["Fog of War"] = true
|
||||
L["Grow direction"] = true
|
||||
L["Guild"] = true
|
||||
L["Inside Minimap"] = true
|
||||
L["Key Press Animation"] = true
|
||||
L["Map"] = true
|
||||
L["Minimap Button Grabber"] = true
|
||||
L["NPC"] = true
|
||||
L["Overlay Color"] = true
|
||||
L["Reaction Color"] = true
|
||||
L["Reported by %s"] = true
|
||||
L["Rotation"] = true
|
||||
L["Separator"] = true
|
||||
L["Set the height of Error Frame. Higher frame can show more lines at once."] = true
|
||||
L["Set the width of Error Frame. Too narrow frame may cause messages to be split in several lines"] = true
|
||||
L["Show Everywhere"] = true
|
||||
L["Show on Arena."] = true
|
||||
L["Show on Battleground."] = true
|
||||
L["Smooth Animations"] = true
|
||||
L["Take All"] = true
|
||||
L["Take All Mail"] = true
|
||||
L["Take Cash"] = true
|
||||
L["This addon has been disabled. You should install an updated version."] = true
|
||||
L["Where to show"] = true
|
||||
L["seconds"] = true
|
||||
@@ -0,0 +1,237 @@
|
||||
local E = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local L = E.Libs.ACL:NewLocale("ElvUI", "frFR")
|
||||
|
||||
-- DESC locales
|
||||
L["ENH_LOGIN_MSG"] = "Vous utilisez |cff1784d1ElvUI|r |cff1784d1Enhanced|r |cffff8000(WotLK)|r version %s%s|r."
|
||||
L["DURABILITY_DESC"] = "Ajustez les réglages pour afficher la durabilité sur l'écran d'infos de personnage."
|
||||
L["ITEMLEVEL_DESC"] = "Réglez les paramètres pour afficher le niveau d'objet sur l'écran d'infos de personnage."
|
||||
L["WATCHFRAME_DESC"] = "Adjust the settings for the visibility of the watchframe (questlog) to your personal preference."
|
||||
|
||||
-- Incompatibility
|
||||
L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"] = true
|
||||
|
||||
-- AddOn List
|
||||
L["Enable All"] = true
|
||||
L["Dependencies: "] = true
|
||||
L["Disable All"] = true
|
||||
L["Load AddOn"] = true
|
||||
L["Requires Reload"] = true
|
||||
|
||||
-- Chat
|
||||
L["Filter DPS meters Spam"] = true
|
||||
L["Replaces reports from damage meters with a clickable hyperlink to reduce chat spam"] = true
|
||||
|
||||
-- Datatext
|
||||
L["Ammo/Shard Counter"] = true
|
||||
L["Combat Indicator"] = true
|
||||
L["Distance"] = true
|
||||
L["In Combat"] = true
|
||||
L["New Mail"] = true
|
||||
L["No Mail"] = true
|
||||
L["Out of Combat"] = true
|
||||
L["Reincarnation"] = true
|
||||
L["Target Range"] = true
|
||||
|
||||
-- Death Recap
|
||||
L["Death Recap Frame"] = true
|
||||
L["%s %s"] = true
|
||||
L["%s by %s"] = true
|
||||
L["%s sec before death at %s%% health."] = true
|
||||
L["(%d Absorbed)"] = true
|
||||
L["(%d Blocked)"] = true
|
||||
L["(%d Overkill)"] = true
|
||||
L["(%d Resisted)"] = true
|
||||
L["Death Recap unavailable."] = true
|
||||
L["Death Recap"] = "Récapitulatif lors de la mort"
|
||||
L["Killing blow at %s%% health."] = true
|
||||
L["You died."] = true
|
||||
|
||||
-- Decline Duels
|
||||
L["Auto decline all duels"] = true
|
||||
L["Decline Duel"] = true
|
||||
L["Declined duel request from "] = "Décliné les invites en duel de "
|
||||
|
||||
-- Enhanced Character Frame / Paperdoll Backgrounds
|
||||
L["Character Background"] = true
|
||||
L["Enhanced Character Frame"] = true
|
||||
L["Enhanced Model Frames"] = true
|
||||
L["Inspect Background"] = true
|
||||
L["Paperdoll Backgrounds"] = true
|
||||
L["Pet Background"] = true
|
||||
|
||||
-- Equipment
|
||||
L["Damaged Only"] = "Dégâts seulement"
|
||||
L["Enable/Disable the display of durability information on the character screen."] = "Activer / Désactiver l'affichage des informations de durabilité sur l'écran d'infos de personnage."
|
||||
L["Enable/Disable the display of item levels on the character screen."] = "Activer / Désactiver l'affichage des informations du niveau d'objet sur l'écran d'infos de personnage."
|
||||
L["Only show durabitlity information for items that are damaged."] = "Afficher la durabilité seulement quand l'équipement est endommagé."
|
||||
L["Quality Color"] = true
|
||||
|
||||
-- General
|
||||
L["Add button to Dressing Room frame with ability to undress model."] = true
|
||||
L["Add button to Trainer frame with ability to train all available skills in one click."] = true
|
||||
L["Alt-Click Merchant"] = true
|
||||
L["Already Known"] = true
|
||||
L["Animated Achievement Bars"] = true
|
||||
L["Automatically change your watched faction on the reputation bar to the faction you got reputation points for."] = "Change automatiquement la réputation suivie sur la barre de réputation avec la faction que vous êtes en train de faire."
|
||||
L["Automatically release body when killed inside a battleground."] = "Libère automatiquement votre corps quand vous êtes tué en Champs de Bataille."
|
||||
L["Automatically select the quest reward with the highest vendor sell value."] = "Sélectionne automatiquement la récompense de quête qui vaut la plus chère chez le vendeur."
|
||||
L["Changes the transparency of all the movers."] = "Change la transparence des Ancres"
|
||||
L["Change color of item icons which already known."] = true
|
||||
L["Display quest levels at Quest Log."] = true
|
||||
L["Hide Zone Text"] = true
|
||||
L["Holding Alt key while buying something from vendor will now buy an entire stack."] = true
|
||||
L["Mover Transparency"] = "Transparence des Ancres"
|
||||
L["PvP Autorelease"] = "Libération automatique en PVP"
|
||||
L["Select Quest Reward"] = "Sélection de la récompense de quête"
|
||||
L["Show Quest Level"] = true
|
||||
L["Track Reputation"] = "Suivre la Réputation"
|
||||
L["Train All Button"] = true
|
||||
L["Undress Button"] = true
|
||||
L["Undress"] = "Déshabillé"
|
||||
|
||||
-- HD Models Portrait Fix
|
||||
L["Debug"] = true
|
||||
L["List of models with broken portrait camera. Separete each model name with ';' simbol"] = true
|
||||
L["Models to fix"] = true
|
||||
L["Portrait HD Fix"] = true
|
||||
L["Print to chat model names of units with enabled 3D portraits."] = true
|
||||
|
||||
-- Interrupt Tracker
|
||||
L["Interrupt Tracker"] = true
|
||||
|
||||
-- Nameplates
|
||||
L["Cache Unit Class"] = true
|
||||
|
||||
-- Minimap
|
||||
L["Above Minimap"] = "Sous la minicarte"
|
||||
L["Combat Hide"] = true
|
||||
L["FadeIn Delay"] = "Délais d'estompage"
|
||||
L["Hide minimap while in combat."] = "Cacher la minicarte quand vous êtes en combat"
|
||||
L["Show Location Digits"] = true
|
||||
L["Toggle Location Digits."] = true
|
||||
L["Location Digits"] = "Chiffres d'emplacement"
|
||||
L["Location Panel"] = true
|
||||
L["Number of digits for map location."] = "Nombre de chiffres pour l'emplacement."
|
||||
L["The time to wait before fading the minimap back in after combat hide. (0 = Disabled)"] = "Le temps à attendre avant que la minicarte s'estompe avec que le combat ait commencé. (0 = désactié)"
|
||||
L["Toggle Location Panel."] = true
|
||||
|
||||
-- Timer Tracker
|
||||
L["Timer Tracker"] = true
|
||||
L["Hook DBM"] = true
|
||||
|
||||
-- Tooltip
|
||||
L["Check Player"] = true
|
||||
L["Check achievement completion instead of boss kill stats.\nSome servers log incorrect boss kill statistics, this is an alternative way to get player progress."] = true
|
||||
L["Colorize the tooltip border based on item quality."] = true
|
||||
L["Icecrown Citadel"] = true
|
||||
L["Item Border Color"] = true
|
||||
L["Progress Info"] = true
|
||||
L["Ruby Sanctum"] = true
|
||||
L["Show/Hides an Icon for Achievements on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Items on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells and Items on the Tooltip."] = true
|
||||
L["Tiers"] = true
|
||||
L["Tooltip Icon"] = true
|
||||
L["Trial of the Crusader"] = true
|
||||
L["Ulduar"] = true
|
||||
|
||||
-- Movers
|
||||
L["Loss Control"] = "Perte de contrôle"
|
||||
L["Player Portrait"] = true
|
||||
L["Target Portrait"] = true
|
||||
|
||||
-- Loss Control
|
||||
L["CC"] = "CC"
|
||||
L["Disarm"] = "Désarmement"
|
||||
L["Lose Control"] = true
|
||||
L["PvE"] = "PvE"
|
||||
L["Root"] = "Immobilisation"
|
||||
L["Silence"] = "Silence"
|
||||
L["Snare"] = "Ralentissement"
|
||||
|
||||
-- Unitframes
|
||||
L["Class Icons"] = true
|
||||
L["Detached Height"] = true
|
||||
L["Show class icon for units."] = true
|
||||
|
||||
-- WatchFrame
|
||||
L["Hidden"] = "Caché"
|
||||
L["Collapsed"] = "Replié"
|
||||
L["City (Resting)"] = "Ville (repos)"
|
||||
L["PvP"] = "PvP"
|
||||
L["Party"] = "Groupe"
|
||||
L["Raid"] = "Raid"
|
||||
|
||||
--
|
||||
L["Drag"] = true
|
||||
L["Left-click on character and drag to rotate."] = true
|
||||
L["Mouse Wheel Down"] = true
|
||||
L["Mouse Wheel Up"] = true
|
||||
L["Reset Position"] = "Réinitialiser la position"
|
||||
L["Right-click on character and drag to move it within the window."] = true
|
||||
L["Rotate Left"] = true
|
||||
L["Rotate Right"] = true
|
||||
L["Zoom In"] = true
|
||||
L["Zoom Out"] = true
|
||||
|
||||
--
|
||||
L["Character Stats"] = true
|
||||
L["Damage Per Second"] = "DPS"
|
||||
L["Equipment Manager"] = true
|
||||
L["Hide Character Information"] = true
|
||||
L["Hide Pet Information"] = true
|
||||
L["Item Level"] = "Niveau d'objet"
|
||||
L["New Set"] = true
|
||||
L["Resistance"] = true
|
||||
L["Show Character Information"] = true
|
||||
L["Show Pet Information"] = true
|
||||
L["Titles"] = true
|
||||
L["Total Companions"] = true
|
||||
L["Total Mounts"] = true
|
||||
|
||||
L["ALL"] = "Tous"
|
||||
L["ALT_KEY"] = "Touche ALT"
|
||||
|
||||
L["%d mails\nShift-Click to remove empty mails."] = true
|
||||
L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."] = true
|
||||
L["Cache Unit Guilds / NPC Titles"] = true
|
||||
L["Check Achievements"] = true
|
||||
L["Collected "] = true
|
||||
L["Collection completed."] = true
|
||||
L["Collection stopped, inventory is full."] = true
|
||||
L["Color based on reaction type."] = true
|
||||
L["Compact mode"] = true
|
||||
L["Companion Background"] = true
|
||||
L["Desaturate"] = true
|
||||
L["Detached Portrait"] = true
|
||||
L["Dressing Room"] = true
|
||||
L["Enhanced"] = true
|
||||
L["Equipment Info"] = true
|
||||
L["Error Frame"] = true
|
||||
L["Everywhere"] = true
|
||||
L["Fog of War"] = true
|
||||
L["Grow direction"] = true
|
||||
L["Guild"] = true
|
||||
L["Inside Minimap"] = true
|
||||
L["Key Press Animation"] = true
|
||||
L["Map"] = true
|
||||
L["Minimap Button Grabber"] = true
|
||||
L["NPC"] = true
|
||||
L["Overlay Color"] = true
|
||||
L["Reaction Color"] = true
|
||||
L["Reported by %s"] = true
|
||||
L["Rotation"] = true
|
||||
L["Separator"] = true
|
||||
L["Set the height of Error Frame. Higher frame can show more lines at once."] = true
|
||||
L["Set the width of Error Frame. Too narrow frame may cause messages to be split in several lines"] = true
|
||||
L["Show Everywhere"] = true
|
||||
L["Show on Arena."] = true
|
||||
L["Show on Battleground."] = true
|
||||
L["Smooth Animations"] = true
|
||||
L["Take All"] = true
|
||||
L["Take All Mail"] = true
|
||||
L["Take Cash"] = true
|
||||
L["This addon has been disabled. You should install an updated version."] = true
|
||||
L["Where to show"] = true
|
||||
L["seconds"] = true
|
||||
@@ -0,0 +1,237 @@
|
||||
local E = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local L = E.Libs.ACL:NewLocale("ElvUI", "koKR")
|
||||
|
||||
-- DESC locales
|
||||
L["ENH_LOGIN_MSG"] = "You are using |cff1784d1ElvUI Enhanced|r |cffff8000(WotLK)|r version %s%s|r."
|
||||
L["DURABILITY_DESC"] = "Adjust the settings for the durability information on the character screen."
|
||||
L["ITEMLEVEL_DESC"] = "Adjust the settings for the item level information on the character screen."
|
||||
L["WATCHFRAME_DESC"] = "Adjust the settings for the visibility of the watchframe (questlog) to your personal preference."
|
||||
|
||||
-- Incompatibility
|
||||
L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"] = true
|
||||
|
||||
-- AddOn List
|
||||
L["Enable All"] = true
|
||||
L["Dependencies: "] = true
|
||||
L["Disable All"] = true
|
||||
L["Load AddOn"] = true
|
||||
L["Requires Reload"] = true
|
||||
|
||||
-- Chat
|
||||
L["Filter DPS meters Spam"] = true
|
||||
L["Replaces reports from damage meters with a clickable hyperlink to reduce chat spam"] = true
|
||||
|
||||
-- Datatext
|
||||
L["Ammo/Shard Counter"] = true
|
||||
L["Combat Indicator"] = true
|
||||
L["Distance"] = true
|
||||
L["In Combat"] = true
|
||||
L["New Mail"] = true
|
||||
L["No Mail"] = true
|
||||
L["Out of Combat"] = true
|
||||
L["Reincarnation"] = true
|
||||
L["Target Range"] = true
|
||||
|
||||
-- Death Recap
|
||||
L["Death Recap Frame"] = true
|
||||
L["%s %s"] = true
|
||||
L["%s by %s"] = true
|
||||
L["%s sec before death at %s%% health."] = true
|
||||
L["(%d Absorbed)"] = true
|
||||
L["(%d Blocked)"] = true
|
||||
L["(%d Overkill)"] = true
|
||||
L["(%d Resisted)"] = true
|
||||
L["Death Recap unavailable."] = true
|
||||
L["Death Recap"] = true
|
||||
L["Killing blow at %s%% health."] = true
|
||||
L["You died."] = true
|
||||
|
||||
-- Decline Duels
|
||||
L["Auto decline all duels"] = true
|
||||
L["Decline Duel"] = true
|
||||
L["Declined duel request from "] = true
|
||||
|
||||
-- Enhanced Character Frame / Paperdoll Backgrounds
|
||||
L["Character Background"] = true
|
||||
L["Enhanced Character Frame"] = true
|
||||
L["Enhanced Model Frames"] = true
|
||||
L["Inspect Background"] = true
|
||||
L["Paperdoll Backgrounds"] = true
|
||||
L["Pet Background"] = true
|
||||
|
||||
-- Equipment
|
||||
L["Damaged Only"] = true
|
||||
L["Enable/Disable the display of durability information on the character screen."] = true
|
||||
L["Enable/Disable the display of item levels on the character screen."] = true
|
||||
L["Only show durabitlity information for items that are damaged."] = true
|
||||
L["Quality Color"] = true
|
||||
|
||||
-- General
|
||||
L["Add button to Dressing Room frame with ability to undress model."] = true
|
||||
L["Add button to Trainer frame with ability to train all available skills in one click."] = true
|
||||
L["Alt-Click Merchant"] = true
|
||||
L["Already Known"] = true
|
||||
L["Animated Achievement Bars"] = true
|
||||
L["Automatically change your watched faction on the reputation bar to the faction you got reputation points for."] = true
|
||||
L["Automatically release body when killed inside a battleground."] = true
|
||||
L["Automatically select the quest reward with the highest vendor sell value."] = true
|
||||
L["Change color of item icons which already known."] = true
|
||||
L["Changes the transparency of all the movers."] = true
|
||||
L["Display quest levels at Quest Log."] = true
|
||||
L["Hide Zone Text"] = true
|
||||
L["Holding Alt key while buying something from vendor will now buy an entire stack."] = true
|
||||
L["Mover Transparency"] = true
|
||||
L["PvP Autorelease"] = true
|
||||
L["Select Quest Reward"] = true
|
||||
L["Show Quest Level"] = true
|
||||
L["Track Reputation"] = true
|
||||
L["Train All Button"] = true
|
||||
L["Undress Button"] = true
|
||||
L["Undress"] = true
|
||||
|
||||
-- HD Models Portrait Fix
|
||||
L["Debug"] = true
|
||||
L["List of models with broken portrait camera. Separete each model name with ';' simbol"] = true
|
||||
L["Models to fix"] = true
|
||||
L["Portrait HD Fix"] = true
|
||||
L["Print to chat model names of units with enabled 3D portraits."] = true
|
||||
|
||||
-- Interrupt Tracker
|
||||
L["Interrupt Tracker"] = true
|
||||
|
||||
-- Nameplates
|
||||
L["Cache Unit Class"] = true
|
||||
|
||||
-- Minimap
|
||||
L["Above Minimap"] = true
|
||||
L["Combat Hide"] = true
|
||||
L["FadeIn Delay"] = true
|
||||
L["Hide minimap while in combat."] = true
|
||||
L["Show Location Digits"] = true
|
||||
L["Toggle Location Digits."] = true
|
||||
L["Location Digits"] = true
|
||||
L["Location Panel"] = true
|
||||
L["Number of digits for map location."] = true
|
||||
L["The time to wait before fading the minimap back in after combat hide. (0 = Disabled)"] = true
|
||||
L["Toggle Location Panel."] = true
|
||||
|
||||
-- Timer Tracker
|
||||
L["Timer Tracker"] = true
|
||||
L["Hook DBM"] = true
|
||||
|
||||
-- Tooltip
|
||||
L["Check Player"] = true
|
||||
L["Check achievement completion instead of boss kill stats.\nSome servers log incorrect boss kill statistics, this is an alternative way to get player progress."] = true
|
||||
L["Colorize the tooltip border based on item quality."] = true
|
||||
L["Icecrown Citadel"] = true
|
||||
L["Item Border Color"] = true
|
||||
L["Progress Info"] = true
|
||||
L["Ruby Sanctum"] = true
|
||||
L["Show/Hides an Icon for Achievements on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Items on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells and Items on the Tooltip."] = true
|
||||
L["Tiers"] = true
|
||||
L["Tooltip Icon"] = true
|
||||
L["Trial of the Crusader"] = true
|
||||
L["Ulduar"] = true
|
||||
|
||||
-- Movers
|
||||
L["Loss Control"] = "제어손실 표시"
|
||||
L["Player Portrait"] = true
|
||||
L["Target Portrait"] = true
|
||||
|
||||
-- Loss Control
|
||||
L["CC"] = "군중제어"
|
||||
L["Disarm"] = "무장 해제"
|
||||
L["Lose Control"] = true
|
||||
L["PvE"] = "PvE"
|
||||
L["Root"] = "뿌리묶기"
|
||||
L["Silence"] = "침묵"
|
||||
L["Snare"] = "덫"
|
||||
|
||||
-- Unitframes
|
||||
L["Class Icons"] = true
|
||||
L["Detached Height"] = true
|
||||
L["Show class icon for units."] = true
|
||||
|
||||
-- WatchFrame
|
||||
L["Hidden"] = true
|
||||
L["Collapsed"] = true
|
||||
L["City (Resting)"] = true
|
||||
L["PvP"] = true
|
||||
L["Party"] = true
|
||||
L["Raid"] = true
|
||||
|
||||
--
|
||||
L["Drag"] = true
|
||||
L["Left-click on character and drag to rotate."] = true
|
||||
L["Mouse Wheel Down"] = true
|
||||
L["Mouse Wheel Up"] = true
|
||||
L["Reset Position"] = "위치 초기화"
|
||||
L["Right-click on character and drag to move it within the window."] = true
|
||||
L["Rotate Left"] = true
|
||||
L["Rotate Right"] = true
|
||||
L["Zoom In"] = true
|
||||
L["Zoom Out"] = true
|
||||
|
||||
--
|
||||
L["Character Stats"] = true
|
||||
L["Damage Per Second"] = "DPS"
|
||||
L["Equipment Manager"] = true
|
||||
L["Hide Character Information"] = true
|
||||
L["Hide Pet Information"] = true
|
||||
L["Item Level"] = "아이템 레벨"
|
||||
L["New Set"] = true
|
||||
L["Resistance"] = true
|
||||
L["Show Character Information"] = true
|
||||
L["Show Pet Information"] = true
|
||||
L["Titles"] = true
|
||||
L["Total Companions"] = true
|
||||
L["Total Mounts"] = true
|
||||
|
||||
L["ALL"] = "전체"
|
||||
L["ALT_KEY"] = "ALT 키"
|
||||
|
||||
L["%d mails\nShift-Click to remove empty mails."] = true
|
||||
L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."] = true
|
||||
L["Cache Unit Guilds / NPC Titles"] = true
|
||||
L["Check Achievements"] = true
|
||||
L["Collected "] = true
|
||||
L["Collection completed."] = true
|
||||
L["Collection stopped, inventory is full."] = true
|
||||
L["Color based on reaction type."] = true
|
||||
L["Compact mode"] = true
|
||||
L["Companion Background"] = true
|
||||
L["Desaturate"] = true
|
||||
L["Detached Portrait"] = true
|
||||
L["Dressing Room"] = true
|
||||
L["Enhanced"] = true
|
||||
L["Equipment Info"] = true
|
||||
L["Error Frame"] = true
|
||||
L["Everywhere"] = true
|
||||
L["Fog of War"] = true
|
||||
L["Grow direction"] = true
|
||||
L["Guild"] = true
|
||||
L["Inside Minimap"] = true
|
||||
L["Key Press Animation"] = true
|
||||
L["Map"] = true
|
||||
L["Minimap Button Grabber"] = true
|
||||
L["NPC"] = true
|
||||
L["Overlay Color"] = true
|
||||
L["Reaction Color"] = true
|
||||
L["Reported by %s"] = true
|
||||
L["Rotation"] = true
|
||||
L["Separator"] = true
|
||||
L["Set the height of Error Frame. Higher frame can show more lines at once."] = true
|
||||
L["Set the width of Error Frame. Too narrow frame may cause messages to be split in several lines"] = true
|
||||
L["Show Everywhere"] = true
|
||||
L["Show on Arena."] = true
|
||||
L["Show on Battleground."] = true
|
||||
L["Smooth Animations"] = true
|
||||
L["Take All"] = true
|
||||
L["Take All Mail"] = true
|
||||
L["Take Cash"] = true
|
||||
L["This addon has been disabled. You should install an updated version."] = true
|
||||
L["Where to show"] = true
|
||||
L["seconds"] = true
|
||||
@@ -0,0 +1,237 @@
|
||||
local E = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local L = E.Libs.ACL:NewLocale("ElvUI", "ptBR")
|
||||
|
||||
-- DESC locales
|
||||
L["ENH_LOGIN_MSG"] = "Você está a usar |cff1784d1ElvUI|r |cff1784d1Enhanced|r |cffff8000(WotLK)|r versão %s%s|r."
|
||||
L["DURABILITY_DESC"] = "Ajuste as opções para a informação de durabilidade no ecrã de informação do personagem."
|
||||
L["ITEMLEVEL_DESC"] = "Adjust the settings for the item level information on the character screen."
|
||||
L["WATCHFRAME_DESC"] = "Adjust the settings for the visibility of the watchframe (questlog) to your personal preference."
|
||||
|
||||
-- Incompatibility
|
||||
L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"] = true
|
||||
|
||||
-- AddOn List
|
||||
L["Enable All"] = true
|
||||
L["Dependencies: "] = true
|
||||
L["Disable All"] = true
|
||||
L["Load AddOn"] = true
|
||||
L["Requires Reload"] = true
|
||||
|
||||
-- Chat
|
||||
L["Filter DPS meters Spam"] = true
|
||||
L["Replaces reports from damage meters with a clickable hyperlink to reduce chat spam"] = true
|
||||
|
||||
-- Datatext
|
||||
L["Ammo/Shard Counter"] = true
|
||||
L["Combat Indicator"] = true
|
||||
L["Distance"] = true
|
||||
L["In Combat"] = true
|
||||
L["New Mail"] = true
|
||||
L["No Mail"] = true
|
||||
L["Out of Combat"] = true
|
||||
L["Reincarnation"] = true
|
||||
L["Target Range"] = true
|
||||
|
||||
-- Death Recap
|
||||
L["Death Recap Frame"] = true
|
||||
L["%s %s"] = true
|
||||
L["%s by %s"] = true
|
||||
L["%s sec before death at %s%% health."] = true
|
||||
L["(%d Absorbed)"] = true
|
||||
L["(%d Blocked)"] = true
|
||||
L["(%d Overkill)"] = true
|
||||
L["(%d Resisted)"] = true
|
||||
L["Death Recap unavailable."] = true
|
||||
L["Death Recap"] = true
|
||||
L["Killing blow at %s%% health."] = true
|
||||
L["You died."] = true
|
||||
|
||||
-- Decline Duels
|
||||
L["Auto decline all duels"] = true
|
||||
L["Decline Duel"] = true
|
||||
L["Declined duel request from "] = true
|
||||
|
||||
-- Enhanced Character Frame / Paperdoll Backgrounds
|
||||
L["Character Background"] = true
|
||||
L["Enhanced Character Frame"] = true
|
||||
L["Enhanced Model Frames"] = true
|
||||
L["Inspect Background"] = true
|
||||
L["Paperdoll Backgrounds"] = true
|
||||
L["Pet Background"] = true
|
||||
|
||||
-- Equipment
|
||||
L["Damaged Only"] = "Só Danificados"
|
||||
L["Enable/Disable the display of durability information on the character screen."] = "Activar/desactivar a informação de durabilidade no ecrã de informação do personagem."
|
||||
L["Enable/Disable the display of item levels on the character screen."] = true
|
||||
L["Only show durabitlity information for items that are damaged."] = "Só mostrar informação de durabilidade para itens danificados."
|
||||
L["Quality Color"] = true
|
||||
|
||||
-- General
|
||||
L["Add button to Dressing Room frame with ability to undress model."] = true
|
||||
L["Add button to Trainer frame with ability to train all available skills in one click."] = true
|
||||
L["Alt-Click Merchant"] = true
|
||||
L["Already Known"] = true
|
||||
L["Animated Achievement Bars"] = true
|
||||
L["Automatically change your watched faction on the reputation bar to the faction you got reputation points for."] = "Mudar automaticamente a facção controlada para a facção na qual acabou de ganhar pontos de reputação."
|
||||
L["Automatically release body when killed inside a battleground."] = "Automaticamente libertar o corpo quando morto num campo de batalha."
|
||||
L["Automatically select the quest reward with the highest vendor sell value."] = true
|
||||
L["Change color of item icons which already known."] = true
|
||||
L["Changes the transparency of all the movers."] = true
|
||||
L["Display quest levels at Quest Log."] = true
|
||||
L["Hide Zone Text"] = true
|
||||
L["Holding Alt key while buying something from vendor will now buy an entire stack."] = true
|
||||
L["Mover Transparency"] = true
|
||||
L["PvP Autorelease"] = "Auto-libertar em JxJ"
|
||||
L["Select Quest Reward"] = true
|
||||
L["Show Quest Level"] = true
|
||||
L["Track Reputation"] = "Controlar Reputação"
|
||||
L["Train All Button"] = true
|
||||
L["Undress Button"] = true
|
||||
L["Undress"] = true
|
||||
|
||||
-- HD Models Portrait Fix
|
||||
L["Debug"] = true
|
||||
L["List of models with broken portrait camera. Separete each model name with ';' simbol"] = true
|
||||
L["Models to fix"] = true
|
||||
L["Portrait HD Fix"] = true
|
||||
L["Print to chat model names of units with enabled 3D portraits."] = true
|
||||
|
||||
-- Interrupt Tracker
|
||||
L["Interrupt Tracker"] = true
|
||||
|
||||
-- Nameplates
|
||||
L["Cache Unit Class"] = true
|
||||
|
||||
-- Minimap
|
||||
L["Above Minimap"] = true
|
||||
L["Combat Hide"] = true
|
||||
L["FadeIn Delay"] = true
|
||||
L["Hide minimap while in combat."] = true
|
||||
L["Show Location Digits"] = true
|
||||
L["Toggle Location Digits."] = true
|
||||
L["Location Digits"] = true
|
||||
L["Location Panel"] = true
|
||||
L["Number of digits for map location."] = true
|
||||
L["The time to wait before fading the minimap back in after combat hide. (0 = Disabled)"] = true
|
||||
L["Toggle Location Panel."] = true
|
||||
|
||||
-- Timer Tracker
|
||||
L["Timer Tracker"] = true
|
||||
L["Hook DBM"] = true
|
||||
|
||||
-- Tooltip
|
||||
L["Check Player"] = true
|
||||
L["Check achievement completion instead of boss kill stats.\nSome servers log incorrect boss kill statistics, this is an alternative way to get player progress."] = true
|
||||
L["Colorize the tooltip border based on item quality."] = true
|
||||
L["Icecrown Citadel"] = true
|
||||
L["Item Border Color"] = true
|
||||
L["Progress Info"] = true
|
||||
L["Ruby Sanctum"] = true
|
||||
L["Show/Hides an Icon for Achievements on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Items on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells and Items on the Tooltip."] = true
|
||||
L["Tiers"] = true
|
||||
L["Tooltip Icon"] = true
|
||||
L["Trial of the Crusader"] = true
|
||||
L["Ulduar"] = true
|
||||
|
||||
-- Movers
|
||||
L["Loss Control"] = "Perda de Controle"
|
||||
L["Player Portrait"] = true
|
||||
L["Target Portrait"] = true
|
||||
|
||||
-- Loss Control
|
||||
L["CC"] = true
|
||||
L["Disarm"] = true
|
||||
L["Lose Control"] = true
|
||||
L["PvE"] = true
|
||||
L["Root"] = true
|
||||
L["Silence"] = true
|
||||
L["Snare"] = true
|
||||
|
||||
-- Unitframes
|
||||
L["Class Icons"] = true
|
||||
L["Detached Height"] = true
|
||||
L["Show class icon for units."] = true
|
||||
|
||||
-- WatchFrame
|
||||
L["Hidden"] = true
|
||||
L["Collapsed"] = true
|
||||
L["City (Resting)"] = true
|
||||
L["PvP"] = true
|
||||
L["Party"] = true
|
||||
L["Raid"] = true
|
||||
|
||||
--
|
||||
L["Drag"] = true
|
||||
L["Left-click on character and drag to rotate."] = true
|
||||
L["Mouse Wheel Down"] = true
|
||||
L["Mouse Wheel Up"] = true
|
||||
L["Reset Position"] = "Redefinir Posição"
|
||||
L["Right-click on character and drag to move it within the window."] = true
|
||||
L["Rotate Left"] = true
|
||||
L["Rotate Right"] = true
|
||||
L["Zoom In"] = true
|
||||
L["Zoom Out"] = true
|
||||
|
||||
--
|
||||
L["Character Stats"] = true
|
||||
L["Damage Per Second"] = "DPS"
|
||||
L["Equipment Manager"] = true
|
||||
L["Hide Character Information"] = true
|
||||
L["Hide Pet Information"] = true
|
||||
L["Item Level"] = true
|
||||
L["New Set"] = true
|
||||
L["Resistance"] = true
|
||||
L["Show Character Information"] = true
|
||||
L["Show Pet Information"] = true
|
||||
L["Titles"] = true
|
||||
L["Total Companions"] = true
|
||||
L["Total Mounts"] = true
|
||||
|
||||
L["ALL"] = "Tudo"
|
||||
L["ALT_KEY"] = "Tecla ALT"
|
||||
|
||||
L["%d mails\nShift-Click to remove empty mails."] = true
|
||||
L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."] = true
|
||||
L["Cache Unit Guilds / NPC Titles"] = true
|
||||
L["Check Achievements"] = true
|
||||
L["Collected "] = true
|
||||
L["Collection completed."] = true
|
||||
L["Collection stopped, inventory is full."] = true
|
||||
L["Color based on reaction type."] = true
|
||||
L["Compact mode"] = true
|
||||
L["Companion Background"] = true
|
||||
L["Desaturate"] = true
|
||||
L["Detached Portrait"] = true
|
||||
L["Dressing Room"] = true
|
||||
L["Enhanced"] = true
|
||||
L["Equipment Info"] = true
|
||||
L["Error Frame"] = true
|
||||
L["Everywhere"] = true
|
||||
L["Fog of War"] = true
|
||||
L["Grow direction"] = true
|
||||
L["Guild"] = true
|
||||
L["Inside Minimap"] = true
|
||||
L["Key Press Animation"] = true
|
||||
L["Map"] = true
|
||||
L["Minimap Button Grabber"] = true
|
||||
L["NPC"] = true
|
||||
L["Overlay Color"] = true
|
||||
L["Reaction Color"] = true
|
||||
L["Reported by %s"] = true
|
||||
L["Rotation"] = true
|
||||
L["Separator"] = true
|
||||
L["Set the height of Error Frame. Higher frame can show more lines at once."] = true
|
||||
L["Set the width of Error Frame. Too narrow frame may cause messages to be split in several lines"] = true
|
||||
L["Show Everywhere"] = true
|
||||
L["Show on Arena."] = true
|
||||
L["Show on Battleground."] = true
|
||||
L["Smooth Animations"] = true
|
||||
L["Take All"] = true
|
||||
L["Take All Mail"] = true
|
||||
L["Take Cash"] = true
|
||||
L["This addon has been disabled. You should install an updated version."] = true
|
||||
L["Where to show"] = true
|
||||
L["seconds"] = true
|
||||
@@ -0,0 +1,237 @@
|
||||
local E = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local L = E.Libs.ACL:NewLocale("ElvUI", "ruRU")
|
||||
|
||||
-- DESC locales
|
||||
L["ENH_LOGIN_MSG"] = "Вы используете |cff1784d1ElvUI|r |cff1784d1Enhanced|r |cffff8000(WotLK)|r версии %s%s|r."
|
||||
L["DURABILITY_DESC"] = "Настройка параметров информации о прочности предметов в окне персонажа."
|
||||
L["ITEMLEVEL_DESC"] = "Настройка параметров информации об уровне предмета в окне персонажа."
|
||||
L["WATCHFRAME_DESC"] = "Настройте отображение списка заданий (квест лог) исходя из ваших личных предпочтений."
|
||||
|
||||
-- Incompatibility
|
||||
L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"] = "GearScore '3.1.20b - Release' не для WotLK. Загрузите 3.1.7. Отключить эту версию?"
|
||||
|
||||
-- AddOn List
|
||||
L["Enable All"] = true
|
||||
L["Dependencies: "] = true
|
||||
L["Disable All"] = true
|
||||
L["Load AddOn"] = true
|
||||
L["Requires Reload"] = true
|
||||
|
||||
-- Chat
|
||||
L["Filter DPS meters Spam"] = true
|
||||
L["Replaces reports from damage meters with a clickable hyperlink to reduce chat spam"] = true
|
||||
|
||||
-- Datatext
|
||||
L["Ammo/Shard Counter"] = true
|
||||
L["Combat Indicator"] = true
|
||||
L["Distance"] = true
|
||||
L["In Combat"] = true
|
||||
L["New Mail"] = "Новое письмо"
|
||||
L["No Mail"] = "Нет писем"
|
||||
L["Out of Combat"] = true
|
||||
L["Reincarnation"] = true
|
||||
L["Target Range"] = true
|
||||
|
||||
-- Death Recap
|
||||
L["Death Recap Frame"] = true
|
||||
L["%s %s"] = "Урон: %s %s"
|
||||
L["%s by %s"] = "%s - %s"
|
||||
L["%s sec before death at %s%% health."] = "%s сек. до смерти при объеме здоровья %s%%"
|
||||
L["(%d Absorbed)"] = "Поглощено: %d ед. урона."
|
||||
L["(%d Blocked)"] = "Заблокировано: %d уд. урона."
|
||||
L["(%d Overkill)"] = "Избыточный урон: %d ед."
|
||||
L["(%d Resisted)"] = "Сопротивление %d еденицам урона."
|
||||
L["Death Recap unavailable."] = "Информация о смерти не доступна."
|
||||
L["Death Recap"] = "Информация о смерти"
|
||||
L["Killing blow at %s%% health."] = "Объем здоровья при получении смертельного удара: %s%%"
|
||||
L["You died."] = "Вы умерли."
|
||||
|
||||
-- Decline Duels
|
||||
L["Auto decline all duels"] = "Автоматически отклонять все дуэли."
|
||||
L["Decline Duel"] = true
|
||||
L["Declined duel request from "] = "DДуэль отклонена от "
|
||||
|
||||
-- Enhanced Character Frame / Paperdoll Backgrounds
|
||||
L["Character Background"] = true
|
||||
L["Enhanced Character Frame"] = true
|
||||
L["Enhanced Model Frames"] = true
|
||||
L["Inspect Background"] = true
|
||||
L["Paperdoll Backgrounds"] = true
|
||||
L["Pet Background"] = true
|
||||
|
||||
-- Equipment
|
||||
L["Damaged Only"] = "Только поврежденные"
|
||||
L["Enable/Disable the display of durability information on the character screen."] = "Включить/Выключить отображение информации о прочности предметов в окне персонажа."
|
||||
L["Enable/Disable the display of item levels on the character screen."] = "Включить/Выключить отображение уровня предмета в окне персонажа."
|
||||
L["Only show durabitlity information for items that are damaged."] = "Показывать уровень прочности только на поврежденных предметах."
|
||||
L["Quality Color"] = true
|
||||
|
||||
-- General
|
||||
L["Add button to Dressing Room frame with ability to undress model."] = true
|
||||
L["Add button to Trainer frame with ability to train all available skills in one click."] = true
|
||||
L["Alt-Click Merchant"] = true
|
||||
L["Already Known"] = true
|
||||
L["Animated Achievement Bars"] = true
|
||||
L["Automatically change your watched faction on the reputation bar to the faction you got reputation points for."] = "Автоматическое изменение фракции на панели репутации на ту, очки репутации которой вы получили."
|
||||
L["Automatically release body when killed inside a battleground."] = "Автоматически покидать тело после смерти на полях боя."
|
||||
L["Automatically select the quest reward with the highest vendor sell value."] = true
|
||||
L["Change color of item icons which already known."] = true
|
||||
L["Changes the transparency of all the movers."] = "Изменяет прозрачность фиксаторов"
|
||||
L["Display quest levels at Quest Log."] = true
|
||||
L["Hide Zone Text"] = true
|
||||
L["Holding Alt key while buying something from vendor will now buy an entire stack."] = true
|
||||
L["Mover Transparency"] = "Прозрачность фиксаторов"
|
||||
L["PvP Autorelease"] = "Автовыход из тела"
|
||||
L["Select Quest Reward"] = true
|
||||
L["Show Quest Level"] = true
|
||||
L["Track Reputation"] = "Отслеживание репутации"
|
||||
L["Train All Button"] = true
|
||||
L["Undress Button"] = true
|
||||
L["Undress"] = "Раздеть"
|
||||
|
||||
-- HD Models Portrait Fix
|
||||
L["Debug"] = true
|
||||
L["List of models with broken portrait camera. Separete each model name with ';' simbol"] = true
|
||||
L["Models to fix"] = true
|
||||
L["Portrait HD Fix"] = true
|
||||
L["Print to chat model names of units with enabled 3D portraits."] = true
|
||||
|
||||
-- Interrupt Tracker
|
||||
L["Interrupt Tracker"] = true
|
||||
|
||||
-- Nameplates
|
||||
L["Cache Unit Class"] = true
|
||||
|
||||
-- Minimap
|
||||
L["Above Minimap"] = "Над миникартой"
|
||||
L["Combat Hide"] = true
|
||||
L["FadeIn Delay"] = "Задержка появления"
|
||||
L["Hide minimap while in combat."] = "Скрывать миникарту во время боя."
|
||||
L["Show Location Digits"] = true
|
||||
L["Toggle Location Digits."] = true
|
||||
L["Location Digits"] = "Цифры координат"
|
||||
L["Location Panel"] = true
|
||||
L["Number of digits for map location."] = "Колличество цифр после запятой в координатах."
|
||||
L["The time to wait before fading the minimap back in after combat hide. (0 = Disabled)"] = "Время ожидания появления миникарты после выхода из боя. (0 = Выключено)"
|
||||
L["Toggle Location Panel."] = true
|
||||
|
||||
-- Timer Tracker
|
||||
L["Timer Tracker"] = true
|
||||
L["Hook DBM"] = true
|
||||
|
||||
-- Tooltip
|
||||
L["Check Player"] = true
|
||||
L["Check achievement completion instead of boss kill stats.\nSome servers log incorrect boss kill statistics, this is an alternative way to get player progress."] = true
|
||||
L["Colorize the tooltip border based on item quality."] = "Окрашивать бордюр тултипа в цвет качества предмета"
|
||||
L["Icecrown Citadel"] = true
|
||||
L["Item Border Color"] = "Цвет рамки предметов"
|
||||
L["Progress Info"] = "Прогресс"
|
||||
L["Ruby Sanctum"] = true
|
||||
L["Show/Hides an Icon for Achievements on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Items on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells and Items on the Tooltip."] = true
|
||||
L["Tiers"] = true
|
||||
L["Tooltip Icon"] = true
|
||||
L["Trial of the Crusader"] = true
|
||||
L["Ulduar"] = true
|
||||
|
||||
-- Movers
|
||||
L["Loss Control"] = "Потери контроля"
|
||||
L["Player Portrait"] = "Портрет игрока"
|
||||
L["Target Portrait"] = "Портрет цели"
|
||||
|
||||
-- Loss Control
|
||||
L["CC"] = "Потеря контроля"
|
||||
L["Disarm"] = "Разоружение"
|
||||
L["Lose Control"] = "Иконка потери контроля"
|
||||
L["PvE"] = "Рейдовые"
|
||||
L["Root"] = "Удержание на месте"
|
||||
L["Silence"] = "Молчание"
|
||||
L["Snare"] = "Замедление"
|
||||
|
||||
-- Unitframes
|
||||
L["Class Icons"] = true
|
||||
L["Detached Height"] = "Высота при откреплении"
|
||||
L["Show class icon for units."] = "Показывать иконку класса на цели."
|
||||
|
||||
-- WatchFrame
|
||||
L["City (Resting)"] = "Город (отдых)"
|
||||
L["Collapsed"] = "Развернуть"
|
||||
L["Hidden"] = "Скрыть"
|
||||
L["Party"] = "Группа"
|
||||
L["PvP"] = "PvP"
|
||||
L["Raid"] = "Рейд"
|
||||
|
||||
--
|
||||
L["Drag"] = "Перетащить"
|
||||
L["Left-click on character and drag to rotate."] = "Зажмите левую кнопку мыши и тащите курсор, чтобы вращать изображение."
|
||||
L["Mouse Wheel Down"] = "Прокрутка вниз"
|
||||
L["Mouse Wheel Up"] = "Прокрутка вверх"
|
||||
L["Reset Position"] = "Сбросить позицию"
|
||||
L["Right-click on character and drag to move it within the window."] = "Зажмите правую кнопку мыши и тащите курсор, чтобы переместить персонажа."
|
||||
L["Rotate Left"] = "Вращение влево"
|
||||
L["Rotate Right"] = "Вращение вправо"
|
||||
L["Zoom In"] = "Приблизить"
|
||||
L["Zoom Out"] = "Отдалить"
|
||||
|
||||
--
|
||||
L["Character Stats"] = "Характеристики"
|
||||
L["Damage Per Second"] = "Урон в секунду"
|
||||
L["Equipment Manager"] = "Комплекты экипировки"
|
||||
L["Hide Character Information"] = "Скрыть информацию о персонаже"
|
||||
L["Hide Pet Information"] = "Скрыть информацию о питомце"
|
||||
L["Item Level"] = "Уровень предметов"
|
||||
L["New Set"] = "Новый комплект"
|
||||
L["Resistance"] = "Cопротивление"
|
||||
L["Show Character Information"] = "Показать информацию о персонаже"
|
||||
L["Show Pet Information"] = "Показать информацию о питомце"
|
||||
L["Titles"] = "Звания"
|
||||
L["Total Companions"] = "Всего питомцев"
|
||||
L["Total Mounts"] = "Всего"
|
||||
|
||||
L["ALL"] = "Все"
|
||||
L["ALT_KEY"] = "ALT"
|
||||
|
||||
L["%d mails\nShift-Click to remove empty mails."] = true
|
||||
L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."] = true
|
||||
L["Cache Unit Guilds / NPC Titles"] = true
|
||||
L["Check Achievements"] = true
|
||||
L["Collected "] = true
|
||||
L["Collection completed."] = true
|
||||
L["Collection stopped, inventory is full."] = true
|
||||
L["Color based on reaction type."] = true
|
||||
L["Compact mode"] = true
|
||||
L["Companion Background"] = true
|
||||
L["Desaturate"] = true
|
||||
L["Detached Portrait"] = true
|
||||
L["Dressing Room"] = true
|
||||
L["Enhanced"] = true
|
||||
L["Equipment Info"] = true
|
||||
L["Error Frame"] = true
|
||||
L["Everywhere"] = true
|
||||
L["Fog of War"] = true
|
||||
L["Grow direction"] = true
|
||||
L["Guild"] = true
|
||||
L["Inside Minimap"] = true
|
||||
L["Key Press Animation"] = true
|
||||
L["Map"] = true
|
||||
L["Minimap Button Grabber"] = true
|
||||
L["NPC"] = "НИП"
|
||||
L["Overlay Color"] = true
|
||||
L["Reaction Color"] = true
|
||||
L["Reported by %s"] = true
|
||||
L["Rotation"] = true
|
||||
L["Separator"] = true
|
||||
L["Set the height of Error Frame. Higher frame can show more lines at once."] = true
|
||||
L["Set the width of Error Frame. Too narrow frame may cause messages to be split in several lines"] = true
|
||||
L["Show Everywhere"] = true
|
||||
L["Show on Arena."] = true
|
||||
L["Show on Battleground."] = true
|
||||
L["Smooth Animations"] = true
|
||||
L["Take All"] = true
|
||||
L["Take All Mail"] = true
|
||||
L["Take Cash"] = true
|
||||
L["This addon has been disabled. You should install an updated version."] = true
|
||||
L["Where to show"] = true
|
||||
L["seconds"] = true
|
||||
@@ -0,0 +1,237 @@
|
||||
local E = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local L = E.Libs.ACL:NewLocale("ElvUI", "zhCN")
|
||||
|
||||
-- DESC locales
|
||||
L["ENH_LOGIN_MSG"] = "你正在使用 |cff1784d1ElvUI|r |cff1784d1Enhanced|r |cffff8000(WotLK)|r version %s%s|r。"
|
||||
L["DURABILITY_DESC"] = "调整角色界面中装备耐久度信息的设置。"
|
||||
L["ITEMLEVEL_DESC"] = "调整角色界面中物品等级信息的设置。"
|
||||
L["WATCHFRAME_DESC"] = "根据个人喜好调整任务追踪框架的设置。"
|
||||
L["Enhanced"] = "功能增强"
|
||||
|
||||
-- Incompatibility
|
||||
L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"] = "GearScore '3.1.20b - Release'并非是为WotLK设计的,请下载版本3.1.7。要禁用此插件吗?"
|
||||
|
||||
-- AddOn List
|
||||
L["Enable All"] = "全部启用"
|
||||
L["Dependencies: "] = "依赖性:"
|
||||
L["Disable All"] = "全部禁用"
|
||||
L["Load AddOn"] = "加载插件"
|
||||
L["Requires Reload"] = "需要重载"
|
||||
|
||||
-- Chat
|
||||
L["Filter DPS meters Spam"] = "过滤DPS统计的垃圾讯息"
|
||||
L["Replaces reports from damage meters with a clickable hyperlink to reduce chat spam"] = "用可点击的超链接替换DPS统计的长篇报告,以减少聊天中的垃圾讯息。"
|
||||
|
||||
-- Datatext
|
||||
L["Ammo/Shard Counter"] = "弹药/碎片 计数"
|
||||
L["Combat Indicator"] = "战斗指示"
|
||||
L["Distance"] = "距离"
|
||||
L["In Combat"] = "战斗中"
|
||||
L["New Mail"] = "新邮件"
|
||||
L["No Mail"] = "无邮件"
|
||||
L["Out of Combat"] = "脱离战斗"
|
||||
L["Reincarnation"] = "灵魂状态"
|
||||
L["Target Range"] = "目标距离"
|
||||
|
||||
-- Death Recap
|
||||
L["Death Recap Frame"] = "死亡回顾框架"
|
||||
L["%s %s"] = true
|
||||
L["%s by %s"] = "%s 来自于 %s"
|
||||
L["%s sec before death at %s%% health."] = "死亡前 %s 秒,血量 %s%% 。"
|
||||
L["(%d Absorbed)"] = "(%d 吸收)"
|
||||
L["(%d Blocked)"] = "(%d 格挡)"
|
||||
L["(%d Overkill)"] = "(%d 过量伤害)"
|
||||
L["(%d Resisted)"] = "(%d 抵抗)"
|
||||
L["Death Recap unavailable."] = "死因回顾不可用"
|
||||
L["Death Recap"] = "死因回顾"
|
||||
L["Killing blow at %s%% health."] = "血量 %s%% 时被一击致命。"
|
||||
L["You died."] = "你死了。"
|
||||
|
||||
-- Decline Duels
|
||||
L["Auto decline all duels"] = "自动拒绝决斗请求"
|
||||
L["Decline Duel"] = "拒绝决斗"
|
||||
L["Declined duel request from "] = "已拒绝决斗请求,发起者"
|
||||
|
||||
-- Enhanced Character Frame / Paperdoll Backgrounds
|
||||
L["Character Background"] = "角色界面背景"
|
||||
L["Companion Background"] = "小伙伴界面背景"
|
||||
L["Dressing Room"] = "试衣间"
|
||||
L["Enhanced Character Frame"] = "增强角色界面框架"
|
||||
L["Enhanced Model Frames"] = "增强模型框架"
|
||||
L["Error Frame"] = "错误信息框架"
|
||||
L["Inspect Background"] = "观察界面背景"
|
||||
L["Paperdoll Backgrounds"] = "纸娃娃系统背景"
|
||||
L["Pet Background"] = "宠物界面背景"
|
||||
L["Smooth Animations"] = "平滑动画"
|
||||
|
||||
-- Equipment
|
||||
L["Damaged Only"] = "仅显示受损"
|
||||
L["Enable/Disable the display of durability information on the character screen."] = "开启/关闭 角色界面装备耐久度显示。"
|
||||
L["Enable/Disable the display of item levels on the character screen."] = "开启/关闭 角色界面物品等级显示。"
|
||||
L["Only show durabitlity information for items that are damaged."] = "只在装备受损时显示耐久度信息。"
|
||||
L["Quality Color"] = "品质颜色"
|
||||
|
||||
-- General
|
||||
L["Add button to Dressing Room frame with ability to undress model."] = "在试衣间界面添加<裸体>按钮。"
|
||||
L["Add button to Trainer frame with ability to train all available skills in one click."] = "在训练师界面添加<学习全部>按钮,以便一键学习所有可用技能。"
|
||||
L["Alt-Click Merchant"] = "Alt-点击快速购买"
|
||||
L["Already Known"] = "已经学会"
|
||||
L["Animated Achievement Bars"] = "动成就画条"
|
||||
L["Automatically change your watched faction on the reputation bar to the faction you got reputation points for."] = "当你获得某个阵营的声望时,自动用声望条追踪此阵营的声望。"
|
||||
L["Automatically release body when killed inside a battleground."] = "在战场中死亡后自动释放灵魂。"
|
||||
L["Automatically select the quest reward with the highest vendor sell value."] = "自动选择任务奖励中售价最高的物品。"
|
||||
L["Change color of item icons which already known."] = "改变已经学会的物品图标颜色。"
|
||||
L["Changes the transparency of all the movers."] = "改变所有移动框架的透明度。"
|
||||
L["Display quest levels at Quest Log."] = "在任务日志中显示任务等级。"
|
||||
L["Hide Zone Text"] = "隐藏区域文字"
|
||||
L["Holding Alt key while buying something from vendor will now buy an entire stack."] = "按下Alt键可在商人处购买整组物品。"
|
||||
L["Mover Transparency"] = "移动框架透明度"
|
||||
L["PvP Autorelease"] = "PVP自动释放灵魂"
|
||||
L["Select Quest Reward"] = "选择任务奖励"
|
||||
L["Show Quest Level"] = "显示任务等级"
|
||||
L["Track Reputation"] = "声望追踪"
|
||||
L["Train All Button"] = "学习全部按钮"
|
||||
L["Undress Button"] = "裸体按钮"
|
||||
L["Undress"] = "裸体"
|
||||
|
||||
-- HD Models Portrait Fix
|
||||
L["Debug"] = true
|
||||
L["List of models with broken portrait camera. Separete each model name with ';' simbol"] = "头像镜头破损的模型列表。每个模型名称之间使用 ';' 符号分隔。"
|
||||
L["Models to fix"] = "待修复的模型"
|
||||
L["Portrait HD Fix"] = "高清头像修复"
|
||||
L["Print to chat model names of units with enabled 3D portraits."] = "将可用3D头像的单位模型名称发布到聊天框中。"
|
||||
|
||||
-- Interrupt Tracker
|
||||
L["Interrupt Tracker"] = "打断追踪"
|
||||
L["Everywhere"] = "任何区域"
|
||||
L["Where to show"] = "何处显示"
|
||||
|
||||
-- Nameplates
|
||||
L["Cache Unit Class"] = "缓存单位职业"
|
||||
L["Cache Unit Guilds / NPC Titles"] = "缓存单位公会/NPC头衔"
|
||||
L["Guild"] = "公会"
|
||||
|
||||
-- Minimap
|
||||
L["Above Minimap"] = "小地图之上"
|
||||
L["Combat Hide"] = "战斗隐藏"
|
||||
L["FadeIn Delay"] = "淡入延迟"
|
||||
L["Hide minimap while in combat."] = "战斗中隐藏小地图。"
|
||||
L["Show Location Digits"] = "显示坐标"
|
||||
L["Toggle Location Digits."] = "开关坐标"
|
||||
L["Location Digits"] = "坐标"
|
||||
L["Location Panel"] = "位置面板"
|
||||
L["Number of digits for map location."] = "地图位置的数字坐标。"
|
||||
L["The time to wait before fading the minimap back in after combat hide. (0 = Disabled)"] = "脱离战斗后小地图淡入的等待时间。(0 = 禁用)"
|
||||
L["Toggle Location Panel."] = "开关位置面板。"
|
||||
|
||||
-- Timer Tracker
|
||||
L["Timer Tracker"] = "计时器"
|
||||
L["Hook DBM"] = "连接DBM"
|
||||
|
||||
-- Tooltip
|
||||
L["Check Player"] = "检查玩家"
|
||||
L["Check achievement completion instead of boss kill stats.\nSome servers log incorrect boss kill statistics, this is an alternative way to get player progress."] = true
|
||||
L["Colorize the tooltip border based on item quality."] = "以物品品质着色鼠标提示边框。"
|
||||
L["Icecrown Citadel"] = "冰冠堡垒"
|
||||
L["Item Border Color"] = "物品边框颜色"
|
||||
L["Progress Info"] = "进度信息"
|
||||
L["Ruby Sanctum"] = "红玉圣殿"
|
||||
L["Show/Hides an Icon for Achievements on the Tooltip."] = "在鼠标提示中显示成就图标。"
|
||||
L["Show/Hides an Icon for Items on the Tooltip."] = "在鼠标提示中显示物品图标。"
|
||||
L["Show/Hides an Icon for Spells on the Tooltip."] = "在鼠标提示中显示技能图标。"
|
||||
L["Show/Hides an Icon for Spells and Items on the Tooltip."] = "在鼠标提示中显示技能和物品图标。"
|
||||
L["Tiers"] = "阶段"
|
||||
L["Tooltip Icon"] = "鼠标提示图标"
|
||||
L["Trial of the Crusader"] = "十字军的试炼"
|
||||
L["Ulduar"] = "奥杜尔"
|
||||
|
||||
-- Movers
|
||||
L["Loss Control"] = "失控图标"
|
||||
L["Player Portrait"] = "玩家头像"
|
||||
L["Target Portrait"] = "目标头像"
|
||||
|
||||
-- Lose Control
|
||||
L["CC"] = "控制类技能"
|
||||
L["Disarm"] = "缴械类技能"
|
||||
L["Lose Control"] = "失控"
|
||||
L["PvE"] = "PvE"
|
||||
L["Root"] = "定身类技能"
|
||||
L["Silence"] = "沉默类技能"
|
||||
L["Snare"] = "减速类技能"
|
||||
|
||||
-- Unitframes
|
||||
L["Class Icons"] = "职业图标"
|
||||
L["Detached Height"] = "分离后的高度"
|
||||
L["Show class icon for units."] = "显示单位的职业图标。"
|
||||
|
||||
-- WatchFrame
|
||||
L["Hidden"] = "隐藏"
|
||||
L["Collapsed"] = "折叠"
|
||||
L["City (Resting)"] = "城市 (休息)"
|
||||
L["PvP"] = true
|
||||
L["Party"] = "小队"
|
||||
L["Raid"] = "团队"
|
||||
|
||||
--
|
||||
L["Drag"] = "拖动"
|
||||
L["Left-click on character and drag to rotate."] = "左键点击角色并拖动可以旋转模型。"
|
||||
L["Mouse Wheel Down"] = "鼠标滚轮向下"
|
||||
L["Mouse Wheel Up"] = "鼠标滚轮向上"
|
||||
L["Reset Position"] = "重置位置"
|
||||
L["Right-click on character and drag to move it within the window."] = "右键点击角色并拖动可以在窗口内移动模型。"
|
||||
L["Rotate Left"] = "向左旋转"
|
||||
L["Rotate Right"] = "向右旋转"
|
||||
L["Zoom In"] = "放大"
|
||||
L["Zoom Out"] = "缩小"
|
||||
|
||||
--
|
||||
L["Character Stats"] = "角色属性"
|
||||
L["Damage Per Second"] = "DPS"
|
||||
L["Equipment Manager"] = "装备管理"
|
||||
L["Hide Character Information"] = "隐藏角色信息"
|
||||
L["Hide Pet Information"] = "隐藏宠物信息"
|
||||
L["Item Level"] = "物品等级"
|
||||
L["New Set"] = "新套装"
|
||||
L["Resistance"] = "抗性"
|
||||
L["Show Character Information"] = "显示角色信息"
|
||||
L["Show Pet Information"] = "显示宠物信息"
|
||||
L["Titles"] = "头衔"
|
||||
L["Total Companions"] = "所有小伙伴"
|
||||
L["Total Mounts"] = "所有坐骑"
|
||||
|
||||
L["ALL"] = "全部"
|
||||
L["ALT_KEY"] = "ALT键"
|
||||
|
||||
L["%d mails\nShift-Click to remove empty mails."] = true
|
||||
L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."] = true
|
||||
L["Check Achievements"] = true
|
||||
L["Collected "] = true
|
||||
L["Collection completed."] = true
|
||||
L["Collection stopped, inventory is full."] = true
|
||||
L["Color based on reaction type."] = true
|
||||
L["Compact mode"] = true
|
||||
L["Desaturate"] = true
|
||||
L["Detached Portrait"] = true
|
||||
L["Equipment Info"] = true
|
||||
L["Fog of War"] = true
|
||||
L["Grow direction"] = true
|
||||
L["Inside Minimap"] = true
|
||||
L["Key Press Animation"] = true
|
||||
L["Map"] = true
|
||||
L["Minimap Button Grabber"] = true
|
||||
L["NPC"] = true
|
||||
L["Overlay Color"] = true
|
||||
L["Reaction Color"] = true
|
||||
L["Reported by %s"] = true
|
||||
L["Rotation"] = true
|
||||
L["Separator"] = true
|
||||
L["Set the height of Error Frame. Higher frame can show more lines at once."] = true
|
||||
L["Set the width of Error Frame. Too narrow frame may cause messages to be split in several lines"] = true
|
||||
L["Show Everywhere"] = true
|
||||
L["Show on Arena."] = true
|
||||
L["Show on Battleground."] = true
|
||||
L["Take All"] = true
|
||||
L["Take All Mail"] = true
|
||||
L["Take Cash"] = true
|
||||
L["This addon has been disabled. You should install an updated version."] = true
|
||||
L["seconds"] = true
|
||||
@@ -0,0 +1,237 @@
|
||||
local E = unpack(ElvUI); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local L = E.Libs.ACL:NewLocale("ElvUI", "zhTW")
|
||||
|
||||
-- DESC locales
|
||||
L["ENH_LOGIN_MSG"] = "您正在使用 |cff1784d1ElvUI|r |cff1784d1Enhanced|r |cffff8000(WotLK)|r version %s%s|r."
|
||||
L["DURABILITY_DESC"] = "調整設置人物窗口裝備耐久度顯示."
|
||||
L["ITEMLEVEL_DESC"] = "調整在角色資訊上顯示物品裝等的各種設定."
|
||||
L["WATCHFRAME_DESC"] = "Adjust the settings for the visibility of the watchframe (questlog) to your personal preference."
|
||||
|
||||
-- Incompatibility
|
||||
L["GearScore '3.1.20b - Release' is not for WotLK. Download 3.1.7. Disable this version?"] = true
|
||||
|
||||
-- AddOn List
|
||||
L["Enable All"] = true
|
||||
L["Dependencies: "] = true
|
||||
L["Disable All"] = true
|
||||
L["Load AddOn"] = true
|
||||
L["Requires Reload"] = true
|
||||
|
||||
-- Chat
|
||||
L["Filter DPS meters Spam"] = true
|
||||
L["Replaces reports from damage meters with a clickable hyperlink to reduce chat spam"] = true
|
||||
|
||||
-- Datatext
|
||||
L["Ammo/Shard Counter"] = true
|
||||
L["Combat Indicator"] = true
|
||||
L["Distance"] = true
|
||||
L["In Combat"] = true
|
||||
L["New Mail"] = true
|
||||
L["No Mail"] = true
|
||||
L["Out of Combat"] = true
|
||||
L["Reincarnation"] = true
|
||||
L["Target Range"] = true
|
||||
|
||||
-- Death Recap
|
||||
L["Death Recap Frame"] = true
|
||||
L["%s %s"] = true
|
||||
L["%s by %s"] = true
|
||||
L["%s sec before death at %s%% health."] = true
|
||||
L["(%d Absorbed)"] = true
|
||||
L["(%d Blocked)"] = true
|
||||
L["(%d Overkill)"] = true
|
||||
L["(%d Resisted)"] = true
|
||||
L["Death Recap unavailable."] = true
|
||||
L["Death Recap"] = true
|
||||
L["Killing blow at %s%% health."] = true
|
||||
L["You died."] = true
|
||||
|
||||
-- Decline Duels
|
||||
L["Auto decline all duels"] = "自動拒絕決鬥請求"
|
||||
L["Decline Duel"] = true
|
||||
L["Declined duel request from "] = "已拒絕決鬥請求自"
|
||||
|
||||
-- Enhanced Character Frame / Paperdoll Backgrounds
|
||||
L["Character Background"] = true
|
||||
L["Enhanced Character Frame"] = true
|
||||
L["Enhanced Model Frames"] = true
|
||||
L["Inspect Background"] = true
|
||||
L["Paperdoll Backgrounds"] = true
|
||||
L["Pet Background"] = true
|
||||
|
||||
-- Equipment
|
||||
L["Damaged Only"] = "受損顯示"
|
||||
L["Enable/Disable the display of durability information on the character screen."] = "開啓/關閉 人物窗口裝備耐久度顯示."
|
||||
L["Enable/Disable the display of item levels on the character screen."] = "在角色資訊上顯示各裝備裝等"
|
||||
L["Only show durabitlity information for items that are damaged."] = "只在裝備受損時顯示耐久度."
|
||||
L["Quality Color"] = true
|
||||
|
||||
-- General
|
||||
L["Add button to Dressing Room frame with ability to undress model."] = true
|
||||
L["Add button to Trainer frame with ability to train all available skills in one click."] = true
|
||||
L["Alt-Click Merchant"] = true
|
||||
L["Already Known"] = true
|
||||
L["Animated Achievement Bars"] = true
|
||||
L["Automatically change your watched faction on the reputation bar to the faction you got reputation points for."] = "當你獲得某個陣營的聲望時, 將自動追蹤此陣營的聲望至經驗值欄位."
|
||||
L["Automatically release body when killed inside a battleground."] = "在戰場死亡後自動釋放靈魂."
|
||||
L["Automatically select the quest reward with the highest vendor sell value."] = "自動選取有最高賣價的任務獎勵物品"
|
||||
L["Change color of item icons which already known."] = true
|
||||
L["Changes the transparency of all the movers."] = "改變所有定位器的透明度"
|
||||
L["Display quest levels at Quest Log."] = true
|
||||
L["Hide Zone Text"] = true
|
||||
L["Holding Alt key while buying something from vendor will now buy an entire stack."] = true
|
||||
L["Mover Transparency"] = "定位器透明度"
|
||||
L["PvP Autorelease"] = "PVP自動釋放靈魂"
|
||||
L["Select Quest Reward"] = "自動選取任務獎勵"
|
||||
L["Show Quest Level"] = true
|
||||
L["Track Reputation"] = "聲望追蹤"
|
||||
L["Train All Button"] = true
|
||||
L["Undress Button"] = true
|
||||
L["Undress"] = "無裝備"
|
||||
|
||||
-- HD Models Portrait Fix
|
||||
L["Debug"] = true
|
||||
L["List of models with broken portrait camera. Separete each model name with ';' simbol"] = true
|
||||
L["Models to fix"] = true
|
||||
L["Portrait HD Fix"] = true
|
||||
L["Print to chat model names of units with enabled 3D portraits."] = true
|
||||
|
||||
-- Interrupt Tracker
|
||||
L["Interrupt Tracker"] = true
|
||||
|
||||
-- Nameplates
|
||||
L["Cache Unit Class"] = true
|
||||
|
||||
-- Minimap
|
||||
L["Above Minimap"] = "小地圖之上"
|
||||
L["Combat Hide"] = true
|
||||
L["FadeIn Delay"] = "隱藏延遲"
|
||||
L["Hide minimap while in combat."] = "戰鬥中隱藏小地圖"
|
||||
L["Show Location Digits"] = true
|
||||
L["Toggle Location Digits."] = true
|
||||
L["Location Digits"] = "坐標位數"
|
||||
L["Location Panel"] = true
|
||||
L["Number of digits for map location."] = "坐標顯示的小數位數"
|
||||
L["The time to wait before fading the minimap back in after combat hide. (0 = Disabled)"] = "戰鬥開始後隱藏小地圖前的延遲時間 (0=停用)"
|
||||
L["Toggle Location Panel."] = true
|
||||
|
||||
-- Timer Tracker
|
||||
L["Timer Tracker"] = true
|
||||
L["Hook DBM"] = true
|
||||
|
||||
-- Tooltip
|
||||
L["Check Player"] = true
|
||||
L["Check achievement completion instead of boss kill stats.\nSome servers log incorrect boss kill statistics, this is an alternative way to get player progress."] = true
|
||||
L["Colorize the tooltip border based on item quality."] = true
|
||||
L["Icecrown Citadel"] = true
|
||||
L["Item Border Color"] = true
|
||||
L["Progress Info"] = true
|
||||
L["Ruby Sanctum"] = true
|
||||
L["Show/Hides an Icon for Achievements on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Items on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells on the Tooltip."] = true
|
||||
L["Show/Hides an Icon for Spells and Items on the Tooltip."] = true
|
||||
L["Tiers"] = true
|
||||
L["Tooltip Icon"] = true
|
||||
L["Trial of the Crusader"] = true
|
||||
L["Ulduar"] = true
|
||||
|
||||
-- Movers
|
||||
L["Loss Control"] = "失去控制圖示"
|
||||
L["Player Portrait"] = true
|
||||
L["Target Portrait"] = true
|
||||
|
||||
-- Loss Control
|
||||
L["CC"] = "控制類技能"
|
||||
L["Disarm"] = "繳械類技能"
|
||||
L["Lose Control"] = true
|
||||
L["PvE"] = "PvE"
|
||||
L["Root"] = "定身類技能"
|
||||
L["Silence"] = "沉默類技能"
|
||||
L["Snare"] = "減速類技能"
|
||||
|
||||
-- Unitframes
|
||||
L["Class Icons"] = true
|
||||
L["Detached Height"] = true
|
||||
L["Show class icon for units."] = "顯是職業圖標"
|
||||
|
||||
-- WatchFrame
|
||||
L["City (Resting)"] = "城市 (休息)"
|
||||
L["Collapsed"] = "收起"
|
||||
L["Hidden"] = "隱藏"
|
||||
L["Party"] = "隊伍"
|
||||
L["PvP"] = true
|
||||
L["Raid"] = "團隊"
|
||||
|
||||
--
|
||||
L["Drag"] = true
|
||||
L["Left-click on character and drag to rotate."] = true
|
||||
L["Mouse Wheel Down"] = true
|
||||
L["Mouse Wheel Up"] = true
|
||||
L["Reset Position"] = "重設位置"
|
||||
L["Right-click on character and drag to move it within the window."] = true
|
||||
L["Rotate Left"] = true
|
||||
L["Rotate Right"] = true
|
||||
L["Zoom In"] = true
|
||||
L["Zoom Out"] = true
|
||||
|
||||
--
|
||||
L["Character Stats"] = true
|
||||
L["Damage Per Second"] = "DPS"
|
||||
L["Equipment Manager"] = true
|
||||
L["Hide Character Information"] = true
|
||||
L["Hide Pet Information"] = true
|
||||
L["Item Level"] = "物品等級"
|
||||
L["New Set"] = true
|
||||
L["Resistance"] = true
|
||||
L["Show Character Information"] = true
|
||||
L["Show Pet Information"] = true
|
||||
L["Titles"] = true
|
||||
L["Total Companions"] = true
|
||||
L["Total Mounts"] = true
|
||||
|
||||
L["ALL"] = "全部"
|
||||
L["ALT_KEY"] = "ALT鍵"
|
||||
|
||||
L["%d mails\nShift-Click to remove empty mails."] = true
|
||||
L["Addon |cffFFD100%s|r was merged into |cffFFD100ElvUI_Enhanced|r.\nPlease remove it to avoid conflicts."] = true
|
||||
L["Cache Unit Guilds / NPC Titles"] = true
|
||||
L["Check Achievements"] = true
|
||||
L["Collected "] = true
|
||||
L["Collection completed."] = true
|
||||
L["Collection stopped, inventory is full."] = true
|
||||
L["Color based on reaction type."] = true
|
||||
L["Compact mode"] = true
|
||||
L["Companion Background"] = true
|
||||
L["Desaturate"] = true
|
||||
L["Detached Portrait"] = true
|
||||
L["Dressing Room"] = true
|
||||
L["Enhanced"] = true
|
||||
L["Equipment Info"] = true
|
||||
L["Error Frame"] = true
|
||||
L["Everywhere"] = true
|
||||
L["Fog of War"] = true
|
||||
L["Grow direction"] = true
|
||||
L["Guild"] = true
|
||||
L["Inside Minimap"] = true
|
||||
L["Key Press Animation"] = true
|
||||
L["Map"] = true
|
||||
L["Minimap Button Grabber"] = true
|
||||
L["NPC"] = true
|
||||
L["Overlay Color"] = true
|
||||
L["Reaction Color"] = true
|
||||
L["Reported by %s"] = true
|
||||
L["Rotation"] = true
|
||||
L["Separator"] = true
|
||||
L["Set the height of Error Frame. Higher frame can show more lines at once."] = true
|
||||
L["Set the width of Error Frame. Too narrow frame may cause messages to be split in several lines"] = true
|
||||
L["Show Everywhere"] = true
|
||||
L["Show on Arena."] = true
|
||||
L["Show on Battleground."] = true
|
||||
L["Smooth Animations"] = true
|
||||
L["Take All"] = true
|
||||
L["Take All Mail"] = true
|
||||
L["Take Cash"] = true
|
||||
L["This addon has been disabled. You should install an updated version."] = true
|
||||
L["Where to show"] = true
|
||||
L["seconds"] = true
|
||||
Binary file not shown.
@@ -0,0 +1,3 @@
|
||||
<Ui xmlns="http://www.blizzard.com/wow/ui/">
|
||||
<Script file="SharedMedia.lua"/>
|
||||
</Ui>
|
||||
@@ -0,0 +1,5 @@
|
||||
local E = unpack(ElvUI)
|
||||
local LSM = E.Libs.LSM
|
||||
|
||||
LSM:Register("font", "TukUI Unitframes", [[Interface\Addons\ElvUI_Enhanced\Media\fonts\uf_font.ttf]], LSM.LOCALE_BIT_ruRU + LSM.LOCALE_BIT_western)
|
||||
LSM:Register("statusbar", "BuiOnePixel", [[Interface\Addons\ElvUI_Enhanced\Media\Textures\BuiOnePixel.tga]])
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,114 @@
|
||||
local E, L, V, P, G = unpack(ElvUI)
|
||||
local KPA = E:NewModule("Enhanced_KeyPressAnimation")
|
||||
local LAB = E.Libs.LAB
|
||||
|
||||
local ipairs = ipairs
|
||||
local tinsert, tremove = table.insert, table.remove
|
||||
|
||||
local CreateFrame = CreateFrame
|
||||
|
||||
local framePool = {}
|
||||
|
||||
local function OnFinished(self)
|
||||
tinsert(framePool, self.parent)
|
||||
end
|
||||
|
||||
local function CreateAnimationFrame()
|
||||
local db = E.db.enhanced.actionbar.keyPressAnimation
|
||||
|
||||
local frame = CreateFrame("Frame", "Enhanced_KeyPressAnimation"..(#KPA.frames + 1), UIParent)
|
||||
|
||||
local texture = frame:CreateTexture()
|
||||
texture:SetTexture([[Interface\Cooldown\star4]])
|
||||
texture:SetAlpha(0)
|
||||
texture:SetAllPoints()
|
||||
texture:SetBlendMode("ADD")
|
||||
texture:SetVertexColor(db.color.r, db.color.g, db.color.b)
|
||||
frame.texture = texture
|
||||
|
||||
local animationGroup = texture:CreateAnimationGroup()
|
||||
animationGroup:SetScript("OnFinished", OnFinished)
|
||||
animationGroup.parent = frame
|
||||
frame.animationGroup = animationGroup
|
||||
|
||||
local alpha1 = animationGroup:CreateAnimation("Alpha")
|
||||
alpha1:SetChange(1)
|
||||
alpha1:SetDuration(0)
|
||||
alpha1:SetOrder(1)
|
||||
frame.alpha1 = alpha1
|
||||
|
||||
local scale1 = animationGroup:CreateAnimation("Scale")
|
||||
scale1:SetScale(1.0, 1.0)
|
||||
scale1:SetDuration(0)
|
||||
scale1:SetOrder(1)
|
||||
frame.scale1 = scale1
|
||||
|
||||
local scale2 = animationGroup:CreateAnimation("Scale")
|
||||
scale2:SetScale(db.scale, db.scale)
|
||||
scale2:SetDuration(0.2)
|
||||
scale2:SetOrder(2)
|
||||
frame.scale2 = scale2
|
||||
|
||||
local rotation = animationGroup:CreateAnimation("Rotation")
|
||||
rotation:SetDegrees(db.rotation)
|
||||
rotation:SetDuration(0.2)
|
||||
rotation:SetOrder(2)
|
||||
frame.rotation = rotation
|
||||
|
||||
tinsert(KPA.frames, frame)
|
||||
|
||||
return frame
|
||||
end
|
||||
|
||||
local function StartAnimation(button)
|
||||
if not button:IsVisible() or button:GetParent():GetAlpha() == 0 then return end
|
||||
|
||||
local frame = KPA:GetFreeAnimationFrame()
|
||||
local animationGroup = frame.animationGroup
|
||||
|
||||
frame:SetFrameStrata(button:GetFrameStrata())
|
||||
frame:SetFrameLevel(button:GetFrameLevel() + 10)
|
||||
frame:SetAllPoints(button)
|
||||
|
||||
frame.button = button
|
||||
|
||||
animationGroup:Play()
|
||||
end
|
||||
|
||||
function KPA:GetFreeAnimationFrame()
|
||||
return #framePool > 0 and tremove(framePool) or CreateAnimationFrame()
|
||||
end
|
||||
|
||||
function KPA:UpdateSetting()
|
||||
local db = E.db.enhanced.actionbar.keyPressAnimation
|
||||
|
||||
for _, frame in ipairs(self.frames) do
|
||||
frame.texture:SetVertexColor(db.color.r, db.color.g, db.color.b)
|
||||
frame.scale2:SetScale(db.scale, db.scale)
|
||||
frame.rotation:SetDegrees(db.rotation)
|
||||
end
|
||||
end
|
||||
|
||||
function KPA:Initialize()
|
||||
if not E.private.enhanced.actionbar.keyPressAnimation then return end
|
||||
|
||||
self.frames = {}
|
||||
|
||||
for i = 1, 3 do
|
||||
tinsert(framePool, CreateAnimationFrame())
|
||||
end
|
||||
|
||||
LAB.RegisterCallback(KPA, "OnButtonCreated", function(_, button)
|
||||
button:HookScript("PreClick", StartAnimation)
|
||||
end)
|
||||
|
||||
for button in pairs(LAB.buttonRegistry) do
|
||||
button:HookScript("PreClick", StartAnimation)
|
||||
end
|
||||
end
|
||||
|
||||
local function InitializeCallback()
|
||||
KPA:Initialize()
|
||||
end
|
||||
|
||||
E:RegisterModule(KPA:GetName(), InitializeCallback)
|
||||
@@ -0,0 +1,3 @@
|
||||
<Ui xmlns="http://www.blizzard.com/wow/ui/">
|
||||
<Script file="KeyPressAnimation.lua"/>
|
||||
</Ui>
|
||||
@@ -0,0 +1,426 @@
|
||||
local E, L, V, P, G = unpack(ElvUI)
|
||||
local mod = E:GetModule("Enhanced_Blizzard")
|
||||
|
||||
local _G = _G
|
||||
local select = select
|
||||
local floor = math.floor
|
||||
local tconcat = table.concat
|
||||
|
||||
local CreateFrame = CreateFrame
|
||||
local DisableAddOn = DisableAddOn
|
||||
local EnableAddOn = EnableAddOn
|
||||
local GetAddOnDependencies = GetAddOnDependencies
|
||||
local GetAddOnInfo = GetAddOnInfo
|
||||
local GetNumAddOns = GetNumAddOns
|
||||
local IsAddOnLoadOnDemand = IsAddOnLoadOnDemand
|
||||
local IsAddOnLoaded = IsAddOnLoaded
|
||||
local IsShiftKeyDown = IsShiftKeyDown
|
||||
local LoadAddOn = LoadAddOn
|
||||
local PlaySound = PlaySound
|
||||
|
||||
local function AddonList_HasAnyChanged()
|
||||
local status = ElvUI_AddonList.startStatus
|
||||
|
||||
for i = 1, GetNumAddOns() do
|
||||
local _, _, _, enabled, _, reason = GetAddOnInfo(i)
|
||||
|
||||
if not ((enabled == status[i].enabled and not status[i].lod)
|
||||
or reason == "DEP_DISABLED"
|
||||
or status[i].reason == "DEP_DISABLED"
|
||||
or (enabled and status[i].lod and not IsAddOnLoaded(i))
|
||||
or (not enabled and status[i].lod and not IsAddOnLoaded(i)))
|
||||
then
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local function AddonList_IsAddOnLoadOnDemand(index)
|
||||
if IsAddOnLoadOnDemand(index) and not IsAddOnLoaded(index) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
local function AddonList_IsDepsLoaded(...)
|
||||
local depsCount = select("#", ...)
|
||||
if depsCount == 0 then return end
|
||||
|
||||
for i = 1, depsCount do
|
||||
if not IsAddOnLoaded(select(i, ...)) then
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
local function AddonList_SetStatus(entry, load, status, reload)
|
||||
if load then
|
||||
entry.LoadButton:Show()
|
||||
else
|
||||
entry.LoadButton:Hide()
|
||||
end
|
||||
|
||||
if status then
|
||||
entry.Status:Show()
|
||||
else
|
||||
entry.Status:Hide()
|
||||
end
|
||||
|
||||
if reload then
|
||||
entry.Reload:Show()
|
||||
else
|
||||
entry.Reload:Hide()
|
||||
end
|
||||
end
|
||||
|
||||
local function AddonList_Update()
|
||||
local numEntries = GetNumAddOns()
|
||||
local addonIndex, entry, checkbox, status
|
||||
|
||||
for i = 1, 20 do
|
||||
addonIndex = ElvUI_AddonList.offset + i
|
||||
entry = _G["ElvUI_AddonListEntry"..i]
|
||||
|
||||
if addonIndex > numEntries then
|
||||
entry:Hide()
|
||||
else
|
||||
local name, title, _, enabled, loadable, reason = GetAddOnInfo(addonIndex)
|
||||
|
||||
checkbox = _G["ElvUI_AddonListEntry"..i.."Enabled"]
|
||||
checkbox:SetChecked(enabled)
|
||||
|
||||
status = _G["ElvUI_AddonListEntry"..i.."Title"]
|
||||
|
||||
if loadable or (enabled and (reason == "DEP_DEMAND_LOADED" or reason == "DEMAND_LOADED")) then
|
||||
status:SetTextColor(1.0, 0.78, 0.0)
|
||||
elseif enabled and reason ~= "DEP_DISABLED" then
|
||||
status:SetTextColor(1.0, 0.1, 0.1)
|
||||
else
|
||||
status:SetTextColor(0.5, 0.5, 0.5)
|
||||
end
|
||||
|
||||
if title then
|
||||
status:SetText(title)
|
||||
else
|
||||
status:SetText(name)
|
||||
end
|
||||
|
||||
status = _G["ElvUI_AddonListEntry"..i.."Status"]
|
||||
if not loadable and reason then
|
||||
status:SetText(_G["ADDON_"..reason])
|
||||
else
|
||||
status:SetText("")
|
||||
end
|
||||
|
||||
if enabled ~= ElvUI_AddonList.startStatus[addonIndex].enabled and reason ~= "DEP_DISABLED" and ElvUI_AddonList.startStatus[addonIndex].reason ~= "DEP_DISABLED" then
|
||||
if enabled then
|
||||
if AddonList_IsAddOnLoadOnDemand(addonIndex) then
|
||||
if AddonList_IsDepsLoaded(GetAddOnDependencies(addonIndex)) then
|
||||
AddonList_SetStatus(entry, true)
|
||||
else
|
||||
AddonList_SetStatus(entry)
|
||||
end
|
||||
else
|
||||
AddonList_SetStatus(entry, nil, nil, true)
|
||||
end
|
||||
elseif AddonList_IsAddOnLoadOnDemand(addonIndex) then
|
||||
AddonList_SetStatus(entry, nil, true)
|
||||
else
|
||||
AddonList_SetStatus(entry, nil, nil, true)
|
||||
end
|
||||
else
|
||||
AddonList_SetStatus(entry, nil, true)
|
||||
end
|
||||
|
||||
entry.id = addonIndex
|
||||
entry:Show()
|
||||
end
|
||||
end
|
||||
|
||||
FauxScrollFrame_Update(ElvUI_AddonListScrollFrame, numEntries, 20, 16, nil, nil, nil, nil, nil, nil, true)
|
||||
|
||||
if AddonList_HasAnyChanged() then
|
||||
ElvUI_AddonListOkayButton:SetText(L["Reload UI"])
|
||||
ElvUI_AddonList.shouldReload = true
|
||||
else
|
||||
ElvUI_AddonListOkayButton:SetText(OKAY)
|
||||
ElvUI_AddonList.shouldReload = false
|
||||
end
|
||||
end
|
||||
|
||||
local function AddonList_Enable(index, enabled)
|
||||
if enabled then
|
||||
EnableAddOn(index)
|
||||
else
|
||||
DisableAddOn(index)
|
||||
end
|
||||
|
||||
AddonList_Update()
|
||||
end
|
||||
|
||||
local function AddonList_LoadAddOn(index)
|
||||
if not AddonList_IsAddOnLoadOnDemand(index) then return end
|
||||
|
||||
LoadAddOn(index)
|
||||
|
||||
if IsAddOnLoaded(index) then
|
||||
ElvUI_AddonList.startStatus[index].enabled = 1
|
||||
ElvUI_AddonList.startStatus[index].lod = nil
|
||||
end
|
||||
|
||||
AddonList_Update()
|
||||
end
|
||||
|
||||
local function AddonTooltip_BuildDeps(...)
|
||||
local depsCount = select("#", ...)
|
||||
if depsCount == 0 then return end
|
||||
|
||||
local deps
|
||||
|
||||
if depsCount == 1 then
|
||||
deps = ...
|
||||
elseif depsCount > 1 then
|
||||
deps = tconcat({...}, ", ")
|
||||
end
|
||||
|
||||
return L["Dependencies: "] .. deps
|
||||
end
|
||||
|
||||
local function AddonTooltip_Update(self)
|
||||
local name, title, notes, _, _, security = GetAddOnInfo(self.id)
|
||||
if not name then return end
|
||||
|
||||
GameTooltip:SetOwner(self)
|
||||
|
||||
if security == "BANNED" then
|
||||
GameTooltip:SetText(L["This addon has been disabled. You should install an updated version."])
|
||||
else
|
||||
if title then
|
||||
GameTooltip:AddLine(title)
|
||||
else
|
||||
GameTooltip:AddLine(name)
|
||||
end
|
||||
|
||||
GameTooltip:AddLine(notes, 1.0, 1.0, 1.0)
|
||||
|
||||
local dependsStr = AddonTooltip_BuildDeps(GetAddOnDependencies(self.id))
|
||||
if dependsStr then
|
||||
GameTooltip:AddLine(AddonTooltip_BuildDeps(GetAddOnDependencies(self.id)))
|
||||
end
|
||||
end
|
||||
|
||||
GameTooltip:Show()
|
||||
end
|
||||
|
||||
function mod:AddonList()
|
||||
if IsAddOnLoaded("ACP") then return end
|
||||
|
||||
local S = E:GetModule("Skins")
|
||||
|
||||
local addonList = CreateFrame("Frame", "ElvUI_AddonList", UIParent)
|
||||
addonList:SetFrameStrata("HIGH")
|
||||
addonList:Size(520, 466)
|
||||
addonList:Point("CENTER", 0, 0)
|
||||
addonList:SetTemplate("Transparent")
|
||||
addonList:SetClampedToScreen(true)
|
||||
addonList:SetMovable(true)
|
||||
addonList:EnableMouse(true)
|
||||
addonList:RegisterForDrag("LeftButton")
|
||||
addonList:Hide()
|
||||
tinsert(UISpecialFrames, addonList:GetName())
|
||||
|
||||
addonList.offset = 0
|
||||
addonList.startStatus = {}
|
||||
|
||||
for i = 1, GetNumAddOns() do
|
||||
local _, _, _, enabled, _, reason = GetAddOnInfo(i)
|
||||
addonList.startStatus[i] = {
|
||||
enabled = enabled,
|
||||
reason = reason,
|
||||
lod = IsAddOnLoadOnDemand(i)
|
||||
}
|
||||
end
|
||||
|
||||
addonList:SetScript("OnDragStart", function(self)
|
||||
if IsShiftKeyDown() then
|
||||
self:StartMoving()
|
||||
end
|
||||
end)
|
||||
addonList:SetScript("OnDragStop", function(self)
|
||||
self:StopMovingOrSizing()
|
||||
end)
|
||||
|
||||
local addonTitle = addonList:CreateFontString("$parentTitle", "BACKGROUND", "GameFontNormal")
|
||||
addonTitle:Point("TOP", 0, -7)
|
||||
addonTitle:SetText(ADDONS)
|
||||
|
||||
local cancelButton = CreateFrame("Button", "$parentCancelButton", addonList, "UIPanelButtonTemplate")
|
||||
cancelButton:Size(80, 22)
|
||||
cancelButton:Point("BOTTOMRIGHT", -8, 8)
|
||||
cancelButton:SetText(CANCEL)
|
||||
S:HandleButton(cancelButton)
|
||||
cancelButton:SetScript("OnClick", function()
|
||||
ElvUI_AddonList:Hide()
|
||||
end)
|
||||
|
||||
local okayButton = CreateFrame("Button", "$parentOkayButton", addonList, "UIPanelButtonTemplate")
|
||||
okayButton:Size(80, 22)
|
||||
okayButton:Point("RIGHT", cancelButton, "LEFT", -7, 0)
|
||||
okayButton:SetText(OKAY)
|
||||
S:HandleButton(okayButton)
|
||||
okayButton:SetScript("OnClick", function()
|
||||
if ElvUI_AddonList.shouldReload then
|
||||
ReloadUI()
|
||||
else
|
||||
ElvUI_AddonList:Hide()
|
||||
end
|
||||
end)
|
||||
|
||||
local enableAllButton = CreateFrame("Button", "$parentEnableAllButton", addonList, "UIPanelButtonTemplate")
|
||||
enableAllButton:Size(120, 22)
|
||||
enableAllButton:Point("BOTTOMLEFT", 8, 8)
|
||||
enableAllButton:SetText(L["Enable All"])
|
||||
S:HandleButton(enableAllButton)
|
||||
enableAllButton:SetScript("OnClick", function()
|
||||
EnableAllAddOns()
|
||||
AddonList_Update()
|
||||
end)
|
||||
|
||||
local disableAllButton = CreateFrame("Button", "$parentDisableAllButton", addonList, "UIPanelButtonTemplate")
|
||||
disableAllButton:Size(120, 22)
|
||||
disableAllButton:Point("LEFT", enableAllButton, "RIGHT", 7, 0)
|
||||
disableAllButton:SetText(L["Disable All"])
|
||||
S:HandleButton(disableAllButton)
|
||||
disableAllButton:SetScript("OnClick", function()
|
||||
DisableAllAddOns()
|
||||
AddonList_Update()
|
||||
end)
|
||||
|
||||
addonList:SetScript("OnShow", function()
|
||||
AddonList_Update()
|
||||
PlaySound("igMainMenuOption")
|
||||
end)
|
||||
addonList:SetScript("OnHide", function()
|
||||
PlaySound("igMainMenuOptionCheckBoxOn")
|
||||
end)
|
||||
|
||||
local scrollFrame = CreateFrame("ScrollFrame", "$parentScrollFrame", addonList, "FauxScrollFrameTemplate")
|
||||
scrollFrame:SetTemplate("Transparent")
|
||||
scrollFrame:Point("TOPLEFT", 8, -25)
|
||||
scrollFrame:Point("BOTTOMRIGHT", -29, 37)
|
||||
scrollFrame.scrollBar = _G[scrollFrame:GetName().."ScrollBar"]
|
||||
S:HandleScrollBar(scrollFrame.scrollBar, 5)
|
||||
|
||||
scrollFrame.scrollBar:Point("TOPLEFT", scrollFrame, "TOPRIGHT", 4, -18)
|
||||
scrollFrame.scrollBar:Point("BOTTOMLEFT", scrollFrame, "BOTTOMRIGHT", 4, 18)
|
||||
|
||||
scrollFrame:SetScript("OnVerticalScroll", function(self, offset)
|
||||
self.scrollBar:SetValue(offset)
|
||||
addonList.offset = floor((offset / 16) + 0.5)
|
||||
AddonList_Update()
|
||||
|
||||
if GameTooltip:IsShown() then
|
||||
AddonTooltip_Update(GameTooltip:GetOwner())
|
||||
end
|
||||
end)
|
||||
|
||||
local function Enable_OnClick(self)
|
||||
AddonList_Enable(self:GetParent().id, self:GetChecked())
|
||||
PlaySound("igMainMenuOptionCheckBoxOn")
|
||||
end
|
||||
|
||||
local function Load_OnClick(self)
|
||||
AddonList_LoadAddOn(self:GetParent().id)
|
||||
end
|
||||
|
||||
local addonListEntry = {}
|
||||
for i = 1, 20 do
|
||||
addonListEntry[i] = CreateFrame("Button", "ElvUI_AddonListEntry"..i, scrollFrame)
|
||||
addonListEntry[i]:Size(scrollFrame:GetWidth() - 8, 16)
|
||||
addonListEntry[i].id = i
|
||||
|
||||
if i == 1 then
|
||||
addonListEntry[i]:Point("TOPLEFT", 4, -4)
|
||||
else
|
||||
addonListEntry[i]:Point("TOP", addonListEntry[i - 1], "BOTTOM", 0, -4)
|
||||
end
|
||||
|
||||
local enabled = CreateFrame("CheckButton", "$parentEnabled", addonListEntry[i])
|
||||
enabled:Size(24, 24)
|
||||
enabled:Point("LEFT", -4, 0)
|
||||
S:HandleCheckBox(enabled)
|
||||
|
||||
local title = addonListEntry[i]:CreateFontString("$parentTitle", "BACKGROUND", "GameFontNormal")
|
||||
title:Size(220, 12)
|
||||
title:Point("LEFT", 22, 0)
|
||||
title:SetJustifyH("LEFT")
|
||||
|
||||
local status = addonListEntry[i]:CreateFontString("$parentStatus", "BACKGROUND", "GameFontNormalSmall")
|
||||
status:Size(220, 12)
|
||||
status:Point("RIGHT", -22, 0)
|
||||
status:SetJustifyH("RIGHT")
|
||||
addonListEntry[i].Status = status
|
||||
|
||||
local reload = addonListEntry[i]:CreateFontString("$parentReload", "BACKGROUND", "GameFontRed")
|
||||
reload:Size(220, 12)
|
||||
reload:Point("RIGHT", -22, 0)
|
||||
reload:SetJustifyH("RIGHT")
|
||||
reload:SetText(L["Requires Reload"])
|
||||
addonListEntry[i].Reload = reload
|
||||
|
||||
local load = CreateFrame("Button", "$parentLoad", addonListEntry[i], "UIPanelButtonTemplate")
|
||||
load:Size(100, 22)
|
||||
load:Point("RIGHT", -21, 0)
|
||||
load:SetText(L["Load AddOn"])
|
||||
S:HandleButton(load)
|
||||
addonListEntry[i].LoadButton = load
|
||||
|
||||
addonListEntry[i]:SetScript("OnEnter", AddonTooltip_Update)
|
||||
addonListEntry[i]:SetScript("OnLeave", GameTooltip_Hide)
|
||||
|
||||
enabled:SetScript("OnClick", Enable_OnClick)
|
||||
load:SetScript("OnClick", Load_OnClick)
|
||||
end
|
||||
|
||||
local buttonAddons = CreateFrame("Button", "ElvUI_AddonListButton", GameMenuFrame, "GameMenuButtonTemplate")
|
||||
buttonAddons:Point("TOP", GameMenuButtonMacros, "BOTTOM", 0, -1)
|
||||
buttonAddons:SetText(ADDONS)
|
||||
S:HandleButton(buttonAddons)
|
||||
buttonAddons:SetScript("OnClick", function()
|
||||
HideUIPanel(GameMenuFrame)
|
||||
ElvUI_AddonList:Show()
|
||||
end)
|
||||
|
||||
self:HookScript(GameMenuButtonRatings, "OnShow", function(self)
|
||||
buttonAddons:Point("TOP", self, "BOTTOM", 0, -1)
|
||||
end)
|
||||
|
||||
self:HookScript(GameMenuButtonRatings, "OnHide", function(self)
|
||||
buttonAddons:Point("TOP", GameMenuButtonMacros, "BOTTOM", 0, -1)
|
||||
end)
|
||||
|
||||
GameMenuButtonLogout:SetScript("OnShow", function(self)
|
||||
self:Point("TOP", buttonAddons, "BOTTOM", 0, -16)
|
||||
|
||||
if not StaticPopup_Visible("CAMP") and not StaticPopup_Visible("QUIT") then
|
||||
self:Enable()
|
||||
else
|
||||
self:Disable()
|
||||
end
|
||||
end)
|
||||
|
||||
if GetLocale() == "koKR" then
|
||||
if IsMacClient() then
|
||||
GameMenuFrame:Height(308)
|
||||
else
|
||||
GameMenuFrame:Height(282)
|
||||
end
|
||||
else
|
||||
if IsMacClient() then
|
||||
GameMenuFrame:Height(292)
|
||||
else
|
||||
GameMenuFrame:Height(266)
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,114 @@
|
||||
local E, L, V, P, G = unpack(ElvUI)
|
||||
local S = E:GetModule("Skins")
|
||||
|
||||
local _G = _G
|
||||
local band = bit.band
|
||||
|
||||
local function LoadSkin()
|
||||
if not E.private.enhanced.animatedAchievementBars then return end
|
||||
|
||||
local function AnimationStatusBar(bar, noNumber)
|
||||
bar.anim = CreateAnimationGroup(bar)
|
||||
bar.anim.progress = bar.anim:CreateAnimation("Progress")
|
||||
bar.anim.progress:SetSmoothing("Out")
|
||||
bar.anim.progress:SetDuration(1.7)
|
||||
|
||||
bar.anim.color = bar.anim:CreateAnimation("Color")
|
||||
bar.anim.color:SetSmoothing("Out")
|
||||
bar.anim.color:SetColorType("Statusbar")
|
||||
bar.anim.color:SetDuration(1.7)
|
||||
bar.anim.color.StartR, bar.anim.color.StartG, bar.anim.color.StartB = 1, 0, 0
|
||||
|
||||
if not noNumber then
|
||||
bar.anim2 = CreateAnimationGroup(_G[bar:GetName() .. "Text"])
|
||||
bar.anim2.number = bar.anim2:CreateAnimation("Number")
|
||||
bar.anim2.number:SetDuration(1.7)
|
||||
end
|
||||
end
|
||||
|
||||
local function PlayAnimationStatusBar(bar, max, value, noNumber)
|
||||
if bar.anim:IsPlaying() or (bar.anim2 and bar.anim2:IsPlaying()) then
|
||||
bar.anim:Stop()
|
||||
if not noNumber then
|
||||
bar.anim2:Stop()
|
||||
end
|
||||
end
|
||||
bar:SetValue(0)
|
||||
bar.anim.progress:SetChange(value)
|
||||
|
||||
local r, g, b = E:ColorGradient(value / max, 1, 0, 0, 1, 1, 0, 0, 1, 0)
|
||||
bar.anim.color:Reset()
|
||||
bar.anim.color:SetChange(r, g, b)
|
||||
bar.anim:Play()
|
||||
|
||||
if not noNumber then
|
||||
bar.anim2.number:SetPostfix("/" .. max)
|
||||
bar.anim2.number:SetChange(value)
|
||||
bar.anim2:Play()
|
||||
end
|
||||
end
|
||||
|
||||
AnimationStatusBar(AchievementFrameSummaryCategoriesStatusBar)
|
||||
AnimationStatusBar(AchievementFrameComparisonSummaryPlayerStatusBar)
|
||||
AnimationStatusBar(AchievementFrameComparisonSummaryFriendStatusBar)
|
||||
|
||||
for i = 1, 8 do
|
||||
local frame = _G["AchievementFrameSummaryCategoriesCategory" .. i]
|
||||
AnimationStatusBar(frame)
|
||||
end
|
||||
|
||||
hooksecurefunc("AchievementFrameCategory_StatusBarTooltip", function(self)
|
||||
local index = GameTooltip.shownStatusBars
|
||||
local name = GameTooltip:GetName() .. "StatusBar" .. index
|
||||
local statusBar = _G[name]
|
||||
if not statusBar then return end
|
||||
|
||||
if not statusBar.anim then
|
||||
AnimationStatusBar(statusBar)
|
||||
end
|
||||
|
||||
PlayAnimationStatusBar(statusBar, self.numAchievements, self.numCompleted)
|
||||
end)
|
||||
|
||||
hooksecurefunc("AchievementFrameComparison_UpdateStatusBars", function(id)
|
||||
local numAchievements, numCompleted = GetCategoryNumAchievements(id)
|
||||
local statusBar = AchievementFrameComparisonSummaryPlayerStatusBar
|
||||
PlayAnimationStatusBar(statusBar, numAchievements, numCompleted)
|
||||
|
||||
local friendCompleted = GetComparisonCategoryNumAchievements(id)
|
||||
statusBar = AchievementFrameComparisonSummaryFriendStatusBar
|
||||
PlayAnimationStatusBar(statusBar, numAchievements, friendCompleted)
|
||||
end)
|
||||
|
||||
hooksecurefunc("AchievementFrameSummaryCategoriesStatusBar_Update", function()
|
||||
local total, completed = GetNumCompletedAchievements()
|
||||
PlayAnimationStatusBar(AchievementFrameSummaryCategoriesStatusBar, total, completed)
|
||||
end)
|
||||
|
||||
hooksecurefunc("AchievementFrameSummaryCategory_OnShow", function(self)
|
||||
local totalAchievements, totalCompleted = AchievementFrame_GetCategoryTotalNumAchievements(self:GetID(), true)
|
||||
PlayAnimationStatusBar(self, totalAchievements, totalCompleted)
|
||||
end)
|
||||
|
||||
hooksecurefunc("AchievementButton_GetProgressBar", function(index)
|
||||
local frame = _G["AchievementFrameProgressBar" .. index]
|
||||
if frame and not frame.anim then
|
||||
AnimationStatusBar(frame, true)
|
||||
end
|
||||
end)
|
||||
|
||||
hooksecurefunc("AchievementObjectives_DisplayCriteria", function(objectivesFrame, id)
|
||||
local numCriteria = GetAchievementNumCriteria(id)
|
||||
local progressBars = 0
|
||||
for i = 1, numCriteria do
|
||||
local _, _, _, quantity, reqQuantity, _, flags = GetAchievementCriteriaInfo(id, i)
|
||||
if band(flags, ACHIEVEMENT_CRITERIA_PROGRESS_BAR) == ACHIEVEMENT_CRITERIA_PROGRESS_BAR then
|
||||
progressBars = progressBars + 1
|
||||
local progressBar = AchievementButton_GetProgressBar(progressBars)
|
||||
PlayAnimationStatusBar(progressBar, reqQuantity, quantity, true)
|
||||
end
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
S:AddCallbackForAddon("Blizzard_AchievementUI", "Enhanced_AchievementUI", LoadSkin)
|
||||
@@ -0,0 +1,74 @@
|
||||
local E, L, V, P, G = unpack(ElvUI)
|
||||
local S = E:GetModule("Skins")
|
||||
|
||||
local function SearchBoxTemplate(frame)
|
||||
frame:SetTextInsets(16, 20, 0, 0)
|
||||
|
||||
frame.Instructions = frame:CreateFontString(nil, "ARTWORK", "GameFontDisableSmall")
|
||||
frame.Instructions:SetText(SEARCH)
|
||||
frame.Instructions:SetPoint("TOPLEFT", frame, "TOPLEFT", 16, 0)
|
||||
frame.Instructions:SetPoint("BOTTOMRIGHT", frame, "BOTTOMRIGHT", -20, 0)
|
||||
frame.Instructions:SetTextColor(0.35, 0.35, 0.35)
|
||||
frame.Instructions:SetJustifyH("LEFT")
|
||||
frame.Instructions:SetJustifyV("MIDDLE")
|
||||
|
||||
frame.searchIcon = frame:CreateTexture(nil, "OVERLAY")
|
||||
frame.searchIcon:SetTexture("Interface\\Common\\UI-Searchbox-Icon")
|
||||
frame.searchIcon:SetVertexColor(0.6, 0.6, 0.6)
|
||||
frame.searchIcon:Size(14)
|
||||
frame.searchIcon:Point("LEFT", 0, -2)
|
||||
|
||||
frame.clearButton = CreateFrame("Button", nil, frame)
|
||||
frame.clearButton:Size(14)
|
||||
frame.clearButton:Point("RIGHT", -3, 0)
|
||||
|
||||
frame.clearButton.texture = frame.clearButton:CreateTexture()
|
||||
frame.clearButton.texture:SetTexture("Interface\\FriendsFrame\\ClearBroadcastIcon")
|
||||
frame.clearButton.texture:SetAlpha(0.5)
|
||||
frame.clearButton.texture:Size(17)
|
||||
frame.clearButton.texture:Point("CENTER", 0, 0)
|
||||
|
||||
frame.clearButton:SetScript("OnEnter", function(self) self.texture:SetAlpha(1.0) end)
|
||||
frame.clearButton:SetScript("OnLeave", function(self) self.texture:SetAlpha(0.5) end)
|
||||
frame.clearButton:SetScript("OnMouseDown", function(self) if self:IsEnabled() then self.texture:Point("CENTER", 1, -1) end end)
|
||||
frame.clearButton:SetScript("OnMouseUp", function(self) self.texture:Point("CENTER") end)
|
||||
frame.clearButton:SetScript("OnClick", function(self)
|
||||
local editBox = self:GetParent()
|
||||
editBox:SetText("")
|
||||
editBox:ClearFocus()
|
||||
end)
|
||||
|
||||
frame:SetScript("OnShow", nil)
|
||||
frame:SetScript("OnEditFocusLost", function(self)
|
||||
if self:GetText() == "" then
|
||||
self.searchIcon:SetVertexColor(0.6, 0.6, 0.6)
|
||||
self.clearButton:Hide()
|
||||
end
|
||||
end)
|
||||
frame:SetScript("OnEditFocusGained", function(self)
|
||||
self.searchIcon:SetVertexColor(1.0, 1.0, 1.0)
|
||||
self.clearButton:Show()
|
||||
end)
|
||||
frame:HookScript("OnTextChanged", function(self)
|
||||
if not self:HasFocus() and self:GetText() == "" then
|
||||
self.searchIcon:SetVertexColor(0.6, 0.6, 0.6)
|
||||
self.clearButton:Hide()
|
||||
else
|
||||
self.searchIcon:SetVertexColor(1.0, 1.0, 1.0)
|
||||
self.clearButton:Show()
|
||||
end
|
||||
if self:GetText() == "" then
|
||||
self.Instructions:Show()
|
||||
else
|
||||
self.Instructions:Hide()
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
S:AddCallbackForAddon("Blizzard_AuctionUI", "Enhanced_AuctionUI", function()
|
||||
SearchBoxTemplate(BrowseName)
|
||||
end)
|
||||
|
||||
S:AddCallbackForAddon("Blizzard_TradeSkillUI", "Enhanced_TradeSkillUI", function()
|
||||
SearchBoxTemplate(TradeSkillFrameEditBox)
|
||||
end)
|
||||
@@ -0,0 +1,15 @@
|
||||
local E, L, V, P, G = unpack(ElvUI)
|
||||
local mod = E:NewModule("Enhanced_Blizzard", "AceHook-3.0", "AceEvent-3.0")
|
||||
|
||||
function mod:Initialize()
|
||||
self:DeathRecap()
|
||||
self:AddonList()
|
||||
self:DressUpFrame()
|
||||
self:ErrorFrameSize()
|
||||
end
|
||||
|
||||
local function InitializeCallback()
|
||||
mod:Initialize()
|
||||
end
|
||||
|
||||
E:RegisterModule(mod:GetName(), InitializeCallback)
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,414 @@
|
||||
<Ui xmlns="http://www.blizzard.com/wow/ui/">
|
||||
<Frame name="CharacterStatFrameTemplate" virtual="true">
|
||||
<Size x="187" y="15"/>
|
||||
<Layers>
|
||||
<Layer level="ARTWORK">
|
||||
<FontString name="$parentLabel" justifyH="LEFT" inherits="GameFontNormalSmall" parentKey="Label">
|
||||
<Size x="122" y="0"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT">
|
||||
<Offset x="7" y="0"/>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
<FontString name="$parentStatText" justifyH="RIGHT" inherits="GameFontHighlightSmall" parentKey="Value">
|
||||
<Anchors>
|
||||
<Anchor point="RIGHT">
|
||||
<Offset x="-3" y="0"/>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Scripts>
|
||||
<OnEnter>
|
||||
PaperDollStatTooltip("player")
|
||||
</OnEnter>
|
||||
<OnLeave>
|
||||
GameTooltip:Hide()
|
||||
</OnLeave>
|
||||
</Scripts>
|
||||
</Frame>
|
||||
|
||||
<Button name="PlayerTitleButtonTemplate2" virtual="true">
|
||||
<Size x="169" y="22"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT">
|
||||
<Offset x="2" y="0"/>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="BACKGROUND">
|
||||
<Texture name="$parentStripe" parentKey="Stripe">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" x="1" y="0"/>
|
||||
<Anchor point="BOTTOMRIGHT" x="0" y="0"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
</Layer>
|
||||
<Layer level="BORDER">
|
||||
<Texture name="$parentCheck" file="Interface\Buttons\UI-CheckBox-Check" parentKey="Check">
|
||||
<Size x="16" y="16"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT">
|
||||
<Offset x="8" y="0"/>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
</Layer>
|
||||
<Layer level="OVERLAY">
|
||||
<Texture name="$parentSelectedBar" parentKey="SelectedBar" file="Interface\FriendsFrame\UI-FriendsFrame-HighlightBar" alpha="0.4" alphaMode="ADD" hidden="true"/>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Scripts>
|
||||
<OnClick>
|
||||
PlayerTitleButton_OnClick(self)
|
||||
</OnClick>
|
||||
</Scripts>
|
||||
<ButtonText name="$parentTitleText" inherits="GameFontNormalSmallLeft" justifyH="LEFT" parentKey="text">
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="$parentCheck" relativePoint="RIGHT" x="3" y="0"/>
|
||||
<Anchor point="RIGHT" x="-3" y="0"/>
|
||||
</Anchors>
|
||||
</ButtonText>
|
||||
<HighlightTexture file="Interface\AddOns\ElvUI_Enhanced\media\textures\UI-FriendsFrame-HighlightBar-Blue" alphaMode="ADD"/>
|
||||
</Button>
|
||||
|
||||
<Button name="GearSetButtonTemplate2" virtual="true">
|
||||
<Size x="169" y="44"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" x="2" y="0"/>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="BACKGROUND">
|
||||
<Texture name="$parentStripe" parentKey="Stripe">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" x="1" y="0"/>
|
||||
<Anchor point="BOTTOMRIGHT" x="0" y="0"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
</Layer>
|
||||
<Layer level="ARTWORK">
|
||||
<FontString name="$parentText" inherits="GameFontNormalLeft" parentKey="text">
|
||||
<Size x="98" y="38"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" x="44"/>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
</Layer>
|
||||
<Layer level="OVERLAY">
|
||||
<Texture name="$parentHighlightBar" parentKey="HighlightBar" file="Interface\AddOns\ElvUI_Enhanced\media\textures\UI-FriendsFrame-HighlightBar-Blue" alpha="0.4" alphaMode="ADD" hidden="true">
|
||||
<TexCoords left="0.2" right="0.8" top="0" bottom="1"/>
|
||||
</Texture>
|
||||
</Layer>
|
||||
<Layer level="OVERLAY">
|
||||
<Texture name="$parentSelectedBar" parentKey="SelectedBar" file="Interface\FriendsFrame\UI-FriendsFrame-HighlightBar" alpha="0.4" alphaMode="ADD" hidden="true">
|
||||
<TexCoords left="0.2" right="0.8" top="0" bottom="1"/>
|
||||
</Texture>
|
||||
</Layer>
|
||||
</Layers>
|
||||
|
||||
<Frames>
|
||||
<Button name="$parentDeleteButton" parentKey="DeleteButton" hidden="true">
|
||||
<Size>
|
||||
<AbsDimension x="14" y="14"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="BOTTOMRIGHT" x="-2" y="2"/>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="ARTWORK">
|
||||
<Texture file="Interface\Buttons\UI-GroupLoot-Pass-Up" alpha="0.5" parentKey="texture"/>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Scripts>
|
||||
<OnEnter>
|
||||
self.texture:SetAlpha(1.0)
|
||||
GameTooltip:SetOwner(self, "ANCHOR_RIGHT")
|
||||
GameTooltip:SetText(DELETE)
|
||||
</OnEnter>
|
||||
<OnLeave>
|
||||
self.texture:SetAlpha(0.5)
|
||||
GameTooltip_Hide()
|
||||
</OnLeave>
|
||||
<OnMouseDown>
|
||||
self.texture:SetPoint("TOPLEFT", 1, -1)
|
||||
</OnMouseDown>
|
||||
<OnMouseUp>
|
||||
self.texture:SetPoint("TOPLEFT", 0, 0)
|
||||
</OnMouseUp>
|
||||
<OnClick>
|
||||
local dialog = StaticPopup_Show("CONFIRM_DELETE_EQUIPMENT_SET", self:GetParent().name)
|
||||
if dialog then
|
||||
dialog.data = self:GetParent().name
|
||||
else
|
||||
UIErrorsFrame:AddMessage(ERR_CLIENT_LOCKED_OUT, 1.0, 0.1, 0.1, 1.0)
|
||||
end
|
||||
</OnClick>
|
||||
</Scripts>
|
||||
</Button>
|
||||
<Button name="$parentEditButton" parentKey="EditButton" hidden="true">
|
||||
<Size>
|
||||
<AbsDimension x="16" y="16"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="RIGHT" relativeTo="$parentDeleteButton" relativePoint="LEFT" x="-1"/>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="ARTWORK">
|
||||
<Texture file="Interface\WorldMap\GEAR_64GREY" alpha="0.5" parentKey="texture"/>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Scripts>
|
||||
<OnEnter>
|
||||
self.texture:SetAlpha(1.0)
|
||||
GameTooltip:SetOwner(self, "ANCHOR_RIGHT")
|
||||
GameTooltip:SetText(ElvUI[2]["Change Name/Icon"])
|
||||
</OnEnter>
|
||||
<OnLeave>
|
||||
self.texture:SetAlpha(0.5)
|
||||
GameTooltip_Hide()
|
||||
</OnLeave>
|
||||
<OnMouseDown>
|
||||
self.texture:SetPoint("TOPLEFT", 1, -1)
|
||||
</OnMouseDown>
|
||||
<OnMouseUp>
|
||||
self.texture:SetPoint("TOPLEFT", 0, 0)
|
||||
</OnMouseUp>
|
||||
<OnClick>
|
||||
GearSetButton_OnClick(self:GetParent())
|
||||
GearManagerDialogPopup:Show()
|
||||
GearManagerDialogPopup.isEdit = true
|
||||
GearManagerDialogPopup.origName = self:GetParent().name
|
||||
RecalculateGearManagerDialogPopup(self:GetParent().name, self:GetParent().icon:GetTexture())
|
||||
</OnClick>
|
||||
</Scripts>
|
||||
</Button>
|
||||
</Frames>
|
||||
<Scripts>
|
||||
<OnLoad>
|
||||
self:RegisterForDrag("LeftButton")
|
||||
self:CreateBackdrop("Default")
|
||||
self.backdrop:SetOutside(self.icon)
|
||||
self.icon:SetParent(self.backdrop)
|
||||
</OnLoad>
|
||||
<OnClick>
|
||||
if self.name and self.name ~= "" then
|
||||
PlaySound("igMainMenuOptionCheckBoxOn")
|
||||
PaperDollEquipmentManagerPane.selectedSetName = self.name
|
||||
PaperDollFrame_ClearIgnoredSlots()
|
||||
PaperDollFrame_IgnoreSlotsForSet(self.name)
|
||||
ElvUI[1]:GetModule('Enhanced_CharacterFrame'):PaperDollEquipmentManagerPane_Update()
|
||||
GearManagerDialogPopup:Hide()
|
||||
else
|
||||
GearManagerDialogPopup:Show()
|
||||
PaperDollEquipmentManagerPane.selectedSetName = nil
|
||||
GearManagerDialogPopup.selectedSetName = nil
|
||||
PaperDollFrame_ClearIgnoredSlots()
|
||||
ElvUI[1]:GetModule('Enhanced_CharacterFrame'):PaperDollEquipmentManagerPane_Update()
|
||||
end
|
||||
StaticPopup_Hide("CONFIRM_SAVE_EQUIPMENT_SET")
|
||||
StaticPopup_Hide("CONFIRM_OVERWRITE_EQUIPMENT_SET")
|
||||
</OnClick>
|
||||
<OnDoubleClick>
|
||||
local name = self.name
|
||||
if name and name ~= "" then
|
||||
PlaySound("igCharacterInfoTab")
|
||||
EquipmentManager_EquipSet(name)
|
||||
end
|
||||
</OnDoubleClick>
|
||||
<OnEnter>
|
||||
GearSetButton_OnEnter(self)
|
||||
</OnEnter>
|
||||
<OnLeave>
|
||||
GameTooltip:Hide()
|
||||
</OnLeave>
|
||||
<OnDragStart>
|
||||
if self.name and self.name ~= "" then
|
||||
PickupEquipmentSetByName(self.name)
|
||||
end
|
||||
</OnDragStart>
|
||||
</Scripts>
|
||||
<NormalTexture name="$parentIcon" parentKey="icon">
|
||||
<Size>
|
||||
<AbsDimension x="36" y="36"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="4" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<TexCoords left="0.08" right="0.92" top="0.08" bottom="0.92"/>
|
||||
</NormalTexture>
|
||||
</Button>
|
||||
|
||||
<Button name="MysticEnchantButtonTemplate2" virtual="true">
|
||||
<Size x="169" y="44"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" x="2" y="0"/>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="BACKGROUND">
|
||||
<Texture name="$parentStripe" parentKey="Stripe">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" x="1" y="0"/>
|
||||
<Anchor point="BOTTOMRIGHT" x="0" y="0"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
</Layer>
|
||||
<Layer level="ARTWORK">
|
||||
<FontString name="$parentText" inherits="GameFontNormalLeft" parentKey="text">
|
||||
<Size x="98" y="38"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" x="44"/>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
</Layer>
|
||||
<Layer level="OVERLAY">
|
||||
<Texture name="$parentHighlightBar" parentKey="HighlightBar" file="Interface\AddOns\ElvUI_Enhanced\media\textures\UI-FriendsFrame-HighlightBar-Blue" alpha="0.4" alphaMode="ADD" hidden="true">
|
||||
<TexCoords left="0.2" right="0.8" top="0" bottom="1"/>
|
||||
</Texture>
|
||||
</Layer>
|
||||
</Layers>
|
||||
|
||||
<Scripts>
|
||||
<OnLoad>
|
||||
self:CreateBackdrop("Default")
|
||||
self.backdrop:SetOutside(self.icon)
|
||||
self.icon:SetParent(self.backdrop)
|
||||
</OnLoad>
|
||||
<OnEnter>
|
||||
if self.enchant then
|
||||
local RE = GetREData(self.enchant)
|
||||
GameTooltip:SetOwner(self, "ANCHOR_RIGHT")
|
||||
GameTooltip:SetHyperlink("spell:"..RE.spellID)
|
||||
GameTooltip:Show()
|
||||
end
|
||||
</OnEnter>
|
||||
<OnLeave>
|
||||
GameTooltip:Hide()
|
||||
</OnLeave>
|
||||
</Scripts>
|
||||
<NormalTexture name="$parentIcon" parentKey="icon">
|
||||
<Size>
|
||||
<AbsDimension x="36" y="36"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="4" y="0"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
<TexCoords left="0.08" right="0.92" top="0.08" bottom="0.92"/>
|
||||
</NormalTexture>
|
||||
</Button>
|
||||
|
||||
<Button name="CompanionButtonTemplate2" virtual="true">
|
||||
<Size x="169" y="44"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" x="2" y="0"/>
|
||||
</Anchors>
|
||||
<Layers>
|
||||
<Layer level="BACKGROUND">
|
||||
<Texture name="$parentStripe" parentKey="Stripe">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" x="0" y="0"/>
|
||||
<Anchor point="BOTTOMRIGHT" x="0" y="0"/>
|
||||
</Anchors>
|
||||
</Texture>
|
||||
</Layer>
|
||||
<Layer level="BORDER">
|
||||
<Texture name="$parentIcon" parentKey="icon">
|
||||
<Size x="36" y="36"/>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" x="4" y="0"/>
|
||||
</Anchors>
|
||||
<TexCoords left="0.08" right="0.92" top="0.08" bottom="0.92"/>
|
||||
</Texture>
|
||||
</Layer>
|
||||
<Layer level="ARTWORK">
|
||||
<FontString name="$parentName" parentKey="name" inherits="GameFontNormal" justifyH="LEFT">
|
||||
<Size x="98" y="38"/>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativePoint="TOPRIGHT" relativeTo="$parentIcon" x="5" y="0"/>
|
||||
</Anchors>
|
||||
</FontString>
|
||||
</Layer>
|
||||
<Layer level="OVERLAY">
|
||||
<Texture name="$parentHighlightBar" parentKey="HighlightBar" file="Interface\AddOns\ElvUI_Enhanced\media\textures\UI-FriendsFrame-HighlightBar-Blue" alpha="0.4" alphaMode="ADD" hidden="true">
|
||||
<TexCoords left="0.2" right="0.8" top="0" bottom="1"/>
|
||||
</Texture>
|
||||
</Layer>
|
||||
<Layer level="OVERLAY">
|
||||
<Texture name="$parentSelectedBar" parentKey="SelectedBar" hidden="true"/>
|
||||
</Layer>
|
||||
</Layers>
|
||||
<Frames>
|
||||
<Cooldown name="$parentCooldown" inherits="CooldownFrameTemplate"/>
|
||||
</Frames>
|
||||
<Scripts>
|
||||
<OnLoad>
|
||||
self.Stripe:SetInside()
|
||||
self.HighlightBar:SetInside()
|
||||
self.SelectedBar:SetInside()
|
||||
CompanionButton_OnLoad(self)
|
||||
self:CreateBackdrop("Default")
|
||||
self.backdrop:SetOutside(self.icon)
|
||||
_G[self:GetName() .. "Cooldown"]:SetInside(self.icon)
|
||||
_G[self:GetName() .. "Cooldown"]:SetParent(self.backdrop)
|
||||
self.icon:SetParent(self.backdrop)
|
||||
</OnLoad>
|
||||
<OnClick>
|
||||
if IsModifiedClick() then
|
||||
CompanionButton_OnModifiedClick(self, button)
|
||||
else
|
||||
local selected, selectedID
|
||||
if PetPaperDollFrameCompanionFrame.mode == "CRITTER" then
|
||||
selected = PetPaperDollFrame_FindCompanionIndex(PetPaperDollFrameCompanionFrame.idCritter)
|
||||
selectedID = PetPaperDollFrameCompanionFrame.idCritter
|
||||
elseif PetPaperDollFrameCompanionFrame.mode == "MOUNT" then
|
||||
selected = PetPaperDollFrame_FindCompanionIndex(PetPaperDollFrameCompanionFrame.idMount)
|
||||
selectedID = PetPaperDollFrameCompanionFrame.idMount
|
||||
end
|
||||
|
||||
if button ~= "LeftButton" or selectedID == self.creatureID then
|
||||
local index = self:GetID()
|
||||
if self.active then
|
||||
DismissCompanion(PetPaperDollFrameCompanionFrame.mode)
|
||||
else
|
||||
CallCompanion(PetPaperDollFrameCompanionFrame.mode, index)
|
||||
end
|
||||
else
|
||||
if PetPaperDollFrameCompanionFrame.mode == "CRITTER" then
|
||||
PetPaperDollFrameCompanionFrame.idCritter = self.creatureID
|
||||
PetPaperDollFrame_UpdateCompanionPreview()
|
||||
elseif PetPaperDollFrameCompanionFrame.mode == "MOUNT" then
|
||||
PetPaperDollFrameCompanionFrame.idMount = self.creatureID
|
||||
PetPaperDollFrame_UpdateCompanionPreview()
|
||||
end
|
||||
end
|
||||
|
||||
ElvUI[1]:GetModule("Enhanced_CharacterFrame"):PetPaperDollCompanionPane_Update()
|
||||
end
|
||||
PlaySound("igMainMenuOptionCheckBoxOn")
|
||||
</OnClick>
|
||||
<OnDragStart>
|
||||
PickupCompanion(PetPaperDollFrameCompanionFrame.mode, self:GetID())
|
||||
</OnDragStart>
|
||||
<OnReceiveDrag>
|
||||
PickupCompanion(PetPaperDollFrameCompanionFrame.mode, self:GetID())
|
||||
</OnReceiveDrag>
|
||||
<OnEnter>
|
||||
CompanionButton_OnEnter(self, motion)
|
||||
self.HighlightBar:Show()
|
||||
</OnEnter>
|
||||
<OnLeave>
|
||||
GameTooltip:Hide()
|
||||
self.HighlightBar:Hide()
|
||||
</OnLeave>
|
||||
</Scripts>
|
||||
</Button>
|
||||
</Ui>
|
||||
@@ -0,0 +1,592 @@
|
||||
local E, L, V, P, G = unpack(ElvUI)
|
||||
local mod = E:GetModule("Enhanced_Blizzard")
|
||||
|
||||
local _G = _G
|
||||
local select = select
|
||||
local tonumber = tonumber
|
||||
local unpack = unpack
|
||||
local band = bit.band
|
||||
local ceil, floor = math.ceil, math.floor
|
||||
local format, upper, split, sub = string.format, string.upper, string.split, string.sub
|
||||
local tsort, twipe = table.sort, table.wipe
|
||||
|
||||
local CannotBeResurrected = CannotBeResurrected
|
||||
local CopyTable = CopyTable
|
||||
local CreateFrame = CreateFrame
|
||||
local GetReleaseTimeRemaining = GetReleaseTimeRemaining
|
||||
local GetSpellInfo = GetSpellInfo
|
||||
local GetSpellLink = GetSpellLink
|
||||
local HasSoulstone = HasSoulstone
|
||||
local IsActiveBattlefieldArena = IsActiveBattlefieldArena
|
||||
local IsFalling = IsFalling
|
||||
local IsOutOfBounds = IsOutOfBounds
|
||||
local RepopMe = RepopMe
|
||||
local UnitHealth = UnitHealth
|
||||
local UnitHealthMax = UnitHealthMax
|
||||
local UseSoulstone = UseSoulstone
|
||||
|
||||
local ACTION_SWING = ACTION_SWING
|
||||
local ARENA_SPECTATOR = ARENA_SPECTATOR
|
||||
local COMBATLOG_FILTER_ME = COMBATLOG_FILTER_ME
|
||||
local COMBATLOG_UNKNOWN_UNIT = COMBATLOG_UNKNOWN_UNIT
|
||||
local DEATH_RELEASE_NOTIMER = DEATH_RELEASE_NOTIMER
|
||||
local DEATH_RELEASE_SPECTATOR = DEATH_RELEASE_SPECTATOR
|
||||
local DEATH_RELEASE_TIMER = DEATH_RELEASE_TIMER
|
||||
local MINUTES = MINUTES
|
||||
local SECONDS = SECONDS
|
||||
local TEXT_MODE_A_STRING_VALUE_SCHOOL = TEXT_MODE_A_STRING_VALUE_SCHOOL
|
||||
|
||||
local lastDeathEvents
|
||||
local index = 0
|
||||
local deathList = {}
|
||||
local eventList = {}
|
||||
|
||||
local function AddEvent(timestamp, event, sourceName, spellId, spellName, environmentalType, amount, overkill, school, resisted, blocked, absorbed)
|
||||
if index > 0 and eventList[index].timestamp + 10 <= timestamp then
|
||||
index = 0
|
||||
twipe(eventList)
|
||||
end
|
||||
|
||||
if index < 5 then
|
||||
index = index + 1
|
||||
else
|
||||
index = 1
|
||||
end
|
||||
|
||||
if not eventList[index] then
|
||||
eventList[index] = {}
|
||||
else
|
||||
twipe(eventList[index])
|
||||
end
|
||||
|
||||
eventList[index].timestamp = timestamp
|
||||
eventList[index].event = event
|
||||
eventList[index].sourceName = sourceName
|
||||
eventList[index].spellId = spellId
|
||||
eventList[index].spellName = spellName
|
||||
eventList[index].environmentalType = environmentalType
|
||||
eventList[index].amount = amount
|
||||
eventList[index].overkill = overkill
|
||||
eventList[index].school = school
|
||||
eventList[index].resisted = resisted
|
||||
eventList[index].blocked = blocked
|
||||
eventList[index].absorbed = absorbed
|
||||
eventList[index].currentHP = UnitHealth("player")
|
||||
eventList[index].maxHP = UnitHealthMax("player")
|
||||
end
|
||||
|
||||
local function HasEvents()
|
||||
if lastDeathEvents then
|
||||
return #deathList > 0, #deathList
|
||||
else
|
||||
return false, #deathList
|
||||
end
|
||||
end
|
||||
|
||||
local function EraseEvents()
|
||||
if index > 0 then
|
||||
index = 0
|
||||
twipe(eventList)
|
||||
end
|
||||
end
|
||||
|
||||
local function AddDeath()
|
||||
if #eventList > 0 then
|
||||
local _, deathEvents = HasEvents()
|
||||
local deathIndex = deathEvents + 1
|
||||
deathList[deathIndex] = CopyTable(eventList)
|
||||
EraseEvents()
|
||||
|
||||
DEFAULT_CHAT_FRAME:AddMessage("|cff71d5ff|Hdeath:"..deathIndex.."|h["..L["You died."].."]|h|r")
|
||||
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
local function GetDeathEvents(recapID)
|
||||
if recapID and deathList[recapID] then
|
||||
local deathEvents = deathList[recapID]
|
||||
tsort(deathEvents, function(a, b) return a.timestamp > b.timestamp end)
|
||||
return deathEvents
|
||||
end
|
||||
end
|
||||
|
||||
local function GetTableInfo(data)
|
||||
local texture
|
||||
local nameIsNotSpell = false
|
||||
|
||||
local event = data.event
|
||||
local spellId = data.spellId
|
||||
local spellName = data.spellName
|
||||
|
||||
if event == "SWING_DAMAGE" then
|
||||
spellId = 6603
|
||||
spellName = ACTION_SWING
|
||||
|
||||
nameIsNotSpell = true
|
||||
elseif event == "RANGE_DAMAGE" then
|
||||
nameIsNotSpell = true
|
||||
-- elseif sub(event, 1, 5) == "SPELL" then
|
||||
elseif event == "ENVIRONMENTAL_DAMAGE" then
|
||||
local environmentalType = data.environmentalType
|
||||
environmentalType = upper(environmentalType)
|
||||
spellName = _G["ACTION_ENVIRONMENTAL_DAMAGE_"..environmentalType]
|
||||
nameIsNotSpell = true
|
||||
|
||||
if environmentalType == "DROWNING" then
|
||||
texture = "spell_shadow_demonbreath"
|
||||
elseif environmentalType == "FALLING" then
|
||||
texture = "ability_rogue_quickrecovery"
|
||||
elseif environmentalType == "FIRE" or environmentalType == "LAVA" then
|
||||
texture = "spell_fire_fire"
|
||||
elseif environmentalType == "SLIME" then
|
||||
texture = "inv_misc_slime_01"
|
||||
elseif environmentalType == "FATIGUE" then
|
||||
texture = "ability_creature_cursed_05"
|
||||
else
|
||||
texture = "ability_creature_cursed_05"
|
||||
end
|
||||
|
||||
texture = "Interface\\Icons\\" .. texture
|
||||
end
|
||||
|
||||
if spellName and nameIsNotSpell then
|
||||
spellName = format("|Haction:%s|h%s|h", event, spellName)
|
||||
end
|
||||
|
||||
if spellId and not texture then
|
||||
texture = select(3, GetSpellInfo(spellId))
|
||||
end
|
||||
|
||||
return spellId, spellName, texture
|
||||
end
|
||||
|
||||
local function OpenRecap(recapID)
|
||||
local self = ElvUI_DeathRecapFrame
|
||||
|
||||
if self:IsShown() and self.recapID == recapID then
|
||||
self:Hide()
|
||||
return
|
||||
end
|
||||
|
||||
local deathEvents = GetDeathEvents(recapID)
|
||||
if not deathEvents then return end
|
||||
|
||||
self.recapID = recapID
|
||||
self:Show()
|
||||
|
||||
if not deathEvents or #deathEvents <= 0 then
|
||||
for i = 1, 5 do
|
||||
self.DeathRecapEntry[i]:Hide()
|
||||
end
|
||||
|
||||
self.Unavailable:Show()
|
||||
|
||||
return
|
||||
end
|
||||
|
||||
self.Unavailable:Hide()
|
||||
|
||||
local highestDmgIdx, highestDmgAmount = 1, 0
|
||||
self.DeathTimeStamp = nil
|
||||
|
||||
for i = 1, #deathEvents do
|
||||
local entry = self.DeathRecapEntry[i]
|
||||
local dmgInfo = entry.DamageInfo
|
||||
local evtData = deathEvents[i]
|
||||
local spellId, spellName, texture = GetTableInfo(evtData)
|
||||
|
||||
entry:Show()
|
||||
self.DeathTimeStamp = self.DeathTimeStamp or evtData.timestamp
|
||||
|
||||
if evtData.amount then
|
||||
local amountStr = -evtData.amount
|
||||
dmgInfo.Amount:SetText(amountStr)
|
||||
dmgInfo.AmountLarge:SetText(amountStr)
|
||||
dmgInfo.amount = evtData.amount
|
||||
|
||||
dmgInfo.dmgExtraStr = ""
|
||||
if evtData.overkill and evtData.overkill > 0 then
|
||||
dmgInfo.dmgExtraStr = format(L["(%d Overkill)"], evtData.overkill)
|
||||
dmgInfo.amount = evtData.amount - evtData.overkill
|
||||
end
|
||||
if evtData.absorbed and evtData.absorbed > 0 then
|
||||
dmgInfo.dmgExtraStr = dmgInfo.dmgExtraStr.." "..format(L["(%d Absorbed)"], evtData.absorbed)
|
||||
dmgInfo.amount = evtData.amount - evtData.absorbed
|
||||
end
|
||||
if evtData.resisted and evtData.resisted > 0 then
|
||||
dmgInfo.dmgExtraStr = dmgInfo.dmgExtraStr.." "..format(L["(%d Resisted)"], evtData.resisted)
|
||||
dmgInfo.amount = evtData.amount - evtData.resisted
|
||||
end
|
||||
if evtData.blocked and evtData.blocked > 0 then
|
||||
dmgInfo.dmgExtraStr = dmgInfo.dmgExtraStr.." "..format(L["(%d Blocked)"], evtData.blocked)
|
||||
dmgInfo.amount = evtData.amount - evtData.blocked
|
||||
end
|
||||
|
||||
if evtData.amount > highestDmgAmount then
|
||||
highestDmgIdx = i
|
||||
highestDmgAmount = evtData.amount
|
||||
end
|
||||
|
||||
dmgInfo.Amount:Show()
|
||||
dmgInfo.AmountLarge:Hide()
|
||||
else
|
||||
dmgInfo.Amount:SetText("")
|
||||
dmgInfo.AmountLarge:SetText("")
|
||||
dmgInfo.amount = nil
|
||||
dmgInfo.dmgExtraStr = nil
|
||||
end
|
||||
|
||||
dmgInfo.timestamp = evtData.timestamp
|
||||
dmgInfo.hpPercent = floor(evtData.currentHP / evtData.maxHP * 100)
|
||||
|
||||
dmgInfo.spellName = spellName
|
||||
|
||||
dmgInfo.caster = evtData.sourceName or COMBATLOG_UNKNOWN_UNIT
|
||||
|
||||
if evtData.school and evtData.school > 1 then
|
||||
local colorArray = CombatLog_Color_ColorArrayBySchool(evtData.school)
|
||||
entry.SpellInfo.FrameIcon:SetBackdropBorderColor(colorArray.r, colorArray.g, colorArray.b)
|
||||
else
|
||||
entry.SpellInfo.FrameIcon:SetBackdropBorderColor(unpack(E.media.bordercolor))
|
||||
end
|
||||
|
||||
dmgInfo.school = evtData.school
|
||||
|
||||
entry.SpellInfo.Caster:SetText(dmgInfo.caster)
|
||||
|
||||
entry.SpellInfo.Name:SetText(spellName)
|
||||
entry.SpellInfo.Icon:SetTexture(texture)
|
||||
|
||||
entry.SpellInfo.spellId = spellId
|
||||
end
|
||||
|
||||
for i = #deathEvents + 1, #self.DeathRecapEntry do
|
||||
self.DeathRecapEntry[i]:Hide()
|
||||
end
|
||||
|
||||
local entry = self.DeathRecapEntry[highestDmgIdx]
|
||||
if entry.DamageInfo.amount then
|
||||
entry.DamageInfo.Amount:Hide()
|
||||
entry.DamageInfo.AmountLarge:Show()
|
||||
end
|
||||
|
||||
local deathEntry = self.DeathRecapEntry[1]
|
||||
local tombstoneIcon = deathEntry.tombstone
|
||||
if entry == deathEntry then
|
||||
tombstoneIcon:Point("RIGHT", deathEntry.DamageInfo.AmountLarge, "LEFT", -10, 0)
|
||||
end
|
||||
end
|
||||
|
||||
local function Spell_OnEnter(self)
|
||||
if self.spellId then
|
||||
GameTooltip:SetOwner(self, "ANCHOR_RIGHT")
|
||||
GameTooltip:SetHyperlink(GetSpellLink(self.spellId))
|
||||
GameTooltip:Show()
|
||||
end
|
||||
end
|
||||
|
||||
local function Amount_OnEnter(self)
|
||||
GameTooltip:SetOwner(self, "ANCHOR_LEFT")
|
||||
GameTooltip:ClearLines()
|
||||
|
||||
if self.amount then
|
||||
local valueStr = self.school and format(TEXT_MODE_A_STRING_VALUE_SCHOOL, self.amount, CombatLog_String_SchoolString(self.school)) or self.amount
|
||||
GameTooltip:AddLine(format(L["%s %s"], valueStr, self.dmgExtraStr), 1, 0, 0, false)
|
||||
end
|
||||
|
||||
if self.spellName then
|
||||
if self.caster then
|
||||
GameTooltip:AddLine(format(L["%s by %s"], self.spellName, self.caster), 1, 1, 1, true)
|
||||
else
|
||||
GameTooltip:AddLine(self.spellName, 1, 1, 1, true)
|
||||
end
|
||||
end
|
||||
|
||||
local seconds = ElvUI_DeathRecapFrame.DeathTimeStamp - self.timestamp
|
||||
if seconds > 0 then
|
||||
GameTooltip:AddLine(format(L["%s sec before death at %s%% health."], format("%.1F", seconds), self.hpPercent), 1, 0.824, 0, true)
|
||||
else
|
||||
GameTooltip:AddLine(format(L["Killing blow at %s%% health."], self.hpPercent), 1, 0.824, 0, true)
|
||||
end
|
||||
|
||||
GameTooltip:Show()
|
||||
end
|
||||
|
||||
function mod:HideDeathPopup()
|
||||
E:StaticPopup_Hide("DEATH")
|
||||
end
|
||||
|
||||
function mod:PLAYER_DEAD()
|
||||
if StaticPopup_FindVisible("DEATH") then
|
||||
if AddDeath() then
|
||||
lastDeathEvents = true
|
||||
else
|
||||
lastDeathEvents = false
|
||||
end
|
||||
|
||||
StaticPopup_Hide("DEATH")
|
||||
E:StaticPopup_Show("DEATH", GetReleaseTimeRemaining(), SECONDS)
|
||||
end
|
||||
end
|
||||
|
||||
function mod:COMBAT_LOG_EVENT_UNFILTERED(_, timestamp, event, _, sourceName, sourceFlags, destGUID, destName, destFlags, ...)
|
||||
if (band(destFlags, COMBATLOG_FILTER_ME) ~= COMBATLOG_FILTER_ME) or (band(sourceFlags, COMBATLOG_FILTER_ME) == COMBATLOG_FILTER_ME) then return end
|
||||
if event ~= "ENVIRONMENTAL_DAMAGE"
|
||||
and event ~= "RANGE_DAMAGE"
|
||||
and event ~= "SPELL_DAMAGE"
|
||||
and event ~= "SPELL_EXTRA_ATTACKS"
|
||||
and event ~= "SPELL_INSTAKILL"
|
||||
and event ~= "SPELL_PERIODIC_DAMAGE"
|
||||
and event ~= "SWING_DAMAGE"
|
||||
then return end
|
||||
|
||||
local subVal = sub(event, 1, 5)
|
||||
local environmentalType, spellId, spellName, amount, overkill, school, resisted, blocked, absorbed
|
||||
|
||||
if event == "SWING_DAMAGE" then
|
||||
amount, overkill, school, resisted, blocked, absorbed = ...
|
||||
elseif subVal == "SPELL" then
|
||||
spellId, spellName, _, amount, overkill, school, resisted, blocked, absorbed = ...
|
||||
elseif event == "ENVIRONMENTAL_DAMAGE" then
|
||||
environmentalType, amount, overkill, school, resisted, blocked, absorbed = ...
|
||||
end
|
||||
|
||||
if not tonumber(amount) then return end
|
||||
|
||||
AddEvent(timestamp, event, sourceName, spellId, spellName, environmentalType, amount, overkill, school, resisted, blocked, absorbed)
|
||||
end
|
||||
|
||||
function mod:SetItemRef(link, ...)
|
||||
if sub(link, 1, 5) == "death" then
|
||||
local _, id = split(":", link)
|
||||
OpenRecap(tonumber(id))
|
||||
return
|
||||
else
|
||||
self.hooks.SetItemRef(link, ...)
|
||||
end
|
||||
end
|
||||
|
||||
function mod:DeathRecap()
|
||||
if DeathRecapFrame then return end
|
||||
if not E.private.enhanced.deathRecap then return end
|
||||
|
||||
local S = E:GetModule("Skins")
|
||||
|
||||
local frame = CreateFrame("Frame", "ElvUI_DeathRecapFrame", UIParent)
|
||||
frame:Size(340, 326)
|
||||
frame:Point("CENTER")
|
||||
frame:SetTemplate("Transparent")
|
||||
frame:SetMovable(true)
|
||||
frame:Hide()
|
||||
frame:SetScript("OnHide", function(self) self.recapID = nil end)
|
||||
tinsert(UISpecialFrames, frame:GetName())
|
||||
|
||||
frame.Title = frame:CreateFontString("ARTWORK", nil, "GameFontNormal")
|
||||
frame.Title:Point("TOPLEFT", 12, -9)
|
||||
frame.Title:SetText(L["Death Recap"])
|
||||
|
||||
frame.Unavailable = frame:CreateFontString("ARTWORK", nil, "GameFontNormal")
|
||||
frame.Unavailable:Point("CENTER")
|
||||
frame.Unavailable:SetText(L["Death Recap unavailable."])
|
||||
|
||||
frame.CloseXButton = CreateFrame("Button", "$parentCloseXButton", frame)
|
||||
frame.CloseXButton:Size(32, 32)
|
||||
frame.CloseXButton:Point("TOPRIGHT", 2, 1)
|
||||
frame.CloseXButton:SetScript("OnClick", function(self) self:GetParent():Hide() end)
|
||||
S:HandleCloseButton(frame.CloseXButton)
|
||||
|
||||
frame.DragButton = CreateFrame("Button", "$parentDragButton", frame)
|
||||
frame.DragButton:Point("TOPLEFT", 0, 0)
|
||||
frame.DragButton:Point("BOTTOMRIGHT", frame, "TOPRIGHT", 0, -32)
|
||||
frame.DragButton:RegisterForDrag("LeftButton")
|
||||
frame.DragButton:SetScript("OnDragStart", function(self) self:GetParent():StartMoving() end)
|
||||
frame.DragButton:SetScript("OnDragStop", function(self) self:GetParent():StopMovingOrSizing() end)
|
||||
|
||||
frame.DeathRecapEntry = {}
|
||||
|
||||
for i = 1, 5 do
|
||||
local button = CreateFrame("Frame", nil, frame)
|
||||
button:Size(308, 32)
|
||||
frame.DeathRecapEntry[i] = button
|
||||
|
||||
button.DamageInfo = CreateFrame("Button", nil, button)
|
||||
button.DamageInfo:Point("TOPLEFT", 0, 0)
|
||||
button.DamageInfo:Point("BOTTOMRIGHT", button, "BOTTOMLEFT", 80, 0)
|
||||
button.DamageInfo:SetScript("OnEnter", Amount_OnEnter)
|
||||
button.DamageInfo:SetScript("OnLeave", GameTooltip_Hide)
|
||||
|
||||
button.DamageInfo.Amount = button.DamageInfo:CreateFontString("ARTWORK", nil, "GameFontNormalRight")
|
||||
button.DamageInfo.Amount:SetJustifyH("RIGHT")
|
||||
button.DamageInfo.Amount:SetJustifyV("CENTER")
|
||||
button.DamageInfo.Amount:Size(0, 32)
|
||||
button.DamageInfo.Amount:Point("TOPRIGHT", 0, 0)
|
||||
button.DamageInfo.Amount:SetTextColor(0.75, 0.05, 0.05, 1)
|
||||
|
||||
button.DamageInfo.AmountLarge = button.DamageInfo:CreateFontString("ARTWORK", nil, "NumberFont_Outline_Large")
|
||||
button.DamageInfo.AmountLarge:SetJustifyH("RIGHT")
|
||||
button.DamageInfo.AmountLarge:SetJustifyV("CENTER")
|
||||
button.DamageInfo.AmountLarge:Size(0, 32)
|
||||
button.DamageInfo.AmountLarge:Point("TOPRIGHT", 0, 0)
|
||||
button.DamageInfo.AmountLarge:SetTextColor(1, 0.07, 0.07, 1)
|
||||
|
||||
button.SpellInfo = CreateFrame("Button", nil, button)
|
||||
button.SpellInfo:Point("TOPLEFT", button.DamageInfo, "TOPRIGHT", 16, 0)
|
||||
button.SpellInfo:Point("BOTTOMRIGHT", 0, 0)
|
||||
button.SpellInfo:SetScript("OnEnter", Spell_OnEnter)
|
||||
button.SpellInfo:SetScript("OnLeave", GameTooltip_Hide)
|
||||
|
||||
button.SpellInfo.FrameIcon = CreateFrame("Button", nil, button.SpellInfo)
|
||||
button.SpellInfo.FrameIcon:Size(34, 34)
|
||||
button.SpellInfo.FrameIcon:Point("LEFT", 0, 0)
|
||||
button.SpellInfo.FrameIcon:SetTemplate("Default")
|
||||
|
||||
button.SpellInfo.Icon = button.SpellInfo:CreateTexture("ARTWORK")
|
||||
button.SpellInfo.Icon:SetParent(button.SpellInfo.FrameIcon)
|
||||
button.SpellInfo.Icon:SetTexCoord(unpack(E.TexCoords))
|
||||
button.SpellInfo.Icon:SetInside()
|
||||
|
||||
button.SpellInfo.Name = button.SpellInfo:CreateFontString("ARTWORK", nil, "GameFontNormal")
|
||||
button.SpellInfo.Name:SetJustifyH("LEFT")
|
||||
button.SpellInfo.Name:SetJustifyV("BOTTOM")
|
||||
button.SpellInfo.Name:Point("BOTTOMLEFT", button.SpellInfo.Icon, "RIGHT", 8, 1)
|
||||
button.SpellInfo.Name:Point("TOPRIGHT", 0, 0)
|
||||
|
||||
button.SpellInfo.Caster = button.SpellInfo:CreateFontString("ARTWORK", nil, "SystemFont_Shadow_Small")
|
||||
button.SpellInfo.Caster:SetJustifyH("LEFT")
|
||||
button.SpellInfo.Caster:SetJustifyV("TOP")
|
||||
button.SpellInfo.Caster:Point("TOPLEFT", button.SpellInfo.Icon, "RIGHT", 8, -2)
|
||||
button.SpellInfo.Caster:Point("BOTTOMRIGHT", 0, 0)
|
||||
button.SpellInfo.Caster:SetTextColor(0.5, 0.5, 0.5, 1)
|
||||
|
||||
if i == 1 then
|
||||
button:Point("BOTTOMLEFT", 16, 64)
|
||||
button.tombstone = button:CreateTexture("ARTWORK")
|
||||
button.tombstone:Size(15, 20)
|
||||
button.tombstone:Point("RIGHT", button.DamageInfo.Amount, "LEFT", -10, 0)
|
||||
button.tombstone:SetTexCoord(0.658203125, 0.6875, 0.00390625, 0.08203125)
|
||||
button.tombstone:SetTexture("Interface\\AddOns\\ElvUI_Enhanced\\media\\textures\\DeathRecap")
|
||||
else
|
||||
button:Point("BOTTOM", frame.DeathRecapEntry[i - 1], "TOP", 0, 14)
|
||||
end
|
||||
end
|
||||
|
||||
frame.CloseButton = CreateFrame("Button", nil, frame, "UIPanelButtonTemplate")
|
||||
frame.CloseButton:Size(144, 21)
|
||||
frame.CloseButton:Point("BOTTOM", 0, 15)
|
||||
frame.CloseButton:SetText(CLOSE)
|
||||
frame.CloseButton:SetScript("OnClick", function(self) ElvUI_DeathRecapFrame:Hide() end)
|
||||
S:HandleButton(frame.CloseButton)
|
||||
|
||||
self:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
|
||||
self:RegisterEvent("PLAYER_DEAD")
|
||||
self:RegisterEvent("PLAYER_ENTERING_WORLD", "HideDeathPopup")
|
||||
self:RegisterEvent("RESURRECT_REQUEST", "HideDeathPopup")
|
||||
self:RegisterEvent("PLAYER_ALIVE", "HideDeathPopup")
|
||||
self:RegisterEvent("RAISED_AS_GHOUL", "HideDeathPopup")
|
||||
|
||||
self:RawHook("SetItemRef", true)
|
||||
|
||||
E.PopupDialogs["DEATH"] = {
|
||||
text = DEATH_RELEASE_TIMER,
|
||||
button1 = DEATH_RELEASE,
|
||||
button2 = USE_SOULSTONE,
|
||||
button3 = L["Death Recap"],
|
||||
OnShow = function(self)
|
||||
self.timeleft = GetReleaseTimeRemaining()
|
||||
local text = HasSoulstone()
|
||||
if text then
|
||||
self.button2:SetText(text)
|
||||
end
|
||||
|
||||
if IsActiveBattlefieldArena() then
|
||||
self.text:SetText(DEATH_RELEASE_SPECTATOR)
|
||||
elseif self.timeleft == -1 then
|
||||
self.text:SetText(DEATH_RELEASE_NOTIMER)
|
||||
end
|
||||
if HasEvents() then
|
||||
self.button3:Enable()
|
||||
self.button3:SetScript("OnEnter", S.SetModifiedBackdrop)
|
||||
self.button3:SetScript("OnLeave", S.SetOriginalBackdrop)
|
||||
else
|
||||
self.button3:Disable()
|
||||
self.button3:SetScript("OnEnter", function(self)
|
||||
GameTooltip:SetOwner(self, "ANCHOR_BOTTOMRIGHT")
|
||||
GameTooltip:SetText(L["Death Recap unavailable."])
|
||||
GameTooltip:Show()
|
||||
end)
|
||||
self.button3:SetScript("OnLeave", GameTooltip_Hide)
|
||||
end
|
||||
end,
|
||||
OnHide = function(self)
|
||||
self.button3:SetScript("OnEnter", nil)
|
||||
self.button3:SetScript("OnLeave", nil)
|
||||
ElvUI_DeathRecapFrame:Hide()
|
||||
end,
|
||||
OnAccept = function(self)
|
||||
if IsActiveBattlefieldArena() then
|
||||
local info = ChatTypeInfo["SYSTEM"]
|
||||
DEFAULT_CHAT_FRAME:AddMessage(ARENA_SPECTATOR, info.r, info.g, info.b, info.id)
|
||||
end
|
||||
RepopMe()
|
||||
if CannotBeResurrected() then
|
||||
return 1
|
||||
end
|
||||
end,
|
||||
OnCancel = function(self, data, reason)
|
||||
if reason == "override" then
|
||||
StaticPopup_Show("RECOVER_CORPSE")
|
||||
return
|
||||
end
|
||||
if reason == "timeout" then
|
||||
return
|
||||
end
|
||||
if reason == "clicked" then
|
||||
if HasSoulstone() then
|
||||
UseSoulstone()
|
||||
else
|
||||
RepopMe()
|
||||
end
|
||||
if CannotBeResurrected() then
|
||||
return 1
|
||||
end
|
||||
end
|
||||
end,
|
||||
OnAlt = function()
|
||||
local _, recapID = HasEvents()
|
||||
OpenRecap(recapID)
|
||||
end,
|
||||
OnUpdate = function(self, elapsed)
|
||||
if self.timeleft > 0 then
|
||||
local text = _G[self:GetName().."Text"]
|
||||
local timeleft = self.timeleft
|
||||
if timeleft < 60 then
|
||||
text:SetFormattedText(DEATH_RELEASE_TIMER, timeleft, SECONDS)
|
||||
else
|
||||
text:SetFormattedText(DEATH_RELEASE_TIMER, ceil(timeleft / 60), MINUTES)
|
||||
end
|
||||
end
|
||||
|
||||
if IsFalling() and not IsOutOfBounds() then
|
||||
self.button1:Disable()
|
||||
self.button2:Disable()
|
||||
return
|
||||
else
|
||||
self.button1:Enable()
|
||||
end
|
||||
if HasSoulstone() then
|
||||
self.button2:Enable()
|
||||
else
|
||||
self.button2:Disable()
|
||||
end
|
||||
end,
|
||||
DisplayButton2 = HasSoulstone,
|
||||
|
||||
timeout = 0,
|
||||
whileDead = 1,
|
||||
interruptCinematic = 1,
|
||||
noCancelOnReuse = 1,
|
||||
hideOnEscape = false,
|
||||
noCloseOnAlt = true
|
||||
}
|
||||
end
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user