Module:NavLevel
来自滚动的天空Wiki
local p = {}
function p.getData()
local newindex = require 'module:others'.newindex
local d = mw.ext.cargo.query('Level', 'Level.firstcameversion,Level.stars,Level.name_zhs')
-- 默认按第一个字段排序
local data = {}
data.title = {content='[[关卡]]'}
data.name = '关卡'
local lists = {}
for i, v in ipairs(d) do
local stars = tonumber(v['Level.stars']) or -1
local name = v['Level.name_zhs']
lists[stars] = lists[stars] or {}
table.insert(lists[stars], name)
end
for stars, v in ipairs(lists) do
newindex(data, stars..'星', stars, 'group', 'content')
local ul = mw.html.create 'ul'
-- table.sort(v) cargo已经完备
for i2,name in ipairs(v) do
ul:tag 'li'
:wikitext('[['..name..']]')
end
newindex(data, tostring(ul), stars, 'list', 'content')
end
table.insert(data, {
group={
content='饭制收录'
},
list={
content='\n*[[洞穴]]'
}
})
return data
end
function p.main(frame)
local navbox = require 'Module:Navbox'
local data = p.getData()
local result = navbox.new({data=data, args=frame.args or {}})
result:processArgs()
return result:render()
end
return p