Module:EffectLister

From Terra Invicta Official Wiki

Documentation for this module may be created at Module:EffectLister/doc

---
---Reads the Effect data files and presents them in readable formats, with additional calculated statistics.
---
---@module EffectLister
local EffectLister = {}

--region Dependencies
local IconModule = require('Module:Icon')
local EffectData = mw.loadData('Module:CSVReader/Effect')
local EffectNames = mw.loadData('Module:ENReader/Effect')
local EffectDescriptionBuilder = require('Module:EffectLister/DescriptionBuilder')
--endregion

--region Private constants
--endregion



--region Private member variables
--none
--endregion

--region Private methods


--endregion

--region Public methods

---@param detailed boolean whether to show the detailed or basic version.
---@return wiki table of Effects
function EffectLister.ListEffects()
	local returnString = '{| class="wikitable sortable mw-collapsible"'
	returnString = returnString .. '\n|-'
	returnString = returnString .. '\n! Effect Data Name'
	returnString = returnString .. '\n! Effect Description'
	returnString = returnString .. '\n|-'
	
	for rowID, row in pairs(EffectData) do
		returnString = returnString .. '\n| ' .. rowID
		returnString = returnString .. '\n| ' .. EffectDescriptionBuilder.buildDescription({args={rowID}})
    	returnString = returnString .. '\n|-'
	end
	returnString = returnString .. '\n|}'
	
	return returnString
end

--endregion

return EffectLister