模块:EquipmentInfoList:修订间差异

来自70DNF
跳转到导航 跳转到搜索
AdminAPT留言 | 贡献
创建页面,内容为“-- 模块:EventShopCounter -- 功能:统计活动商店数据中各阶段的物品数量 local p = {} -- 模块对外接口表 function p.countItems(frame) local args = frame.args local dataText = args.data or '' -- 初始化计数器 local counters = { ["金色阶段"] = 0, ["紫色阶段"] = 0, ["灰色阶段"] = 0, ["无限库存区"] = 0, ["其他"] = 0 } local currentStage = "其他"…”
 
AdminAPT留言 | 贡献
无编辑摘要
 
(未显示同一用户的5个中间版本)
第1行: 第1行:
-- 模块:EventShopCounter
local p = {}
-- 功能:统计活动商店数据中各阶段的物品数量
local p = {} -- 模块对外接口表


function p.countItems(frame)
function p.list(frame)
     local args = frame.args
     res_table = {}
    local dataText = args.data or ''
     table.insert(res_table, '123456' )
   
     return table.concat(res_table)
    -- 初始化计数器
    local counters = {
        ["金色阶段"] = 0,
        ["紫色阶段"] = 0,
        ["灰色阶段"] = 0,
        ["无限库存区"] = 0,
        ["其他"] = 0
    }
     local currentStage = "其他"
   
    -- 按行解析数据
    for line in dataText:gmatch("[^\r\n]+") do
        local parts = {}
        for part in line:gmatch("([^;]*);;") do
            table.insert(parts, part)
        end
       
        if #parts >= 2 then
            local control = parts[1]
            local content = parts[2]
           
            -- 判断是否为阶段标题行(以“X”开头且内容包含“阶段”或“区”)
            if control == 'X' and (content:find("阶段") or content:find("区")) then
                currentStage = content
            -- 判断是否为普通物品行(以“0”或“1”开头)
            elseif control == '0' or control == '1' then
                if counters[currentStage] then
                    counters[currentStage] = counters[currentStage] + 1
                else
                    counters["其他"] = counters["其他"] + 1
                end
            end
        end
     end
   
    -- 生成结果文本
    local result = "'''各阶段物品数量统计:'''<br/>"
    for stage, count in pairs(counters) do
        result = result .. string.format("* %s: %d 个<br/>", stage, count)
    end
    return result
end
end


return p -- 必须返回模块接口
return p

2025年12月22日 (一) 06:42的最新版本

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

local p = {}

function p.list(frame)
    res_table = {}
    table.insert(res_table, '123456' )
    return table.concat(res_table)
end

return p