置顶公告:【置顶】关于临时开启评论区所有功能的公告(2022.10.22) | 【置顶】关于本站Widget恢复使用的公告
  • 你好~!欢迎来到萌娘百科镜像站!如需查看或编辑,请联系本站管理员注册账号。
  • 本镜像站和其他萌娘百科的镜像站无关,请注意分别。

Module:FGOCards

猛汉♂百科,万男皆可猛的百科全书!转载请标注来源页面的网页链接,并声明引自猛汉百科。内容不可商用。
跳到导航 跳到搜索
Template-info.svg 模块文档  [创建] [刷新]
-- Originally designed and coded by Maya (U:MJH)

local getArgs = require("Module:Arguments").getArgs

local cardMap = {
    Q = 'Quick',
    A = 'Arts',
    B = 'Buster'
}

local stringToTable = function (str)
    local rettbl = {}
    mw.ustring.gsub(str, '.',
    function (c)
        table.insert(rettbl, c)
    end)
    return rettbl
end

local tableToCards = function (tbl, size)
    local retstr = ''
    for i = 1, #tbl do
        retstr = retstr .. [=[[[File:]=] ..
        (cardMap[tbl[i]] or tbl[i]) .. '.png|' ..
        (size or 40) .. [=[px|link=]]]=]
    end
    return retstr
end

local FGOCards = {
    main = function (frame)
        local args = getArgs(frame)
        return tableToCards(stringToTable(args[1]), args[2])
    end,

    stringToCards = function (str, size)
        return tableToCards(stringToTable(str), size)
    end,

    tableToCards = tableToCards
}

return FGOCards