Skip to content

Commit a27925b

Browse files
author
LocalIdentity
committed
Fix issue with skill implicit code
Implicits were duplicating explicit mods
1 parent 0489d46 commit a27925b

2 files changed

Lines changed: 30 additions & 1 deletion

File tree

spec/System/TestItemParse_spec.lua

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,35 @@ describe("TestItemParse", function()
200200
assert.are.equals("VolatileDeadPlayer", item.grantedSkills[1].skillId)
201201
end)
202202

203+
it("Crafted affixes matching base implicit ranges stay explicit", function()
204+
local item = new("Item", [[
205+
Rarity: Rare
206+
New Item
207+
Solar Amulet
208+
Crafted: true
209+
Prefix: {range:0}IncreasedSpirit4
210+
Prefix: None
211+
Prefix: None
212+
Suffix: None
213+
Suffix: None
214+
Suffix: None
215+
Implicits: 1
216+
+(10-15) to Spirit
217+
]])
218+
219+
item:Craft()
220+
assert.are.equals(1, #item.implicitModLines)
221+
assert.are.equals("+(10-15) to Spirit", item.implicitModLines[1].line)
222+
assert.are.equals(1, #item.explicitModLines)
223+
assert.are.equals("+43 to Spirit", item.explicitModLines[1].line)
224+
225+
item.prefixes[1].range = 0.2
226+
item:Craft()
227+
assert.are.equals(1, #item.implicitModLines)
228+
assert.are.equals(1, #item.explicitModLines)
229+
assert.are.equals("+44 to Spirit", item.explicitModLines[1].line)
230+
end)
231+
203232
--TODO: POB2 Leagues?
204233
--it("League", function()
205234
--end)

src/Classes/Item.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ local function baseHasImplicitLine(base, line)
6767
return false
6868
end
6969
for implicitLine in base.implicit:gmatch("[^\n]+") do
70-
if implicitLine == line or line:match("^" .. implicitLine:gsub("%(%d+%-%d+%)", "%%d+") .. "$") then
70+
if implicitLine == line or implicitLine:match("^Grants Skill:") and line:match("^" .. implicitLine:gsub("%(%d+%-%d+%)", "%%d+") .. "$") then
7171
return true
7272
end
7373
end

0 commit comments

Comments
 (0)