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