打开/关闭菜单
切换首选项菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

模块:BusDepot:修订间差异

来自珠海交通维基
(创建页面,内容为“-- Module:BusDepot local p = {} function p.count(frame) local depot = frame.args.depot local prev_depot = mw.getCurrentFrame():getParent():getVariable('depot') or '' local depot1 = tonumber(mw.getCurrentFrame():getParent():getVariable('depot1') or 1) local num = tonumber(mw.getCurrentFrame():getParent():getVariable('num') or 0) if prev_depot == '' then depot1 = 1 num = 0 elseif prev_depot == depot then depot1 = de…”)
 
无编辑摘要
第1行: 第1行:
-- Module:BusDepot
-- Module:BusDepot
local p = {}
local p = {}
-- 全局状态(模拟变量)
local state = {
    depot = '',
    depot1 = 1,
    num = 0,
    depotlen = 1
}
function p.count(frame)
function p.count(frame)
     local depot = frame.args.depot
     local depot = frame.args.depot or ''
    local prev_depot = mw.getCurrentFrame():getParent():getVariable('depot') or ''
      
     local depot1 = tonumber(mw.getCurrentFrame():getParent():getVariable('depot1') or 1)
     -- 重置或更新状态
     local num = tonumber(mw.getCurrentFrame():getParent():getVariable('num') or 0)
     if state.depot == '' then
     if prev_depot == '' then
         state.depot1 = 1
         depot1 = 1
         state.num = 0
         num = 0
     elseif state.depot == depot then
     elseif prev_depot == depot then
         state.depot1 = state.depot1 + 1
         depot1 = depot1 + 1
     else
     else
         num = num + 1
         state.num = state.num + 1
        state.depot1 = 1
     end
     end
     mw.getCurrentFrame():getParent():setVariable('depot', depot)
      
     mw.getCurrentFrame():getParent():setVariable('depot1', depot1)
     -- 更新当前depot和depotlen
     mw.getCurrentFrame():getParent():setVariable('num', num)
     state.depot = depot
     mw.getCurrentFrame():getParent():setVariable('depotlen', depot1)
     state.depotlen = state.depot1
   
     return ''
     return ''
end
end
function p.getDepotLen(frame)
    return state.depotlen
end
return p
return p

2025年4月15日 (二) 11:01的版本

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

-- Module:BusDepot
local p = {}

-- 全局状态(模拟变量)
local state = {
    depot = '',
    depot1 = 1,
    num = 0,
    depotlen = 1
}

function p.count(frame)
    local depot = frame.args.depot or ''
    
    -- 重置或更新状态
    if state.depot == '' then
        state.depot1 = 1
        state.num = 0
    elseif state.depot == depot then
        state.depot1 = state.depot1 + 1
    else
        state.num = state.num + 1
        state.depot1 = 1
    end
    
    -- 更新当前depot和depotlen
    state.depot = depot
    state.depotlen = state.depot1
    
    return ''
end

function p.getDepotLen(frame)
    return state.depotlen
end

return p