Module:Tables
Jump to navigation
Jump to search
Documentation for this module may be created at Module:Tables/doc
local com = require('Module:Common')
local a = require('Module:Args')
local i = require('Module:Icon')
local p = {}
function p.buildings(frame)
local buildingList = mw.load('Module:Buildings')
local args = a.getArgs(frame)
local buildingTable = mw.html.create('table')
local dataTable = {}
for k, v in pairs(buildingList) do
if v.group == args['group'] or not args['group'] then
table.insert(dataTable, k)
end
end
table.sort(dataTable)
buildingTable:addClass('wikitable sortable')
:tag('tr')
:tag('th')
:wikitext('Name')
:done()
:tag('th')
:wikitext('Prerequisites')
:done()
:tag('th')
:wikitext('Production')
:done()
:tag('th')
:wikitext('Construction Requirements')
:done()
:done()
for k, v in pairs (dataTable) do
local getPreReq = {}
table.insert(getPreReq, v.building .. '|building')
table.insert(getPreReq, v.population .. '|population')
table.insert(getPreReq, v.splendor .. '|splendor')
table.insert(getPreReq, v.influence .. '|influence')
local preReq = ''
for k, v in ipairs(getPreReq) do
local tag = string.sub(v, string.find(v, '|'))
if tag == 'splendor' or tag == 'influence' then
preReq = preReq i.icon(tag .. ' ' .. k, string.sub(v, string.sub(v, 1,
string.find(v, '|') - 1)), nil, nil, 'en')
else
preReq = preReq .. string.sub(v, string.sub(v, 1,
string.find(v, '|') - 1))
end
end
local newRow = mw.html.create('tr')
newRow:tag('th')
:wikitext(k)
:done()
end
end
return p