No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
function parseCSV(csvString) | local parsedArray = {} | ||
function parseCSV(csvString) -- csvString is one line | |||
local result = {} | local result = {} | ||
for value in string.gmatch(csvString, '([^,]+)') do | for value in string.gmatch(csvString, '([^,]+)') do | ||
| Line 13: | Line 15: | ||
local result = "" | local result = "" | ||
-- | -- Put all the CSV lines into an array | ||
for line in csvText:gmatch("[^\r\n]+") do | for line in csvText:gmatch("[^\r\n]+") do | ||
table.insert(parsedArray, parseCSV(line)) | |||
end | |||
if #parsedArray == 0 then | |||
return "Error: ModuleLevelTable had no results. Report this to Discord!" | |||
end | end | ||
-- IMPORTANT! This assumes data is structured EXACTLY in this order! | |||
--1 Nonsensical invoking ID | |||
--2 |?Module:Name | |||
--3 |?Module:Rarity | |||
--4 |?Module:Socket | |||
--5 |?Module:Class | |||
--6 |?Module:MaxEnhancementLevel | |||
--7 |?Module:CapacityCost0 | |||
--8 |?Module:ExclusiveCategory | |||
--9 |?Module:Effect0 | |||
--10 |?Module:Effect1 | |||
--11 |?Module:Effect2 | |||
--12 |?Module:Effect3 | |||
--13 |?Module:Effect4 | |||
--14 |?Module:Effect5 | |||
--15 |?Module:Effect6 | |||
--16 |?Module:Effect7 | |||
--17 |?Module:Effect8 | |||
--18 |?Module:Effect9 | |||
--19 |?Module:Effect10 | |||
return result[1] | return result[1] | ||
Revision as of 01:21, 4 June 2024
Documentation for this module may be created at Module:ModuleLevelTable/doc
local p = {}
local parsedArray = {}
function parseCSV(csvString) -- csvString is one line
local result = {}
for value in string.gmatch(csvString, '([^,]+)') do
table.insert(result, value)
end
return result
end
function p.process(frame)
local csvText = frame.args[1] or ""
local result = ""
-- Put all the CSV lines into an array
for line in csvText:gmatch("[^\r\n]+") do
table.insert(parsedArray, parseCSV(line))
end
if #parsedArray == 0 then
return "Error: ModuleLevelTable had no results. Report this to Discord!"
end
-- IMPORTANT! This assumes data is structured EXACTLY in this order!
--1 Nonsensical invoking ID
--2 |?Module:Name
--3 |?Module:Rarity
--4 |?Module:Socket
--5 |?Module:Class
--6 |?Module:MaxEnhancementLevel
--7 |?Module:CapacityCost0
--8 |?Module:ExclusiveCategory
--9 |?Module:Effect0
--10 |?Module:Effect1
--11 |?Module:Effect2
--12 |?Module:Effect3
--13 |?Module:Effect4
--14 |?Module:Effect5
--15 |?Module:Effect6
--16 |?Module:Effect7
--17 |?Module:Effect8
--18 |?Module:Effect9
--19 |?Module:Effect10
return result[1]
end
return p