模块:测试调用数据:修订间差异

无编辑摘要
无编辑摘要
第5行: 第5行:
local db_jp = mw.loadData('模块:角色技能数据日文')
local db_jp = mw.loadData('模块:角色技能数据日文')
local dataList_jp = db_jp.char_skill_data
local dataList_jp = db_jp.char_skill_data
local function skillBox(skill)
    local skillBoxDiv = mw.html.create()
    skillBoxDiv = skillBoxDiv:tag('div'):wikitext(skill.skill_name)
                        :tag('div'):wikitext(skill.skill_tag)
                        :tag('div'):wikitext('{{#arraymap:' .. skill.skill_tag .. '|,|@|{{特性图标|@}}|}}')
    return skillBoxDiv
end


p["测试调用"] = function(frame)
p["测试调用"] = function(frame)
第21行: 第30行:
             for _, skill in ipairs(ownerList.owner_skill) do
             for _, skill in ipairs(ownerList.owner_skill) do
                 if skill.skill_type == query_type and skill.skill_parent == nil then
                 if skill.skill_type == query_type and skill.skill_parent == nil then
                html:tag('div'):wikitext(skill.skill_name)
                    html:node(skillBox(skill))
                html:tag('div'):wikitext(skill.skill_tag)
                    html:tag('div'):wikitext('{{#arraymap:' .. skill.skill_tag .. '|,|@|{{特性图标|@}}|}}')
                 end
                 end
             end
             end

2024年6月28日 (五) 17:12的版本

可在模块:测试调用数据/doc创建此模块的帮助文档

local p = {}
-- 加载数据
local db_cn = mw.loadData('模块:角色技能数据中文')
local dataList_cn = db_cn.char_skill_data
local db_jp = mw.loadData('模块:角色技能数据日文')
local dataList_jp = db_jp.char_skill_data

local function skillBox(skill)
    local skillBoxDiv = mw.html.create()
    skillBoxDiv = skillBoxDiv:tag('div'):wikitext(skill.skill_name)
                        :tag('div'):wikitext(skill.skill_tag)
                        :tag('div'):wikitext('{{#arraymap:' .. skill.skill_tag .. '|,|@|{{特性图标|@}}|}}')
    return skillBoxDiv
end


p["测试调用"] = function(frame)
    local query_num = frame.args['角色序号']
    local query_type = frame.args['查询类型']
    local query_lang = frame.args['查询语言'] or ""

    local html = mw.html.create()

    -- 提取数据
	local dataList = (query_lang == "cn" or query_lang == "国服") and dataList_cn or dataList_jp

    for _, ownerList in ipairs(dataList) do
        if query_num == ownerList.owner_order then
            -- 上面没问题
            for _, skill in ipairs(ownerList.owner_skill) do
                if skill.skill_type == query_type and skill.skill_parent == nil then
                    html:node(skillBox(skill))
                end
            end
        end
    end

    return tostring(html)
end

return p