缺氧 wiki 编辑团队提示:注册账号并登录后体验更佳,且可通过参数设置定制优化您的浏览体验!
该站点为镜像站点,如果你想帮助这个由玩家志愿编辑的 wiki 站点,请前往原站点参与编辑,
同时欢迎加入编辑讨论群 851803695 与其他编辑者一起参与建设!
全站通知:
模块:信息框/流星雨
刷
历
编
< 模块:信息框
跳到导航
跳到搜索
local infobox = require([[Module:信息框]])
local fstr = mw.ustring.format
local p = {}
local innerNodes = {
{
tag = 'image',
source = '图片',
children = {
{
tag = 'caption',
source = '图片说明'
}
}
},
{
tag = 'data',
source = 'ID',
label = 'ID'
},
{
tag = 'data',
source = '星图ID',
label = '星图ID'
},
{
tag = 'data',
source = '受难度影响',
label = '受难度影响'
},
{
tag = 'data',
source = '成分',
label = '成分'
},
{
tag = 'data',
source = '季节',
label = '[[流星雨#季节|出现的季节]]'
},
{
tag = 'group',
header = '流星雨事件',
attr = {collapse = 'open'},
children = {
{
tag = 'data',
source = '持续时间',
label = '持续时间'
},
{
tag = 'data',
source = '流星生成速率',
label = '流星生成速率'
},
{
tag = 'data',
source = '轰击间隔',
label = '<abbr title = "流星雨在一轮轰击结束后,暂停一段时间。">轰击间隔</abbr>'
},
{
tag = 'data',
source = '轰击时间',
label = '<abbr title = "流星雨在一轮轰击中,会生成流星的时间。">轰击时间</abbr>'
}
}
},
}
-- test: = p.infoboxContent{['持续时间'] = 900}
function p.infoboxContent(args)
local generated = {}
for _, n in ipairs(innerNodes) do
local child = infobox.genNode(n, args)
if child ~= nil then
table.insert(generated, child)
end
end
return generated
end
function p.main(title, data, raw)
local contentNodes = nil
if #data == 1 then
contentNodes = p.infoboxContent(data[1].data)
else
local panelData = {}
for _, pData in ipairs(data) do
table.insert(panelData, {
label = pData.label,
content = p.infoboxContent(pData.data)
})
end
contentNodes = {
infobox.panel(panelData)
}
end
return infobox.infobox(title, contentNodes, raw, 'MeteorShower')
end
function p.demo(frame)
local getArgs = require('Module:Dev/Arguments').getArgs
local args = getArgs(frame)
return p.main(args['标题'], {
{
data = args
}
}, args.raw)
end
return p