-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Not showing Full Dps in item and skill comparison . #8245
Comments
Screenshots: https://imgur.com/a/Jt2qR7l |
diff --git a/src/Classes/ItemDBControl.lua b/src/Classes/ItemDBControl.lua
index e0a4a3528..4425b81df 100644
--- a/src/Classes/ItemDBControl.lua
+++ b/src/Classes/ItemDBControl.lua
@@ -226,7 +226,6 @@ function ItemDBClass:ListBuilder()
if self.sortDetail and self.sortDetail.stat then -- stat-based
local start = GetTime()
local calcFunc, calcBase = self.itemsTab.build.calcsTab:GetMiscCalculator(self.build)
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
for itemIndex, item in ipairs(list) do
item.measuredPower = 0
@@ -247,7 +246,6 @@ function ItemDBClass:ListBuilder()
start = now
end
end
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
end
table.sort(list, function(a, b)
diff --git a/src/Classes/ItemsTab.lua b/src/Classes/ItemsTab.lua
index fdc24f540..bd42710c7 100644
--- a/src/Classes/ItemsTab.lua
+++ b/src/Classes/ItemsTab.lua
@@ -1852,11 +1852,9 @@ function ItemsTabClass:AddModComparisonTooltip(tooltip, mod)
newItem:BuildAndParseRaw()
local calcFunc = self.build.calcsTab:GetMiscCalculator()
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local outputBase = calcFunc({ repSlotName = slotName, repItem = self.displayItem }, {})
local outputNew = calcFunc({ repSlotName = slotName, repItem = newItem }, {})
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
self.build:AddStatComparesToTooltip(tooltip, outputBase, outputNew, "\nAdding this mod will give: ")
end
@@ -2281,11 +2279,9 @@ function ItemsTabClass:AppendAnointTooltip(tooltip, node, actionText)
header = "^7"..actionText.." nothing will give you: "
end
local calcFunc = self.build.calcsTab:GetMiscCalculator()
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local outputBase = calcFunc({ repSlotName = "Amulet", repItem = self.displayItem }, {})
local outputNew = calcFunc({ repSlotName = "Amulet", repItem = self:anointItem(node) }, {})
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
local numChanges = self.build:AddStatComparesToTooltip(tooltip, outputBase, outputNew, header)
if node and numChanges == 0 then
tooltip:AddLine(14, "^7"..actionText.." "..node.dn.." changes nothing.")
@@ -2296,11 +2292,9 @@ end
---@param tooltip table @The tooltip to append into
---@param node table @The passive tree node that will be added
function ItemsTabClass:AppendAddedNotableTooltip(tooltip, node)
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local calcFunc, calcBase = self.build.calcsTab:GetMiscCalculator()
local outputNew = calcFunc({ addNodes = { [node] = true } }, { requirementsItems = true, requirementsGems = true, skills = true })
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
local numChanges = self.build:AddStatComparesToTooltip(tooltip, calcBase, outputNew, "^7Allocating "..node.dn.." will give you: ")
if numChanges == 0 then
tooltip:AddLine(14, "^7Allocating "..node.dn.." changes nothing.")
@@ -3627,10 +3621,8 @@ function ItemsTabClass:AddItemTooltip(tooltip, item, slot, dbMode)
tooltip:AddLine(14, stat)
end
end
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local output = calcFunc({ toggleFlask = item }, {})
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
local header
if self.build.calcsTab.mainEnv.flasks[item] then
header = "^7Deactivating this flask will give you:"
@@ -3666,10 +3658,8 @@ function ItemsTabClass:AddItemTooltip(tooltip, item, slot, dbMode)
tooltip:AddLine(14, stat)
end
end
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local output = calcFunc({ toggleTincture = item }, {})
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
local header
if self.build.calcsTab.mainEnv.tinctures[item] then
header = "^7Deactivating this tincture will give you:"
@@ -3716,10 +3706,8 @@ function ItemsTabClass:AddItemTooltip(tooltip, item, slot, dbMode)
for _, compareSlot in pairs(compareSlots) do
if not main.slotOnlyTooltips or (slot and (slot.nodeId == compareSlot.nodeId or slot.slotName == compareSlot.slotName)) or not slot or slot == compareSlot then
local selItem = self.items[compareSlot.selItemId]
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local output = calcFunc({ repSlotName = compareSlot.slotName, repItem = item ~= selItem and item or nil}, {})
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
local header
if item == selItem then
header = "^7Removing this item from "..compareSlot.label.." will give you:"
diff --git a/src/Classes/NotableDBControl.lua b/src/Classes/NotableDBControl.lua
index 62253adff..074ebcef8 100644
--- a/src/Classes/NotableDBControl.lua
+++ b/src/Classes/NotableDBControl.lua
@@ -138,7 +138,6 @@ function NotableDBClass:ListBuilder()
local start = GetTime()
local calcFunc = self.itemsTab.build.calcsTab:GetMiscCalculator()
local itemType = self.itemsTab.displayItem.base.type
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local calcBase = calcFunc({ repSlotName = itemType, repItem = self.itemsTab:anointItem(nil) }, {})
self.sortMaxPower = 0
@@ -160,7 +159,6 @@ function NotableDBClass:ListBuilder()
start = now
end
end
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
if #infinites > 0 then
self.sortMaxPower = self.sortMaxPower * 2
diff --git a/src/Classes/SkillsTab.lua b/src/Classes/SkillsTab.lua
index 62909a4e3..d36273e92 100644
--- a/src/Classes/SkillsTab.lua
+++ b/src/Classes/SkillsTab.lua
@@ -792,10 +792,8 @@ function SkillsTabClass:CreateGemSlot(index)
local tempQual = self.displayGroup.gemList[index].qualityId
self.displayGroup.gemList[index].qualityId = hoveredQuality.type
self:ProcessSocketGroup(self.displayGroup)
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local output = calcFunc({}, {})
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
self.displayGroup.gemList[index].qualityId = tempQual
tooltip:AddSeparator(10)
self.build:AddStatComparesToTooltip(tooltip, calcBase, output, "^7Switching to this quality variant will give you:")
@@ -827,10 +825,8 @@ function SkillsTabClass:CreateGemSlot(index)
if calcFunc then
local storedQuality = self.displayGroup.gemList[index].quality
self.displayGroup.gemList[index].quality = 20
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local output = calcFunc({}, {})
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
self.displayGroup.gemList[index].quality = storedQuality
self.build:AddStatComparesToTooltip(tooltip, calcBase, output, "^7Setting to 20 quality will give you:")
end
@@ -872,10 +868,8 @@ function SkillsTabClass:CreateGemSlot(index)
local calcFunc, calcBase = self.build.calcsTab:GetMiscCalculator(self.build)
if calcFunc then
self.displayGroup.gemList[index].enabled = not self.displayGroup.gemList[index].enabled
- local storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
local output = calcFunc({}, {})
- GlobalCache.useFullDPS = storedGlobalCacheDPSView
self.displayGroup.gemList[index].enabled = not self.displayGroup.gemList[index].enabled
self.build:AddStatComparesToTooltip(tooltip, calcBase, output, self.displayGroup.gemList[index].enabled and "^7Disabling this gem will give you:" or "^7Enabling this gem will give you:")
end
diff --git a/src/Classes/TradeQuery.lua b/src/Classes/TradeQuery.lua
index e76d1fdd1..8ba521518 100644
--- a/src/Classes/TradeQuery.lua
+++ b/src/Classes/TradeQuery.lua
@@ -53,7 +53,6 @@ local TradeQueryClass = newClass("TradeQuery", function(self, itemsTab)
end
-- set
- self.storedGlobalCacheDPSView = GlobalCache.useFullDPS
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
self.hostName = "https://www.pathofexile.com/"
end)
@@ -505,7 +504,6 @@ Highest Weight - Displays the order retrieved from trade]]
self.controls.fullPrice = new("LabelControl", {"BOTTOM", nil, "BOTTOM"}, 0, -row_height - pane_margins_vertical - row_vertical_padding, pane_width - 2 * pane_margins_horizontal, row_height, "")
GlobalCache.useFullDPS = GlobalCache.numActiveSkillInFullDPS > 0
self.controls.close = new("ButtonControl", {"BOTTOM", nil, "BOTTOM"}, 0, -pane_margins_vertical, 90, row_height, "Done", function()
- GlobalCache.useFullDPS = self.storedGlobalCacheDPSView
main:ClosePopup()
-- there's a case where if you have a socket(s) allocated, open TradeQuery, close it, dealloc, then open TradeQuery again
-- the deallocated socket controls were still showing, so this will remove all dynamically created controls from items Most likely caused by these lines. It seems those were added in an attempt to fix what #8087 has fixed. Will need to test all the cases work correctly though. |
Likely related: #8163 |
Not sure if related, but i am having a similar issues. tested on dev
Using Sort gems by Full DPS seems to be working fine though, except then it only shows full dps but not hit dps anymore (i think it did at some point, not sure).
|
@nofate121 Came up with this #8247 if you'd like to help test. |
@Paliak Hi, excuse me, i don't konw how this works, but how long i can expect this to be fixed? |
@ParanoiaIsGreat First the solution i proposed needs to be tested some more (You can help by downloading my branch). Then the pr has to reviewed and merged by a maintainer. After that it will probably be first available on the beta branch as that is automatically created from dev branch. Releases are manually created by maintainers at their discretion. |
I have the same (or related) issue: https://pobb.in/u/NitonFx/xtG3yNBm-18D When annointing my amulet the sort by full dps works and seems accurate but when hovering over the annoint in the list it tells me "This annoint changes nothing". When the item is annointed it tells me that saving it (replacing the unnamointed ammulet) wont change anything but as soon as i save/replace it the DPS jumps up. You can try it by removing the annoint |
@nbrugger-tgm Thanks for providing another test case! Seems to work correctly when using #8247 The sorting seems slightly faster too. |
Check version
Check for duplicates
What platform are you running Path of Building on?
Windows
How is Path of Building expected to behave?
When check "include in Full Dps" box, it should be showing full dps changes during item and skill comparison
How does Path of Building behave?
When check "include in Full Dps" box, it not showing full dps changes during item and skill comparison
How to reproduce the issue
Import this: https://pobb.in/JYyFVa5G6zmA
Character build code
Screenshots
The text was updated successfully, but these errors were encountered: