2023年政策修订增补工作正在进行中,欢迎参与!
  • Moegirl.ICU:萌娘百科流亡社群 581077156(QQ),欢迎对萌娘百科运营感到失望的编辑者加入
  • Moegirl.ICU:账号认领正在试运行,有意者请参照账号认领流程

Module:BACharData

萌娘百科,万物皆可萌的百科全书!转载请标注来源页面的网页链接,并声明引自萌娘百科。内容不可商用。
跳转到导航 跳转到搜索
Template-info.svg 模块文档  [创建] [刷新]
local getArgs = require('Module:Arguments').getArgs
local p = {}
local function toWikitext(text1)
    return mw.getCurrentFrame():preprocess(text1)
end
local function formatStudentName(name)
    return string.gsub(name, " ", "_")
end
function p.main(frame)
    return p._main (frame, getArgs(frame))
end
function p._main(frame, args)
    if (not frame) then
        frame = mw.getCurrentFrame()
    end
    local charData = mw.text.jsonDecode(mw.title.new("Module:BACharInfo/data"):getContent())
    return charData[formatStudentName(args[1])][args[2]]
end
function p.eq(frame)
    if(not frame) then
        frame = mw.getCurrentFrame()
    end
    args = getArgs(frame)
    local charData = mw.text.jsonDecode(mw.title.new("Module:BACharInfo/data"):getContent())
    return charData[formatStudentName(args[1])]['Equipment'][tonumber(args[2])]
end
function p.w(frame)
    if(not frame) then
        frame = mw.getCurrentFrame()
    end
    args = getArgs(frame)
    local charData = mw.text.jsonDecode(mw.title.new("Module:BACharInfo/data"):getContent())
    return charData[formatStudentName(args[1])]['Weapon'][args[2]]
end

function p.json(frame)
    local result = "<div class=\"bachar-char-data\" style=\"display:none;\">"
    local studentData = mw.text.jsonDecode(mw.title.makeTitle("Module", "BACharInfo/data"):getContent())
    args = getArgs(frame)
 
    local studentInfo = studentData[formatStudentName(args[1])]
    if studentInfo == nil then
        studentInfo = {
            ["_exist"] = false,
        }
    else
        studentInfo["_exist"] = true
    end
    result = result .. mw.text.jsonEncode(studentInfo) .. "</div>"
 
    return result
end

return p