diff --git a/src/Assets/runicitemsheaderfoilleft.png b/src/Assets/runicitemsheaderfoilleft.png new file mode 100644 index 000000000..a6507ad01 Binary files /dev/null and b/src/Assets/runicitemsheaderfoilleft.png differ diff --git a/src/Assets/runicitemsheaderfoilmiddle.png b/src/Assets/runicitemsheaderfoilmiddle.png new file mode 100644 index 000000000..e8934bad5 Binary files /dev/null and b/src/Assets/runicitemsheaderfoilmiddle.png differ diff --git a/src/Assets/runicitemsheaderfoilright.png b/src/Assets/runicitemsheaderfoilright.png new file mode 100644 index 000000000..066938981 Binary files /dev/null and b/src/Assets/runicitemsheaderfoilright.png differ diff --git a/src/Assets/runicitemsheadermagicleft.png b/src/Assets/runicitemsheadermagicleft.png new file mode 100644 index 000000000..066606325 Binary files /dev/null and b/src/Assets/runicitemsheadermagicleft.png differ diff --git a/src/Assets/runicitemsheadermagicmiddle.png b/src/Assets/runicitemsheadermagicmiddle.png new file mode 100644 index 000000000..c8b563fb3 Binary files /dev/null and b/src/Assets/runicitemsheadermagicmiddle.png differ diff --git a/src/Assets/runicitemsheadermagicright.png b/src/Assets/runicitemsheadermagicright.png new file mode 100644 index 000000000..643b68861 Binary files /dev/null and b/src/Assets/runicitemsheadermagicright.png differ diff --git a/src/Assets/runicitemsheaderrareleft.png b/src/Assets/runicitemsheaderrareleft.png new file mode 100644 index 000000000..9202856ec Binary files /dev/null and b/src/Assets/runicitemsheaderrareleft.png differ diff --git a/src/Assets/runicitemsheaderraremiddle.png b/src/Assets/runicitemsheaderraremiddle.png new file mode 100644 index 000000000..24ab751e2 Binary files /dev/null and b/src/Assets/runicitemsheaderraremiddle.png differ diff --git a/src/Assets/runicitemsheaderrareright.png b/src/Assets/runicitemsheaderrareright.png new file mode 100644 index 000000000..c8ca6f706 Binary files /dev/null and b/src/Assets/runicitemsheaderrareright.png differ diff --git a/src/Assets/runicitemsheaderuniqueleft.png b/src/Assets/runicitemsheaderuniqueleft.png new file mode 100644 index 000000000..68b55cdf0 Binary files /dev/null and b/src/Assets/runicitemsheaderuniqueleft.png differ diff --git a/src/Assets/runicitemsheaderuniquemiddle.png b/src/Assets/runicitemsheaderuniquemiddle.png new file mode 100644 index 000000000..d4dae8cca Binary files /dev/null and b/src/Assets/runicitemsheaderuniquemiddle.png differ diff --git a/src/Assets/runicitemsheaderuniqueright.png b/src/Assets/runicitemsheaderuniqueright.png new file mode 100644 index 000000000..fff82b337 Binary files /dev/null and b/src/Assets/runicitemsheaderuniqueright.png differ diff --git a/src/Assets/runicitemsheaderwhiteleft.png b/src/Assets/runicitemsheaderwhiteleft.png new file mode 100644 index 000000000..cc767713f Binary files /dev/null and b/src/Assets/runicitemsheaderwhiteleft.png differ diff --git a/src/Assets/runicitemsheaderwhitemiddle.png b/src/Assets/runicitemsheaderwhitemiddle.png new file mode 100644 index 000000000..7903ef83e Binary files /dev/null and b/src/Assets/runicitemsheaderwhitemiddle.png differ diff --git a/src/Assets/runicitemsheaderwhiteright.png b/src/Assets/runicitemsheaderwhiteright.png new file mode 100644 index 000000000..6dbc24956 Binary files /dev/null and b/src/Assets/runicitemsheaderwhiteright.png differ diff --git a/src/Classes/Item.lua b/src/Classes/Item.lua index 6c54e83ec..7bb7a3c39 100644 --- a/src/Classes/Item.lua +++ b/src/Classes/Item.lua @@ -300,6 +300,7 @@ function ItemClass:ParseRaw(raw, rarity, highQuality) self.rarity = rarity or "UNIQUE" self.charmLimit = nil self.spiritValue = nil + self.runicItem = nil self.quality = nil self.rawLines = { } -- Find non-blank lines and trim whitespace @@ -799,6 +800,9 @@ function ItemClass:ParseRaw(raw, rarity, highQuality) baseName = "Two-Toned Boots (Armour/Energy Shield)" end local base = data.itemBases[baseName] + if baseName:find("Runeforged") or baseName:find("Runemastered") then + self.runicItem = true + end if base then -- Items with variants can have multiple bases self.baseLines[baseName] = { line = baseName, variantList = modLine.variantList } diff --git a/src/Classes/ItemsTab.lua b/src/Classes/ItemsTab.lua index f61e72ae4..4c9902c1e 100644 --- a/src/Classes/ItemsTab.lua +++ b/src/Classes/ItemsTab.lua @@ -3193,7 +3193,7 @@ function ItemsTabClass:AddItemTooltip(tooltip, item, slot, dbMode, maxWidth) else tooltip:AddLine(fontSizeTitle, rarityCode..item.namePrefix..item.baseName:gsub(" %(.+%)","")..item.nameSuffix, "FONTIN SC") end - + tooltip.runicItem = item.runicItem tooltip:AddSeparator(10) -- Special fields for database items @@ -3289,7 +3289,7 @@ function ItemsTabClass:AddItemTooltip(tooltip, item, slot, dbMode, maxWidth) tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FEnergy Shield: %s%d", main:StatColor(armourData.EnergyShield, base.armour.EnergyShieldBase), armourData.EnergyShield), "FONTIN SC") end if armourData.Ward > 0 then - tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FWard: %s%d", main:StatColor(armourData.Ward, base.armour.WardBase), armourData.Ward), "FONTIN SC") + tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FRunic Ward: %s%d", main:StatColor(armourData.Ward, base.armour.WardBase), armourData.Ward), "FONTIN SC") end elseif base.flask then -- Flask-specific info diff --git a/src/Classes/Tooltip.lua b/src/Classes/Tooltip.lua index 59cf1786f..0875bfdff 100644 --- a/src/Classes/Tooltip.lua +++ b/src/Classes/Tooltip.lua @@ -16,19 +16,19 @@ local H_PAD = 12 local V_PAD = 10 -- spell-checker: disable local headerConfigs = { - RELIC = {left="Assets/itemsheaderfoilleft.png", middle="Assets/itemsheaderfoilmiddle.png", right="Assets/itemsheaderfoilright.png", height=58, sideWidth=47, middleWidth=47, textYOffset=2, allowInfluenceIcon=true}, - UNIQUE = {left="Assets/itemsheaderuniqueleft.png", middle="Assets/itemsheaderuniquemiddle.png", right="Assets/itemsheaderuniqueright.png", height=58, sideWidth=47, middleWidth=47, textYOffset=2, allowInfluenceIcon=true}, - RARE = {left="Assets/itemsheaderrareleft.png", middle="Assets/itemsheaderraremiddle.png", right="Assets/itemsheaderrareright.png", height=58, sideWidth=47, middleWidth=47, textYOffset=2, allowInfluenceIcon=true}, - MAGIC = {left="Assets/itemsheadermagicleft.png", middle="Assets/itemsheadermagicmiddle.png", right="Assets/itemsheadermagicright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4, allowInfluenceIcon=true}, - NORMAL = {left="Assets/itemsheaderwhiteleft.png", middle="Assets/itemsheaderwhitemiddle.png", right="Assets/itemsheaderwhiteright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4, allowInfluenceIcon=true}, - JEWEL = {left="Assets/jewelpassiveheaderleft.png", middle="Assets/jewelpassiveheadermiddle.png", right="Assets/jewelpassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, - NOTABLE = {left="Assets/notablepassiveheaderleft.png", middle="Assets/notablepassiveheadermiddle.png", right="Assets/notablepassiveheaderright.png", height=38, sideWidth=38, middleWidth=32, textYOffset=4}, - PASSIVE = {left="Assets/normalpassiveheaderleft.png", middle="Assets/normalpassiveheadermiddle.png", right="Assets/normalpassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, - KEYSTONE = {left="Assets/keystonepassiveheaderleft.png", middle="Assets/keystonepassiveheadermiddle.png", right="Assets/keystonepassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, - ASCENDANCY = {left="Assets/ascendancypassiveheaderleft.png", middle="Assets/ascendancypassiveheadermiddle.png", right="Assets/ascendancypassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, - ORACLE_PASSIVE = {left="Assets/oraclenormalpassiveheaderleft.png", middle="Assets/oraclenormalpassiveheadermiddle.png", right="Assets/oraclenormalpassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, - ORACLE_NOTABLE = {left="Assets/oraclenotablepassiveheaderleft.png", middle="Assets/oraclenotablepassiveheadermiddle.png", right="Assets/oraclenotablepassiveheaderright.png", height=38, sideWidth=38, middleWidth=32, textYOffset=4}, - ORACLE_KEYSTONE = {left="Assets/oraclekeystonepassiveheaderleft.png", middle="Assets/oraclekeystonepassiveheadermiddle.png", right="Assets/oraclekeystonepassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, + RELIC = {left="itemsheaderfoilleft.png", middle="itemsheaderfoilmiddle.png", right="itemsheaderfoilright.png", height=58, sideWidth=47, middleWidth=47, textYOffset=2, allowInfluenceIcon=true}, + UNIQUE = {left="itemsheaderuniqueleft.png", middle="itemsheaderuniquemiddle.png", right="itemsheaderuniqueright.png", height=58, sideWidth=47, middleWidth=47, textYOffset=2, allowInfluenceIcon=true}, + RARE = {left="itemsheaderrareleft.png", middle="itemsheaderraremiddle.png", right="itemsheaderrareright.png", height=58, sideWidth=47, middleWidth=47, textYOffset=2, allowInfluenceIcon=true}, + MAGIC = {left="itemsheadermagicleft.png", middle="itemsheadermagicmiddle.png", right="itemsheadermagicright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4, allowInfluenceIcon=true}, + NORMAL = {left="itemsheaderwhiteleft.png", middle="itemsheaderwhitemiddle.png", right="itemsheaderwhiteright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4, allowInfluenceIcon=true}, + JEWEL = {left="jewelpassiveheaderleft.png", middle="jewelpassiveheadermiddle.png", right="jewelpassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, + NOTABLE = {left="notablepassiveheaderleft.png", middle="notablepassiveheadermiddle.png", right="notablepassiveheaderright.png", height=38, sideWidth=38, middleWidth=32, textYOffset=4}, + PASSIVE = {left="normalpassiveheaderleft.png", middle="normalpassiveheadermiddle.png", right="normalpassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, + KEYSTONE = {left="keystonepassiveheaderleft.png", middle="keystonepassiveheadermiddle.png", right="keystonepassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, + ASCENDANCY = {left="ascendancypassiveheaderleft.png", middle="ascendancypassiveheadermiddle.png", right="ascendancypassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, + ORACLE_PASSIVE = {left="oraclenormalpassiveheaderleft.png", middle="oraclenormalpassiveheadermiddle.png", right="oraclenormalpassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, + ORACLE_NOTABLE = {left="oraclenotablepassiveheaderleft.png", middle="oraclenotablepassiveheadermiddle.png", right="oraclenotablepassiveheaderright.png", height=38, sideWidth=38, middleWidth=32, textYOffset=4}, + ORACLE_KEYSTONE = {left="oraclekeystonepassiveheaderleft.png", middle="oraclekeystonepassiveheadermiddle.png", right="oraclekeystonepassiveheaderright.png", height=38, sideWidth=32, middleWidth=32, textYOffset=4}, } -- spell-checker: enable @@ -77,6 +77,7 @@ function TooltipClass:Clear(clearUpdateParams) end self.tooltipHeader = false self.isUniqueGem = nil + self.runicItem = nil self.titleYOffset = 0 self.recipe = nil self.gemIcon = nil @@ -499,16 +500,19 @@ function TooltipClass:Draw(x, y, w, h, viewPort) self.titleYOffset = config.textYOffset or 0 - if not self.headerLeft or self.headerLeftPath ~= config.left then + local runic = self.runicItem and "runic" or "" + local leftPath = runic .. config.left + + if not self.headerLeft or self.headerLeftPath ~= leftPath then self.headerLeft = NewImageHandle() - self.headerLeft:Load(config.left) - self.headerLeftPath = config.left + self.headerLeft:Load("Assets/" .. leftPath) + self.headerLeftPath = leftPath self.headerMiddle = NewImageHandle() - self.headerMiddle:Load(config.middle) - self.headerMiddlePath = config.middle + self.headerMiddle:Load("Assets/" .. runic .. config.middle) + self.headerMiddlePath = runic .. config.middle self.headerRight = NewImageHandle() - self.headerRight:Load(config.right) - self.headerRightPath = config.right + self.headerRight:Load("Assets/" .. runic .. config.right) + self.headerRightPath = runic .. config.right end local headerHeight = config.height