跳转到内容
打开/关闭菜单
  • 451 条目
  • 808 文件
  • 22 用户
  • 9218 编辑
Blockland Wiki
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

模块:Flagicon

来自Blockland Wiki

此模块的文档可以在模块:Flagicon/doc创建

local p = {}

-- =================================================================
-- 🏳️ 旗帜数据库 (配置中心)
-- 左边必须全大写!右边填真实文件名 (支持乱七八糟的后缀)
-- =================================================================
local flags = {

    ['CAT']    = '凯特国旗1.png',

}

function p.main(frame)
    -- 获取模板参数
    local args = frame:getParent().args
    local raw_code = args[1] or ''
    
    -- 1. 核心步骤:去空格 + 强制转大写
    -- 这样用户输入 'Lat', 'lat', 'LAT' 都会变成 'LAT'
    local code = mw.text.trim(raw_code):upper()
    
    -- 2. 查表
    local file = flags[code]
    
    -- 3. 没找到?尝试用默认图
    if not file then
        file = flags['DEFAULT']
    end

    -- 4. 处理尺寸和链接
    local size = args['size'] or '23x15px' -- 默认大小
    local link = args['link'] or ''        -- 默认无链接
    
    -- 5. 输出 Wikitext
    -- class="flagicon" 方便 CSS 控制
    return string.format('[[File:%s|%s|link=%s|alt=%s|class=mw-file-element flagicon]]', 
        file, size, link, args[1] or 'Flag')
end

return p