From 3b035796af915275abca3535867bc9ba3b86e6a6 Mon Sep 17 00:00:00 2001 From: Darth Predator Date: Mon, 3 Apr 2017 00:27:29 +0300 Subject: [PATCH] Adopt Blaze's new AP calculation --- .../Armory/CharacterArmory/CharacterArmory.lua | 33 +++++++++--------- ElvUI_SLE/modules/bags/artifactpower.lua | 35 +++++++++++--------- 2 files changed, 36 insertions(+), 32 deletions(-) diff --git a/ElvUI_SLE/modules/Armory/CharacterArmory/CharacterArmory.lua b/ElvUI_SLE/modules/Armory/CharacterArmory/CharacterArmory.lua index b8b4e4f..8696cb8 100644 --- a/ElvUI_SLE/modules/Armory/CharacterArmory/CharacterArmory.lua +++ b/ElvUI_SLE/modules/Armory/CharacterArmory/CharacterArmory.lua @@ -1141,18 +1141,18 @@ do --<< Artifact Monitor >> local EnchantError, EnchantError_MainHand, EnchantError_SecondaryHand local apItemCache = {} local apStringValueMillion = { - ["enUS"] = "(%d+)[%p%s]?[(%d+)]? million", - ["enGB"] = "(%d+)[%p%s]?[(%d+)]? million", - ["ptBR"] = "(%d+)[%p%s]?[(%d+)]? [[milhao][milhoes]]?", - ["esMX"] = "(%d+)[%p%s]?[(%d+)]? [[millon][millones]]?", - ["deDE"] = "(%d+)[%p%s]?[(%d+)]? [[Million][Millionen]]?", - ["esES"] = "(%d+)[%p%s]?[(%d+)]? [[millon][millones]]?", - ["frFR"] = "(%d+)[%p%s]?[(%d+)]? [[million][millions]]?", - ["itIT"] = "(%d+)[%p%s]?[(%d+)]? [[milione][milioni]]?", - ["ruRU"] = "(%d+)[%p%s]?[(%d+)]? млн", - ["koKR"] = "(%d+)[%p%s]?[(%d+)]??", - ["zhTW"] = "(%d+)[%p%s]?[(%d+)]??", - ["zhCN"] = "(%d+)[%p%s]?[(%d+)]??", + ["enUS"] = "(%d*%.?%d+) million", + ["enGB"] = "(%d*%.?%d+) million", + ["ptBR"] = "(%d*%.?%d+) [[milhao][milhoes]]?", + ["esMX"] = "(%d*%.?%d+) [[millon][millones]]?", + ["deDE"] = "(%d*%.?%d+) [[Million][Millionen]]?", + ["esES"] = "(%d*%.?%d+) [[millon][millones]]?", + ["frFR"] = "(%d*%.?%d+) [[million][millions]]?", + ["itIT"] = "(%d*%.?%d+) [[milione][milioni]]?", + ["ruRU"] = "(%d*%.?%d+) млн", + ["koKR"] = "(%d*%.?%d+)?", + ["zhTW"] = "(%d*%.?%d+)?", + ["zhCN"] = "(%d*%.?%d+)?", } local apStringValueMillionLocal = apStringValueMillion[GetLocale()] local empoweringSpellName = GetSpellInfo(227907) @@ -1344,13 +1344,14 @@ do --<< Artifact Monitor >> local success = pcall(self.ArtifactMonitor.ScanTT.SetHyperlink, self.ArtifactMonitor.ScanTT, PowerItemLink) if success then local apFound - for i = 4,5 do + for i = 5, 1, -1 do local tooltipText = _G["Knight_CharacterArmory_ArtifactScanTTTextLeft"..i]:GetText() if tooltipText then local digit1, digit2, digit3, ap - if T.match(tooltipText, apStringValueMillionLocal) then - digit1, digit2 = T.match(tooltipText, apStringValueMillionLocal) - if digit2 then + local value = T.match(tooltipText, apStringValueMillionLocal) + if value then + digit1, digit2 = T.match(value, "(%d+)[%p%s](%d+)") + if digit1 and digit2 then ap = T.tonumber(T.format("%s.%s", digit1, digit2)) * 1e6 --Multiply by one million else ap = T.tonumber(digit1) * 1e6 --Multiply by one million diff --git a/ElvUI_SLE/modules/bags/artifactpower.lua b/ElvUI_SLE/modules/bags/artifactpower.lua index bd023e9..e75cbb4 100644 --- a/ElvUI_SLE/modules/bags/artifactpower.lua +++ b/ElvUI_SLE/modules/bags/artifactpower.lua @@ -13,18 +13,18 @@ local pcall = pcall -- local apLineIndex local apItemCache = {} local apStringValueMillion = { - ["enUS"] = "(%d+)[%p%s]?[(%d+)]? million", - ["enGB"] = "(%d+)[%p%s]?[(%d+)]? million", - ["ptBR"] = "(%d+)[%p%s]?[(%d+)]? [[milhao][milhoes]]?", - ["esMX"] = "(%d+)[%p%s]?[(%d+)]? [[millon][millones]]?", - ["deDE"] = "(%d+)[%p%s]?[(%d+)]? [[Million][Millionen]]?", - ["esES"] = "(%d+)[%p%s]?[(%d+)]? [[millon][millones]]?", - ["frFR"] = "(%d+)[%p%s]?[(%d+)]? [[million][millions]]?", - ["itIT"] = "(%d+)[%p%s]?[(%d+)]? [[milione][milioni]]?", - ["ruRU"] = "(%d+)[%p%s]?[(%d+)]? млн", - ["koKR"] = "(%d+)[%p%s]?[(%d+)]??", - ["zhTW"] = "(%d+)[%p%s]?[(%d+)]??", - ["zhCN"] = "(%d+)[%p%s]?[(%d+)]??", + ["enUS"] = "(%d*%.?%d+) million", + ["enGB"] = "(%d*%.?%d+) million", + ["ptBR"] = "(%d*%.?%d+) [[milhao][milhoes]]?", + ["esMX"] = "(%d*%.?%d+) [[millon][millones]]?", + ["deDE"] = "(%d*%.?%d+) [[Million][Millionen]]?", + ["esES"] = "(%d*%.?%d+) [[millon][millones]]?", + ["frFR"] = "(%d*%.?%d+) [[million][millions]]?", + ["itIT"] = "(%d*%.?%d+) [[milione][milioni]]?", + ["ruRU"] = "(%d*%.?%d+) млн", + ["koKR"] = "(%d*%.?%d+)?", + ["zhTW"] = "(%d*%.?%d+)?", + ["zhCN"] = "(%d*%.?%d+)?", } local apStringValueMillionLocal = apStringValueMillion[GetLocale()] local function GetItemLinkArtifactPower(slotLink) @@ -39,18 +39,21 @@ local function GetItemLinkArtifactPower(slotLink) end local apFound - for i = 4,5 do + for i = 5, 1, -1 do local tooltipText = _G[tooltipName.."TextLeft"..i]:GetText() if tooltipText then local digit1, digit2, digit3, ap - if T.match(tooltipText, apStringValueMillionLocal) then - digit1, digit2 = T.match(tooltipText, apStringValueMillionLocal) - if digit2 then + local value = T.match(tooltipText, apStringValueMillionLocal) + if value then + -- digit1, digit2 = T.match(tooltipText, apStringValueMillionLocal) + digit1, digit2 = T.match(value, "(%d+)[%p%s](%d+)") + if digit1 and digit2 then ap = T.tonumber(T.format("%s.%s", digit1, digit2)) * 1e6 --Multiply by one million else ap = T.tonumber(digit1) * 1e6 --Multiply by one million end else + -- digit1, digit2, digit3 = T.match(tooltipText,"(%d+)[%p%s]?(%d+)[%p%s]?(%d+)") digit1, digit2, digit3 = T.match(tooltipText,"(%d+)[%p%s]?(%d+)[%p%s]?(%d+)") ap = T.tonumber(T.format("%s%s%s", digit1 or "", digit2 or "", (digit2 and digit3) and digit3 or "")) end -- 1.7.9.5