模块:测试调用数据:修订间差异
小无编辑摘要 |
无编辑摘要 |
||
第6行: | 第6行: | ||
p["测试调用"] = function(frame) | p["测试调用"] = function(frame) | ||
local query_num = frame.args['角色编号'] | local query_num = frame.args['角色编号'] | ||
local | local result = {} | ||
if query_num then | if query_num then | ||
for _, char in ipairs(dataList) do | for _, char in ipairs(dataList) do | ||
if query_num == char.owner_order then | if query_num == char.owner_order then | ||
local html = mw.html.create() | |||
-- 开始表格 | |||
html:tag('table') | |||
:addClass('wikitable') | |||
:css('width', '100%') | |||
-- 表头 | |||
html:tag('tr') | |||
:tag('th'):wikitext('NAME'):done() | |||
:tag('th'):wikitext('Base'):done() | |||
:tag('th'):wikitext('MAX'):done() | |||
:done() | |||
-- 填充表格数据 | |||
for _, element in ipairs(elements) do | for _, element in ipairs(elements) do | ||
local maxAttr = "MAX" .. element | local maxAttr = "MAX" .. element | ||
第31行: | 第34行: | ||
local baseAttrValue = char.Data_jp[baseAttr] or "" | local baseAttrValue = char.Data_jp[baseAttr] or "" | ||
-- | -- 添加行到表格中 | ||
html:tag('tr') | html:tag('tr') | ||
:tag('td'):wikitext(element):done() | :tag('td'):wikitext(element):done() | ||
第37行: | 第40行: | ||
:tag('td'):wikitext(maxAttrValue):done() | :tag('td'):wikitext(maxAttrValue):done() | ||
end | end | ||
-- 结束表格 | |||
html:done() | |||
-- 将当前表格的HTML添加到结果表中 | |||
table.insert(result, tostring(html)) | |||
end | end | ||
end | end | ||
end | end | ||
-- | -- 返回第一个表格的HTML内容的字符串表示 | ||
return tostring(result[1]) | |||
return tostring( | |||
end | end | ||
return p | return p |
2024年6月26日 (三) 22:15的版本
可在模块:测试调用数据/doc创建此模块的帮助文档
local p = {}
local db = mw.loadData('模块:角色属性数据')
local dataList = db.char_self_data
local elements = {"HP", "SP", "ATK", "DEF", "MAG", "MDEF", "CRT", "SPD"}
p["测试调用"] = function(frame)
local query_num = frame.args['角色编号']
local result = {}
if query_num then
for _, char in ipairs(dataList) do
if query_num == char.owner_order then
local html = mw.html.create()
-- 开始表格
html:tag('table')
:addClass('wikitable')
:css('width', '100%')
-- 表头
html:tag('tr')
:tag('th'):wikitext('NAME'):done()
:tag('th'):wikitext('Base'):done()
:tag('th'):wikitext('MAX'):done()
:done()
-- 填充表格数据
for _, element in ipairs(elements) do
local maxAttr = "MAX" .. element
local baseAttr = "Base" .. element
-- 获取属性值,如果不存在则设为空白字符串
local maxAttrValue = char.Data_jp[maxAttr] or ""
local baseAttrValue = char.Data_jp[baseAttr] or ""
-- 添加行到表格中
html:tag('tr')
:tag('td'):wikitext(element):done()
:tag('td'):wikitext(baseAttrValue):done()
:tag('td'):wikitext(maxAttrValue):done()
end
-- 结束表格
html:done()
-- 将当前表格的HTML添加到结果表中
table.insert(result, tostring(html))
end
end
end
-- 返回第一个表格的HTML内容的字符串表示
return tostring(result[1])
end
return p