Skip to content

Commit 785b582

Browse files
committed
Show Influence icons on item headers
1 parent ba5b175 commit 785b582

5 files changed

Lines changed: 45 additions & 1 deletion

File tree

7.8 KB
Loading

src/Assets/fractureditemsymbol.png

2.39 KB
Loading

src/Classes/Item.lua

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1251,6 +1251,12 @@ function ItemClass:BuildRaw()
12511251
if self.corrupted then
12521252
t_insert(rawLines, "Corrupted")
12531253
end
1254+
if self.fractured then
1255+
t_insert(rawLines, "Fractured Item")
1256+
end
1257+
if self.desecrated then
1258+
t_insert(rawLines, "Desecrated Item")
1259+
end
12541260
return table.concat(rawLines, "\n")
12551261
end
12561262

src/Classes/ItemsTab.lua

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2585,6 +2585,27 @@ function ItemsTabClass:AddItemSetTooltip(tooltip, itemSet)
25852585
end
25862586
end
25872587

2588+
function ItemsTabClass:SetTooltipHeaderInfluence(tooltip, item)
2589+
tooltip.influenceHeader1 = nil
2590+
tooltip.influenceHeader2 = nil
2591+
2592+
if item.fractured then
2593+
tooltip.influenceHeader1 = "Fractured"
2594+
end
2595+
if item.desecrated then
2596+
if not tooltip.influenceHeader1 then
2597+
tooltip.influenceHeader1 = "Desecrated"
2598+
else
2599+
tooltip.influenceHeader2 = "Desecrated"
2600+
end
2601+
end
2602+
2603+
-- If only one influence, we copy to second header. Preparing for dual influence mods like in first game.
2604+
if tooltip.influenceHeader1 and not tooltip.influenceHeader2 then
2605+
tooltip.influenceHeader2 = tooltip.influenceHeader1
2606+
end
2607+
end
2608+
25882609
function ItemsTabClass:FormatItemSource(text)
25892610
return text:gsub("unique{([^}]+)}",colorCodes.UNIQUE.."%1"..colorCodes.SOURCE)
25902611
:gsub("normal{([^}]+)}",colorCodes.NORMAL.."%1"..colorCodes.SOURCE)
@@ -2599,6 +2620,7 @@ function ItemsTabClass:AddItemTooltip(tooltip, item, slot, dbMode)
25992620
tooltip.tooltipHeader = item.rarity
26002621
tooltip.center = true
26012622
tooltip.color = rarityCode
2623+
self:SetTooltipHeaderInfluence(tooltip, item)
26022624
if item.title then
26032625
tooltip:AddLine(20, rarityCode..item.title)
26042626
tooltip:AddLine(20, rarityCode..item.baseName:gsub(" %(.+%)",""))

src/Classes/Tooltip.lua

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,10 @@ function TooltipClass:Draw(x, y, w, h, viewPort)
265265
ttW = titleW + 50
266266
end
267267
end
268+
local headerInfluence = {
269+
Fractured = "Assets/FracturedItemSymbol.png",
270+
Desecrated = "Assets/DesecratedItemSymbol.png", -- Temporary image, need to pull from files when update releases
271+
}
268272
local headerConfigs = {
269273
RELIC = {left="Assets/ItemsHeaderFoilLeft.png",middle="Assets/ItemsHeaderFoilMiddle.png",right="Assets/ItemsHeaderFoilRight.png",height=56,sideWidth=43,middleWidth=43,textYOffset=2},
270274
UNIQUE = {left="Assets/ItemsHeaderUniqueLeft.png",middle="Assets/ItemsHeaderUniqueMiddle.png",right="Assets/ItemsHeaderUniqueRight.png",height=56,sideWidth=43,middleWidth=43,textYOffset=2},
@@ -337,9 +341,18 @@ function TooltipClass:Draw(x, y, w, h, viewPort)
337341
local headerY = ttY + BORDER_WIDTH
338342
local headerTotalWidth = ttW - 2 * BORDER_WIDTH
339343
local headerMiddleAreaWidth = m_max(0, headerTotalWidth - 2 * headerSideWidth)
344+
if self.influenceHeader1 then
345+
self.influenceIcon1 = NewImageHandle()
346+
self.influenceIcon1:Load(headerInfluence[self.influenceHeader1])
347+
self.influenceIcon2 = NewImageHandle()
348+
self.influenceIcon2:Load(headerInfluence[self.influenceHeader2])
349+
end
340350

341-
-- Draw left cap
351+
-- Draw left cap first, then influence icon on top
342352
DrawImage(self.headerLeft, headerX, headerY, headerSideWidth, headerHeight)
353+
if self.influenceHeader1 then
354+
DrawImage(self.influenceIcon1, headerX+5, headerY+(headerHeight/4), headerSideWidth/2+6, headerHeight/2)
355+
end
343356

344357
-- Draw middle fill
345358
if headerMiddleAreaWidth > 0 then
@@ -357,6 +370,9 @@ function TooltipClass:Draw(x, y, w, h, viewPort)
357370

358371
-- Draw right cap
359372
DrawImage(self.headerRight, headerX + headerTotalWidth - headerSideWidth, headerY, headerSideWidth, headerHeight)
373+
if self.influenceHeader2 then
374+
DrawImage(self.influenceIcon2, headerX + headerTotalWidth - headerSideWidth+10, headerY+(headerHeight/4), headerSideWidth/2+6, headerHeight/2)
375+
end
360376
end
361377

362378
-- Draw lines and images

0 commit comments

Comments
 (0)