Skip to content

Commit b2f5aec

Browse files
committed
Fix parsing for negative and decimal values
1 parent 0657ce1 commit b2f5aec

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

src/Classes/Item.lua

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -776,10 +776,10 @@ function ItemClass:ParseRaw(raw, rarity, highQuality)
776776
gameModeStage = "IMPLICIT"
777777
end
778778
local catalystScalar = getCatalystScalar(self.catalyst, modLine, self.catalystQuality)
779-
for value, range in line:gmatch("(%d+)%((%d+%-%d+)%)") do
779+
for value, range in line:gmatch("(%-?%d+%.?%d*)%((%-?%d+%.?%d*%-%-?%d+%.?%d*)%)") do
780780
-- Find advanced copy paste format: 45(40-50)
781781
if pendingAffix then
782-
local min, max = range:match("(%d+)%-(%d+)")
782+
local min, max = range:match("(%-?%d+%.?%d*)%-(%-?%d+%.?%d*)")
783783
local numRange = round((value - min) / (tonumber(max) - min), 3)
784784
line = line:gsub(value .. "%(" .. range:gsub("%-", "%%-") .. "%)", value)
785785
t_insert(pendingAffix.table, {
@@ -788,7 +788,7 @@ function ItemClass:ParseRaw(raw, rarity, highQuality)
788788
})
789789
pendingAffix = nil
790790
else
791-
local min, max = range:match("(%d+)%-(%d+)")
791+
local min, max = range:match("(%-?%d+%.?%d*)%-(%-?%d+%.?%d*)")
792792
local numRange = round((value - min) / (tonumber(max) - min), 3)
793793
modLine.range = tonumber(numRange)
794794
line = line:gsub(value .. "%(" .. range:gsub("%-", "%%-") .. "%)", "(" .. range .. ")")

0 commit comments

Comments
 (0)