Skip to content

Commit d948b02

Browse files
authored
Fix options being combined in buy similar (#10223)
1 parent 8838b06 commit d948b02

2 files changed

Lines changed: 17 additions & 1 deletion

File tree

‎spec/System/TestCompareBuySimilar_spec.lua‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,22 @@ Implicits: 1
105105
assert.equal(-100, entries[1].value)
106106
assert.equal(50, entries[2].value)
107107
end)
108+
it("does not combine options", function()
109+
local lifelessDiamond = new("Item"):Item([[
110+
Test Subject
111+
Onyx Amulet
112+
Implicits: 2
113+
Allocates Adamant (enchant)
114+
Allocates Admonisher (enchant)
115+
Can have 3 additional Enchantment Modifiers]])
116+
local entries = bs.addModEntries(lifelessDiamond,
117+
{ { list = lifelessDiamond.enchantModLines, type = "enchant" }, { list = lifelessDiamond.explicitModLines, type = "explicit" } })
118+
assert.equal(3, #entries)
119+
assert.equal("enchant.stat_2954116742", entries[1].tradeIds[1])
120+
assert.equal(49416, entries[1].value)
121+
assert.equal("enchant.stat_2954116742", entries[2].tradeIds[1])
122+
assert.equal(50858, entries[2].value)
123+
end)
108124
end)
109125
describe("popup URL controls", function()
110126
local originalCopy

‎src/Classes/CompareBuySimilar.lua‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@ function M.addModEntries(item, modTypeSources)
218218
for _, existingFilter in ipairs(modEntries) do
219219
-- check if all result trade ids are equal
220220
local sameHashes = #entry.tradeIds > 0 and tableDeepEquals(entry.tradeIds, existingFilter.tradeIds)
221-
if sameHashes and existingFilter.type == entry.type then
221+
if sameHashes and existingFilter.type == entry.type and not entry.isOption then
222222
if entry.value then
223223
local value = (entry.invert ~= existingFilter.invert) and -entry.value or entry.value or 0
224224
existingFilter.value = (existingFilter.value or 0) + value

0 commit comments

Comments
 (0)