Difference between revisions of "Module:Tables"
Jump to navigation
Jump to search
| Line 34: | Line 34: | ||
for k, v in pairs (dataTable) do | for k, v in pairs (dataTable) do | ||
local getPreReq = {} | local getPreReq = {} | ||
table.insert(getPreReq, v.building | table.insert(getPreReq, v.building) | ||
table.insert(getPreReq, v.population .. | table.insert(getPreReq, v.population) | ||
if v.splendor then | |||
table.insert(getPreReq, | for k, v in pairs(v.splendor) do | ||
table.insert(getPreReq, i.icon(k .. ' splendor', v, nil, nil, 'en')) | |||
end | |||
end | |||
if v.influence then | |||
for k, v in pairs(v.influence) do | |||
table.insert(getPreReq, i.icon(k .. ' influence', v, nil, nil, 'en')) | |||
end | |||
end | |||
local preReq = '' | local preReq = '' | ||
for k, v in ipairs(getPreReq) do | for k, v in ipairs(getPreReq) do | ||
preReq = preReq .. v | |||
if | if k ~= #getPreReq then | ||
preReq = preReq | preReq = preReq .. '<br />' | ||
end | |||
end | |||
local production = {} | |||
if v.requirements then | |||
local reqs = '' | |||
for k, v in pairs(v.requirements) do | |||
end | end | ||
end | end | ||
local newRow = mw.html.create('tr') | local newRow = mw.html.create('tr') | ||
newRow:tag('th') | newRow:tag('th') | ||
:wikitext(k) | :wikitext(k) | ||
:done() | |||
:tag('td') | |||
:wikitext(preReq) | |||
:done() | :done() | ||
end | end | ||
Revision as of 18:06, 15 August 2022
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)
table.insert(getPreReq, v.population)
if v.splendor then
for k, v in pairs(v.splendor) do
table.insert(getPreReq, i.icon(k .. ' splendor', v, nil, nil, 'en'))
end
end
if v.influence then
for k, v in pairs(v.influence) do
table.insert(getPreReq, i.icon(k .. ' influence', v, nil, nil, 'en'))
end
end
local preReq = ''
for k, v in ipairs(getPreReq) do
preReq = preReq .. v
if k ~= #getPreReq then
preReq = preReq .. '<br />'
end
end
local production = {}
if v.requirements then
local reqs = ''
for k, v in pairs(v.requirements) do
end
end
local newRow = mw.html.create('tr')
newRow:tag('th')
:wikitext(k)
:done()
:tag('td')
:wikitext(preReq)
:done()
end
end
return p