跳到内容

Module:Songtable:修订间差异

添加2,677字节 、​ 2022年10月25日 (星期二)
修复Tempestissimo byd标记bug;修复ID设置为空报错的bug
(移动端不显示提示信息)
(修复Tempestissimo byd标记bug;修复ID设置为空报错的bug)
(未显示4个用户的18个中间版本)
第1行: 第1行:
local getArgs = require('Module:Arguments').getArgs
local getArgs = require('Module:Arguments').getArgs
local link = require('Module:Link')._link
local link = require('Module:Link')._link
local getData = require("Module:data")
local getData = require("Module:Arcaea Data")
local p = {}
local p = {}


第40行: 第40行:
end
end


function bydMark(byd, name)
function bydMark(byd, name, inNs)
    local diff, mark = mw.html.create('div'), mw.html.create('div')
    local diff, mark = mw.html.create('div'), mw.html.create('div')
    diff:wikitext('[Beyond]')
    diff:wikitext('[Beyond]')
    mark:wikitext('仅移动版')
    mark:wikitext('仅移动版')
    if byd and name ~= 'Tempestissimo'
    if byd and inNs and name ~= "Tempestissimo"
      then
      then
      return tostring(tostring(diff)..tostring(mark))
      return tostring(tostring(diff)..tostring(mark))
第59行: 第59行:
end
end


function getImage(id, all, pst, prs, ftr, byd, second, normalJacketArgs, bydJacketArgs, normalJacketData, bydJacketData, bydyes, type)
function getImage(id, all, pst, prs, ftr, byd, second, normalJacketArgs, bydJacketArgs, normalJacketData, bydJacketData, bydyes, mold, imageConfig)
    --谢邀,这写的什么东西我自己都看不懂了
    --谢邀,这写的什么东西我自己都看不懂了 ———Star0
    if not(id or all) then return nil end
    if not(id or all) then return nil end


第66行: 第66行:
    local tab1, tab2, tab3, part1, part2, part3, jacket1, jacket2
    local tab1, tab2, tab3, part1, part2, part3, jacket1, jacket2
    container:addClass('container')
    container:addClass('container')
    tab:attr('id', 'tab-'..type) tab:addClass('img-tab')
    tab:attr('id', 'tab-'..mold) tab:addClass('img-tab')


    local normalJacket, bydJacket
    local normalJacket, bydJacket
第85行: 第85行:
      end
      end
    end
    end
--Last判断
if id == 'last'
then
     tab1, tab2, tab3, part1, part2, part3 = mw.html.create('div'), mw.html.create('div'), mw.html.create('div'), mw.html.create('div'), mw.html.create('div'), mw.html.create('div')
     tab1:wikitext('Normal') tab2:wikitext('Moment') tab3:wikitext('Eternity')
     tab1:addClass('img-tab-part ftr') tab2:addClass('img-tab-part byd') tab3:addClass('img-tab-part byd')
     tab:wikitext(tostring(tab1)) tab:wikitext(tostring(tab2)) tab:wikitext(tostring(tab3))
     container:wikitext(tostring(tab))


     part1:wikitext('[[文件:Songs last.jpg|256px|none]]'..labelText('画师')..normalJacket) part2:wikitext('[[文件:Songs last byd.jpg|256px|none]]'..labelText('画师')..normalJacket) part3:wikitext('[[文件:Songs last byd2.jpg|256px|none]]'..labelText('画师')..normalJacket)
     part1:addClass('active tab-text-'..mold) part2:addClass('tab-text-'..mold) part3:addClass('tab-text-'..mold)
     container:wikitext(tostring(part1)) container:wikitext(tostring(part2)) container:wikitext(tostring(part3))
     return tostring(container)
end
    if pst and prs and ftr
    if pst and prs and ftr
      then
      then
第96行: 第114行:


      part1:wikitext('[[文件:'..pst..'|256px|none]]'..labelText('画师')..normalJacket) part2:wikitext('[[文件:'..prs..'|256px|none]]'..labelText('画师')..normalJacket) part3:wikitext('[[文件:'..ftr..'|256px|none]]'..labelText('画师')..normalJacket)
      part1:wikitext('[[文件:'..pst..'|256px|none]]'..labelText('画师')..normalJacket) part2:wikitext('[[文件:'..prs..'|256px|none]]'..labelText('画师')..normalJacket) part3:wikitext('[[文件:'..ftr..'|256px|none]]'..labelText('画师')..normalJacket)
      part1:addClass('tab-text-'..type) part2:addClass('tab-text-'..type) part3:addClass('active tab-text-'..type)
      part1:addClass('tab-text-'..mold) part2:addClass('tab-text-'..mold) part3:addClass('active tab-text-'..mold)
      container:wikitext(tostring(part1)) container:wikitext(tostring(part2)) container:wikitext(tostring(part3))
      container:wikitext(tostring(part1)) container:wikitext(tostring(part2)) container:wikitext(tostring(part3))


第102行: 第120行:
    end
    end


    if byd
    if byd and imageConfig~='nobyd'
      then
      then
      tab1, tab2, part1, part2 = mw.html.create('div'), mw.html.create('div'), mw.html.create('div'), mw.html.create('div')
      tab1, tab2, part1, part2 = mw.html.create('div'), mw.html.create('div'), mw.html.create('div'), mw.html.create('div')
第112行: 第130行:


      part1:wikitext('[[文件:'..all..'|256px|none]]'..labelText('画师')..normalJacket) part2:wikitext('[[文件:'..byd..'|256px|none]]'..labelText('画师')..tostring(bydJacket))
      part1:wikitext('[[文件:'..all..'|256px|none]]'..labelText('画师')..normalJacket) part2:wikitext('[[文件:'..byd..'|256px|none]]'..labelText('画师')..tostring(bydJacket))
      part1:addClass('active tab-text-'..type) part2:addClass('tab-text-'..type)
      part1:addClass('active tab-text-'..mold) part2:addClass('tab-text-'..mold)
      container:wikitext(tostring(part1)) container:wikitext(tostring(part2))
      container:wikitext(tostring(part1)) container:wikitext(tostring(part2))


第128行: 第146行:


      part1:wikitext('[[文件:'..all..'|256px|none]]'..labelText('画师')..normalJacket) part2:wikitext('[[文件:'..second..'|256px|none]]'..labelText('画师')..normalJacket)
      part1:wikitext('[[文件:'..all..'|256px|none]]'..labelText('画师')..normalJacket) part2:wikitext('[[文件:'..second..'|256px|none]]'..labelText('画师')..normalJacket)
      part1:addClass('active tab-text-'..type) part2:addClass('tab-text-'..type)
      part1:addClass('active tab-text-'..mold) part2:addClass('tab-text-'..mold)
      container:wikitext(tostring(part1)) container:wikitext(tostring(part2))
      container:wikitext(tostring(part1)) container:wikitext(tostring(part2))


第134行: 第152行:
    end
    end


    if id and bydyes
    if id and bydyes and imageConfig~='nobyd'
      then
      then
      tab1, tab2, part1, part2 = mw.html.create('div'), mw.html.create('div'), mw.html.create('div'), mw.html.create('div')
      tab1, tab2, part1, part2 = mw.html.create('div'), mw.html.create('div'), mw.html.create('div'), mw.html.create('div')
第144行: 第162行:


      part1:wikitext('[[文件:Songs '..id..'.jpg|256px|none]]'..labelText('画师')..normalJacket) part2:wikitext('[[文件:Songs '..id..' byd.jpg|256px|none]]'..labelText('画师')..tostring(bydJacket))
      part1:wikitext('[[文件:Songs '..id..'.jpg|256px|none]]'..labelText('画师')..normalJacket) part2:wikitext('[[文件:Songs '..id..' byd.jpg|256px|none]]'..labelText('画师')..tostring(bydJacket))
      part1:addClass('active tab-text-'..type) part2:addClass('tab-text-'..type)
      part1:addClass('active tab-text-'..mold) part2:addClass('tab-text-'..mold)
      container:wikitext(tostring(part1)) container:wikitext(tostring(part2))
      container:wikitext(tostring(part1)) container:wikitext(tostring(part2))


第181行: 第199行:


    return merge
    return merge
end
function title(name,nameSecond,online)
   local result=name
   if nameSecond then result = result .. "<br>" .. nameSecond end
   if not(online) then result = result .. "<br>" .. '此曲目暂未上线' end
   return result
end
end


第190行: 第215行:
function p._main(args)
function p._main(args)


    local data, dataNs = getData.getMobile(args['曲名']), getData.getNS(args['曲名'])
   -- 获取数据查找函数
    local data, dataNs
   if args["id"] and args["id"] ~= ""
   then
     data, dataNs = getData.singleSongInformation(args['id'], "id", "mobile"), getData.singleSongInformation(args['id'], "id", "ns")
   elseif args["曲名"]
   then
     data, dataNs = getData.singleSongInformation(args['曲名'], "name", "mobile"), getData.singleSongInformation(args['曲名'], "name", "ns")
   end
 
   -- 判断曲目在哪个平台存在。
   local inMobile,inNs = false, false
   if data("id") or args["更新时间"] then
     inMobile = true
   end
 
   if dataNs("id") or args["更新时间NS"] then
     inNs = true
   end


   -- 判断byd谱面是否存在;先假定NS不会有beyond等级。
    local byd
    local byd
    if args['Beyond等级'] or data('bydRating') then byd = true else byd = false end
    if args['Beyond等级'] or data('bydRating') then byd = true else byd = false end


   -- 处理谱师参数,未填写的等级谱师向前级复制(向下兼容)
    local getChartDesigner = {
    local getChartDesigner = {
      [1] = {'mobile', 'PastNote编写', 'note编写', 'pstChartDesigner'},
      [1] = 
      [2] = {'mobile', 'PresentNote编写', 'note编写', 'prsChartDesigner'},
     {'mobile', 'PastNote编写', 'note编写', 'pstChartDesigner'},
      [3] = {'mobile', 'FutureNote编写', 'note编写', 'ftrChartDesigner'},
      [2] = 
    [4] = {'mobile', 'BeyondNote编写', 'note编写', 'bydChartDesigner'}}
     {'mobile', 'PresentNote编写', 'note编写', 'prsChartDesigner'},
      [3] = 
     {'mobile', 'FutureNote编写', 'note编写', 'ftrChartDesigner'},
    [4] = 
     {'mobile', 'BeyondNote编写', 'note编写', 'bydChartDesigner'}}


    local chartDesigner = {}
    local chartDesigner = {}
第217行: 第266行:
    end
    end


   -- 依据byd是否存在处理单元格合并参数。
    local span
    local span
    if byd then
    if byd then
第226行: 第276行:
    -- if args['曲名'] == 'Tempestissimo' then spanNs = {'grid-column-start: span 1', 'grid-column-start: span 1', 'grid-column-start: span 1', 'grid-column-start: span 1'} end
    -- if args['曲名'] == 'Tempestissimo' then spanNs = {'grid-column-start: span 1', 'grid-column-start: span 1', 'grid-column-start: span 1', 'grid-column-start: span 1'} end


    local imageA = getImage(data('id'), args['图片'], args['Past曲绘'], args['Present曲绘'], args['Future曲绘'], args['Beyond曲绘'], args['第二曲绘图片'], args['画师'], args['Beyond画师'], data('ftrJacketDesigner'), data('bydJacketDesigner'), byd, 'a')
    local imageA = getImage(data('id'), args['图片'], args['Past曲绘'], args['Present曲绘'], args['Future曲绘'], args['Beyond曲绘'], args['第二曲绘图片'], args['画师'], args['Beyond画师'], data('ftrJacketDesigner'), data('bydJacketDesigner'), byd, 'a', args['图片显示控制'])
    local imageB = getImage(data('id'), args['图片'], args['Past曲绘'], args['Present曲绘'], args['Future曲绘'], args['Beyond曲绘'], args['第二曲绘图片'], args['画师'], args['Beyond画师'], data('ftrJacketDesigner'), data('bydJacketDesigner'), byd, 'b')
    local imageB = getImage(data('id'), args['图片'], args['Past曲绘'], args['Present曲绘'], args['Future曲绘'], args['Beyond曲绘'], args['第二曲绘图片'], args['画师'], args['Beyond画师'], data('ftrJacketDesigner'), data('bydJacketDesigner'), byd, 'b', args['图片显示控制'])


   -- 生成Grid表格的信息表;在后文中依据格式进行生成。
   --
    local infoList = {
    local infoList = {
      [1] = {
      [1] = 
       choice(args['曲名'] or data('title') or dataNs('title'), data('id') or dataNs('id') or #args > 1, (args['曲名'] or data('title') or dataNs('title')) .. "<br>''此 曲目暂未登陆''", true),
     { title(args['曲名'] or data('title') or dataNs('title'), args['第二曲名'], data('id') or dataNs('id') or #args > 1), { id = 'title'}},
     {id = 'title'}},
     [2] =
     [2] = {
     { imageA or choice('[[文件:Songs '..tostring(data('id')) .. '.jpg|点 上传图片]]', data('id'), '[[文件:Songs '..tostring(dataNs('id')) .. '.jpg|点此上传图片]]', dataNs('id')), { id = 'top-image'}},
       imageA or choice('[[文件:Songs '..tostring(data('id')) .. '.jpg|点此上传图片]]', data('id'), '[[文件:Songs '..tostring(dataNs('id')) .. '.jpg|点此上传图片]]', dataNs('id')),
     [3] =
     {id = 'top-image'}},
     { imageB or choice('[[文件:Songs '..tostring(data('id')) .. '.jpg|点此上传图片]]', data('id'), '[[文件:Songs '..tostring(dataNs('id')) .. '.jpg|点此上传图片]]', dataNs('id')), { id = 'right-image'}},
     [3] = {
     [4] =
       imageB or choice('[[文件:Songs '..tostring(data('id')) .. '.jpg|点此上传图片]]', data('id'), '[[文件:Songs '..tostring(dataNs('id')) .. '.jpg|点此上传图片]]', dataNs('id')),
     { ' 曲目信息', {class = 'header'} },
      {id = 'right-image'}},
      [5]
      [4] = {
      { '曲 ', { class = 'label'}},
       '曲 目信息',
      [6] = 
     {class = 'header'}},
     { args[' 曲'] or choice(link({'曲师', tostring(data('artist'))}) or link({'曲师', tostring(dataNs('artist'))}), data('artist') or dataNs('artist'), '', true), { class = 'data'}},
      [5] = {
      [7] = 
       ' 曲师',
     { '曲包', { class = 'label'}},
     {class = 'label'}},
      [8] = 
     [6] = {
     { args['曲包'] or choice('[['..tostring(choice(getData.packName(data('set')), data('set'), getData.packName(dataNs('set')), dataNs('set')))..']]',data('set') or dataNs('set'),'',true), { class = 'data'}},
       args['编 曲'] or choice(link({'曲师', tostring(data('artist'))}) or link({'曲师', tostring(dataNs('artist'))}), data('artist') or dataNs('artist'), '', true),
      [9] = 
     {class = 'data'}},
     { '时长', { class = 'label'}},
      [7] = {
      [10] = 
       '曲包',
     { args['时长'] or '空', { class = 'data'}},
     {class = 'label'}},
      [11] = 
      [8] = {
     { 'BPM', { class = 'label'}},
       args['曲包'] or choice('[['..tostring(choice(getData.pack({data('set')}), data('set'), getData.pack({dataNs('set')}), dataNs('set')))..']]',data('set') or dataNs('set'),'',true),
      [12] = 
     {class = 'data'}},
     { args['BPM'] or data('bpm') or dataNs('bpm'), { class = 'data'}},
      [9] = {
      [13] = 
       '时长',
     { '谱面信息', { class = 'header'}},
     {class = 'label'}},
      [14] = 
      [10] = {
     { '难度', { class = 'label'}},
       args['时长'] or '空',
      [15] = 
     {class = 'data'}},
     { '[Past]', { class = 'pst-label'}},
      [11] = {
      [16] = 
       'BPM',
     { '[Present]', { class = 'prs-label'}},
     {class = 'label'}},
      [17] = 
      [12] = {
     { '[Future]', { class = 'ftr-label'}},
       args['BPM'] or data('bpm') or dataNs('bpm'),
      [18] = 
     {class = 'data'}},
     { bydMark(byd, args['曲名'], inNs), { class = 'byd-label'}},
      [13] = {
      [19] = 
       '谱面信息',
     { '等级', { class = 'label'}},
     {class = 'header'}},
      [20] = 
      [14] = {
     { args['Past等级'] or data('pstRating'), { class = 'pst-data'}},
       '难度',
      [21] = 
     {class = 'label'}},
     { args['Present等级'] or data('prsRating'), { class = 'prs-data'}},
      [15] = {
      [22] = 
       '[Past]',
     { args['Future等级'] or data('ftrRating'), { class = 'ftr-data'}},
     {class = 'pst-label'}},
      [23] = 
      [16] = {
     { args['Beyond等级'] or data('bydRating'), { class = 'byd-data'}},
       '[Present]',
      [24] = 
     {class = 'prs-label'}},
     { 'note数量', { class = 'label'}},
      [17] = {
      [25] = 
       '[Future]',
     { args['PastNote'] or '空', { class = 'pst-data'}},
     {class = 'ftr-label'}},
      [26] = 
      [18] = {
     { args['PresentNote'] or '空', { class = 'prs-data'}},
       bydMark(byd, args['曲名']),
      [27] = 
     {class = 'byd-label'}},
      { args['FutureNote'] or '空', {class = 'ftr-data'}},
      [19] = {
      [28] = 
       '等级',
     { args['BeyondNote'] or '空', { class = 'byd-data'}},
     {class = 'label'}},
      [29] = 
      [20] = {
     { '谱面设计', { class = 'label'}},
       args['Past等级'] or data('pstRating'),
      [30] = 
     {class = 'pst-data'}},
     { chartDesigner[1] or '空', { class = 'pst-data'}, span[1]},
      [21] = {
      [31] = 
       args['Present等级'] or data('prsRating'),
     { chartDesigner[2] or '空', { class = 'prs-data'}, span[2]},
     {class = 'prs-data'}},
      [32] = 
      [22] = {
     { chartDesigner[3] or '空', { class = 'ftr-data'}, span[3]},
       args['Future等级'] or data('ftrRating'),
      [33] = 
     {class = 'ftr-data'}},
     { chartDesigner[4] or '空', { class = 'byd-data'}, span[4]},
      [23] = {
      [34] = 
       args['Beyond等级'] or data('bydRating'),
     { '谱面信息(Joy-Con)', { class = 'header ns', id = 'ns-play-header'}},
     {class = 'byd-data'}},
      [35] = 
      [24] = {
     { '难度', { class = 'label ns'}},
       'note数量',
      [36] = 
     {class = 'label'}},
     { '[Past]', { class = 'pst-label ns'}},
      [25] = {
      [37] = 
       args['PastNote'] or '空',
     { '[Present]', { class = 'prs-label ns'}},
     {class = 'pst-data'}},
      [38] = 
      [26] = {
     { '[Future]', { class = 'ftr-label ns'}},
       args['PresentNote'] or '空',
      [39] = 
     {class = 'prs-data'}},
     { bydMark(byd, args['曲名'], inNs), { class = 'byd-label ns'}},
      [27] = {
      [40] = 
      args['FutureNote'] or '空', {class = 'ftr-data'}},
     { 'note数量', { class = 'label ns'}},
      [28] = {
      [41] = 
       args['BeyondNote'] or '空',
     { args['PastNoteNS'] or args['PastNote'], { class = 'pst-data ns'}},
     {class = 'byd-data'}},
      [42] = 
      [29] = {
     { args['PresentNoteNS'] or args['PresentNote'], { class = 'prs-data ns'}},
       '谱面设计',
      [43] = 
     {class = 'label'}},
     { args['FutureNoteNS'] or args['FutureNote'], { class = 'ftr-data ns'}},
      [30] = {
      [44] = 
       chartDesigner[1] or '空',
     { args['BeyondNoteNS'] or '空', { class = 'byd-data ns'}},
     {class = 'pst-data'}, span[1]},
      [45] = 
      [31] = {
     { '背景', { class = 'label'}},
       chartDesigner[2] or '空',
      [46] = 
     {class = 'prs-data'}, span[2]},
     { bgCov(args['背景']) or bgCov(data('bg')) or bgCov(dataNs('bg')), { class = 'data' , id = 'bg-normal' }},
      [32] = {
      [47] = 
       chartDesigner[3] or '空',
     { bgCov(args['Future背景']) , { class = 'data' , id = 'bg-ftr' }},
     {class = 'ftr-data'}, span[3]},
      [48] = 
      [33] = {
     { '更新时间', { id = 'update-data-label', class = 'label'}},
       chartDesigner[4] or '空',
     [49] =
     {class = 'byd-data'}, span[4]},
     { dateCov(args['更新版本'], args['更新时间'], labelText('移动版'), 'arg') or dateCov(data('version'), tonumber(data('date')), labelText('移动版'), 'data'), { id = 'mobile-date-normal', class = 'data'}},
      [34] = {
      [50] = 
       '谱面信息(Joy-Con)',
     { dateCov(args['Beyond更新版本'], args['Beyond更新时间'], labelText('移动版'), 'arg') or '空', { id = 'mobile-date-byd', class = 'data'}},
     {class = 'header ns', id = 'ns-play-header'}},
      [51] = 
      [35] = {
     { dateCov(args['更新版本NS'], args['更新时间NS'], labelText('NS版'), 'arg') or dateCov(dataNs('version'), tonumber(dataNs('date')), labelText('NS版'), 'data'), { id = 'ns-date-normal', class = 'data ns'}},
       '难度',
      [52] = 
     {class = 'label ns'}},
     { '空', { id = 'ns-date-byd', class = 'data ns'}}
      [36] = {
   }
       '[Past]',
     {class = 'pst-label ns'}},
      [37] = {
       '[Present]',
     {class = 'prs-label ns'}},
      [38] = {
       '[Future]',
     {class = 'ftr-label ns'}},
      [39] = {
       bydMark(byd, args['曲名']),
     {class = 'byd-label ns'}},
      [40] = {
       'note数量',
     {class = 'label ns'}},
      [41] = {
       args['PastNoteNS'] or args['PastNote'],
     {class = 'pst-data ns'}},
      [42] = {
       args['PresentNoteNS'] or args['PresentNote'],
     {class = 'prs-data ns'}},
      [43] = {
       args['FutureNoteNS'] or args['FutureNote'],
     {class = 'ftr-data ns'}},
      [44] = {
       args['BeyondNoteNS'] or '空',
     {class = 'byd-data ns'}},
      [45] = {
       '背景',
     {class = 'label'}},
      [46] = {
       bgCov(args['背景']) or bgCov(data('bg')) or bgCov(dataNs('bg')),
     {class = 'data'}},
      [47] = {
       '更新时间',
     {id = 'update-data-label', class = 'label'}},
      [48] = {
       dateCov(args['更新版本'], args['更新时间'], labelText('移动版'), 'arg') or dateCov(data('version'), tonumber(data('date')), labelText('移动版'), 'data'),
     {id = 'mobile-date-normal', class = 'data'}},
      [49] = {
       dateCov(args['Beyond更新版本'], args['Beyond更新时间'], labelText('移动版'), 'arg') or '空',
     {id = 'mobile-date-byd', class = 'data'}},
      [50] = {
       dateCov(args['更新版本NS'], args['更新时间NS'], labelText('NS版'), 'arg') or dateCov(dataNs('version'), tonumber(dataNs('date')), labelText('NS版'), 'data'),
     {id = 'ns-date-normal', class = 'data ns'}},
      [51] = {
       '空',
     {id = 'ns-date-byd', class = 'data ns'}}}


    local box = mw.html.create('div')
    local box = mw.html.create('div')


    --样式控制
    --样式控制
    box:addClass("songbox")
    box:addClass("arcaeabox")
    if byd then box:addClass("byd") end
    if byd then box:addClass("byd") end
    if dataNs('side') == 1 or args['侧'] == '1' then box:addClass("conflict") else box:addClass("light") end
    if dataNs('side') == 1 or args['侧'] == '1'
   then
   box:addClass("conflict")
   else if dataNs('side') == 2 or args['侧'] == '2' then box:addClass("colorless") else box:addClass("light") end
   end
    if args['更新版本NS'] or dataNs('id')
    if args['更新版本NS'] or dataNs('id')
      then
      then
第400行: 第409行:
    if args['曲名'] == 'Tempestissimo' then box:addClass('ns-byd-date') box:addClass('ns-date-span') end
    if args['曲名'] == 'Tempestissimo' then box:addClass('ns-byd-date') box:addClass('ns-date-span') end
    if not(args['更新版本'] or args['更新时间'] or data('id')) then box:addClass('no-mobile') end
    if not(args['更新版本'] or args['更新时间'] or data('id')) then box:addClass('no-mobile') end
   if args['Future背景'] then box:addClass('bg-ftr') end


    --分类添加
    --分类添加
第420行: 第430行:
    if not(data('id') or dataNs('id') or #args > 1) then category = category..'[[分类:未登陆的曲目]]' end
    if not(data('id') or dataNs('id') or #args > 1) then category = category..'[[分类:未登陆的曲目]]' end


    if data('id') or dataNs('id')
    if (data('id') or dataNs('id')) and not(args['unset'])
      then
      then
      category = category..'[[分类:'..tostring(choice(getData.pack({data('set')}), data('set'), getData.pack({dataNs('set')}), dataNs('set'))) .. '曲包曲目]]'
      
     -- 如果没有更新packlist,不自动进行分类。
     if choice(getData.packName(data('set')), data('set'), getData.packName(dataNs('set')), dataNs('set'))
       then
       category = category..'[[分类:'..tostring(choice(getData.packName(data('set')), data('set'), getData.packName(dataNs('set')), dataNs('set'))) .. '曲包曲目]]'
     end


      if dataNs('side') == 1 or args['侧'] == '1'
      if data('side') == 1 or dataNs('side') == 1 or args['侧'] == '1'
        then
        then
        category = category..'[[分类:纷争侧曲目]]'
        category = category..'[[分类:纷争侧曲目]]'
     elseif data('side') == 0 or dataNs('side') == 0 or args['侧'] == '0'
     then
       category = category..'[[分类:光芒侧曲目]]'
      else
      else
       category = category..'[[分类: 光芒 侧曲目]]'
     category = category..'[[分类: 消色 侧曲目]]'
      end
      end


第445行: 第463行:
    local boxList = {}
    local boxList = {}


    for i, o in ipairs(infoList) do
    for _, in ipairs(infoList) do
      boxList[i] = mw.html.create('div')
      box:tag('div'):attr(v[2]):cssText(v[3]):wikitext(v[1]):done()
     boxList[i]
     :attr(infoList[i][2])
     :cssText(infoList[i][3])
     :wikitext(infoList[i][1])
     box:wikitext(tostring(boxList[i]))
    end
    end


第460行: 第473行:
      then
      then
      noticeText = noticeText..'<li>在Songlist中无法检查到此曲目。请尝试更新[[模板:Songlist]],检查页面名或填写正确的<code>曲名</code>参数。</li>'
      noticeText = noticeText..'<li>在Songlist中无法检查到此曲目。请尝试更新[[模板:Songlist]],检查页面名或填写正确的<code>曲名</code>参数。</li>'
   end
   if not(choice(getData.packName(data('set')), data('set'), getData.packName(dataNs('set')), dataNs('set')))
     then
     noticeText = noticeText..'<li>未更新Packlist。曲目信息模板无法进行曲包分类。</li>'
    end
    end


第491行: 第509行:
    if noticeText ~= ''
    if noticeText ~= ''
      then
      then
      notice = mw.getCurrentFrame():expandTemplate {title = 'Collapse', args = {
      notice = mw.getCurrentFrame():expandTemplate {title = 'Collapse', args = { ['标题'] = '曲目信息模板提示信息', ['状态'] = '折叠',
       ['标题'] = '曲目信息模板提示信息', ['状态'] = '折叠',
        ['标题文字方向'] = 'center', ['标题颜色'] = '#dddddd',
        ['标题文字方向'] = 'center', ['标题颜色'] = '#dddddd',
        ['内容颜色'] = '#eeeeee', ['内容样式'] = 'width:800px',
        ['内容颜色'] = '#eeeeee', ['内容样式'] = 'width:800px',