Module:SpaceBodyLister/System
From Terra Invicta Official Wiki
Documentation for this module may be created at Module:SpaceBodyLister/System/doc
---
---Reads the SpaceBody data files and computes a table of SpaceBody to Mining Modifiers
--region Dependencies
local SpaceBodyData = mw.loadData('Module:CSVReader/SpaceBody')
local MetaData = mw.loadData('Module:CSVReader/Meta')
--endregion
--region Private constants
local sizeNames = {
'VeryLightSolarSystemBodies',
'LightSolarSystemBodies',
'MediumSolarSystemBodies',
'CompleteSolarSystemBodies',
'MegaSolarSystemBodies'
}
--endregion
--region Private member variables
local systemTable = {}
--endregion
--region Private methods
function getSystemTable()
local sizeBodies = {}
for i = 1, 5 do
sizeBodies[i] = {}
for j = 0, 500 do
if not MetaData[sizeNames[i]]['templateNames/' .. j] then
break
end
sizeBodies[i][MetaData[sizeNames[i]]['templateNames/' .. j]] = true
end
end
for rowID, row in pairs(SpaceBodyData) do
systemTable[rowID] = {}
for i = 1, 5 do
if sizeBodies[i][rowID] then
systemTable[rowID][i] = true
else
systemTable[rowID][i] = false
end
end
end
return systemTable
end
--endregion
--region Public methods
--endregion
return getSystemTable()


