Module:沙盒/Economy666/Memory Archive NS:修订间差异
Economy666(讨论 | 贡献) 小无编辑摘要 |
Economy666(讨论 | 贡献) 小无编辑摘要 |
||
(未显示同一用户的1个中间版本) | |||
第7行: | 第7行: | ||
local dot = frame:expandTemplate {title = '·'} | local dot = frame:expandTemplate {title = '·'} | ||
local categories = {'poprec', 'partner', 'original', 'variety', 'musicgames | local categories = {'poprec', 'partner', 'original', 'variety', 'musicgames'} | ||
local getCategory = {} | local getCategory = {} | ||
for i = 1, 5 do | for i = 1, 5 do | ||
第19行: | 第19行: | ||
local nsId = {} | local nsId = {} | ||
local mobileId={} | |||
for i, v in ipairs(songlistNS) do | for i, v in ipairs(songlistNS) do | ||
if v.set == 'single' or mad.packQueryWrap(v.set, 'ns')._parentId_ == "single" then | if v.set == 'single' or mad.packQueryWrap(v.set, 'ns')._parentId_ == "single" then | ||
第27行: | 第28行: | ||
for i, v in ipairs(songlist) do | for i, v in ipairs(songlist) do | ||
if v.set == 'single' and nsId[v.id] then | if v.set == 'single' and nsId[v.id] then | ||
mobileId[v.id]= | mobileId[v.id] = true | ||
local cate = getCategory[v.category] | local cate = getCategory[v.category] | ||
songs[cate].ns[#songs[cate].ns + 1] = v | songs[cate].ns[#songs[cate].ns + 1] = v | ||
第37行: | 第38行: | ||
if not mobileId[v.id] then | if not mobileId[v.id] then | ||
-- 硬编码 gengaozo 等 | -- 硬编码 gengaozo 等 | ||
songs[ | songs[4].ns[#songs[4].ns+1] = v | ||
end | end | ||
end | end | ||
end | end | ||
local categoryNames = {'流行/推荐', '搭档', '原创', '综合', '音乐游戏 | local categoryNames = {'流行/推荐', '搭档', '原创', '综合', '音乐游戏'} | ||
local final = {} | local final = {} | ||
for i, v in pairs(frame.args) do | for i, v in pairs(frame.args) do |
2024年6月27日 (四) 18:16的最新版本
可在Module:沙盒/Economy666/Memory Archive NS/doc创建此模块的帮助文档
local mad = require 'Module:AnotherData'
local songlist = mad.listOf 'songs'
local songlistNS = mad.listOf('songs', 'ns')
local p = {}
function p.main(frame)
local dot = frame:expandTemplate {title = '·'}
local categories = {'poprec', 'partner', 'original', 'variety', 'musicgames'}
local getCategory = {}
for i = 1, 5 do
getCategory[categories[i]] = i
end
local songs = {}
for i = 1, 5 do
songs[i] = {ns = {}}
end
local nsId = {}
local mobileId={}
for i, v in ipairs(songlistNS) do
if v.set == 'single' or mad.packQueryWrap(v.set, 'ns')._parentId_ == "single" then
nsId[v.id] = true
end
end
for i, v in ipairs(songlist) do
if v.set == 'single' and nsId[v.id] then
mobileId[v.id] = true
local cate = getCategory[v.category]
songs[cate].ns[#songs[cate].ns + 1] = v
end
end
for i,v in ipairs(songlistNS) do
if v.set=='single' or mad.packQueryWrap(v.set,'ns')._parentId_=="single" then
if not mobileId[v.id] then
-- 硬编码 gengaozo 等
songs[4].ns[#songs[4].ns+1] = v
end
end
end
local categoryNames = {'流行/推荐', '搭档', '原创', '综合', '音乐游戏'}
local final = {}
for i, v in pairs(frame.args) do
final[i] = v
end
function expand(t)
local res = ''
for i, v in ipairs(t) do
if i ~= 1 then
res = res .. dot
end
res = res .. '[[' .. mad.linkTitle(v) .. ']]'
end
return res
end
for i = 1, 5 do
local list = expand(songs[i].ns)
final['group' .. i] = categoryNames[i]
final['list' .. i] = list
end
return frame:expandTemplate{title = '曲目索引', args = final}
end
return p