Module:沙盒/Economy666/SongCollectionMulti:修订间差异

无编辑摘要
无编辑摘要
第65行: 第65行:
-- 不对song下述提及的字段存在性做检验
-- 不对song下述提及的字段存在性做检验
local diffId = {['edenwacca']='eden'}
local different_id = {['edenwacca']='eden'}
local multi_song={}
local multi_song={}
第85行: 第85行:
end
end
end
end
for _,v in pairs(diffId) do
for _,v in pairs(different_id) do
multi_song[v] = nil
multi_song[v] = nil
end
end
第109行: 第109行:
if  ns_id[id] then
if  ns_id[id] then
   display_plat = display_plat .. '[[文件:Icon Nintendo switch.png|16px|link=曲目列表 (Nintendo Switch版)]]'
   display_plat = display_plat .. '[[文件:Icon Nintendo switch.png|16px|link=曲目列表 (Nintendo Switch版)]]'
elseif diffId[id] then
elseif different_id[id] then
   display_plat = display_plat .. '[[文件:Icon Nintendo switch.png|16px|link=曲目列表 (Nintendo Switch版)]]'
   display_plat = display_plat .. '[[文件:Icon Nintendo switch.png|16px|link=曲目列表 (Nintendo Switch版)]]'
   NSid = diffId[id]
   NSid = different_id[id]
end
end
if display_plat == '' then
if display_plat == '' then
第170行: 第170行:
data:insert(durArgs[id] or ' @ ')
data:insert(durArgs[id] or ' @ ')
data:insert(song.version .. '.' .. (input '收录版本' or verQuery(song.date)))
data:insert(song.version .. '.' .. (input '收录版本' or verQuery(song.date)))
-- 难度等级
-- 难度等级
local main_diffi = {}
local main_lv = {}
for _,diffi in pairs(song.difficulties) do
local lv_table ={}
main_diffi[diffi.ratingClass] = diffi.rating .. (diffi.ratingPlus and '+' or '')
for _,diff in pairs(song.difficulties) do
main_lv[diff.ratingClass] = diff.rating .. (diff.ratingPlus and '+' or '')
end
end
if mobile_id[id] and ns_id[NSid] then
if mobile_id[id] and ns_id[NSid] then
local song_ns = ns_song[NSid]
local song_ns = ns_song[NSid]
local ns_diffi = {}
local ns_lv = {}
local c_chart = {}
local c_chart = {}
for _,diffi in pairs(song_ns.difficulties) do
for _,diff in pairs(song_ns.difficulties) do
ns_diffi[diffi.ratingClass] = diffi.rating .. (diffi.ratingPlus and '+' or '')
ns_lv[diff.ratingClass] = diff.rating .. (diff.ratingPlus and '+' or '')
if diffi.has_controller_alt_chart then
if diff.has_controller_alt_chart then
c_chart[diffi.ratingClass] = 1
c_chart[diff.ratingClass] = 1
end
end
end
end
for i = 0, 4 do
for i = 0, 4 do
local difficulty
local lv
if main_diffi[i] and ns_diffi[i] then
if main_lv[i] and ns_lv[i] then
   if main_diffi[i] == ns_diffi[i] then
   if main_lv[i] == ns_lv[i] then
     difficulty = main_diffi[i] .. (c_chart[i] and (ctrlTouch .. '<br />' .. main_diffi[i] .. ctrlJC) or '')
     lv = main_lv[i] .. (c_chart[i] and (ctrlTouch .. '<br />' .. main_lv[i] .. ctrlJC) or '')
   else
   else
     difficulty = main_diffi[i] .. onlyMobile .. '<br />' .. ns_diffi[i] .. (c_chart[i] and (ctrlTouch ..onlyNS .. '<br />' .. ns_diffi[i] .. ctrlJC .. onlyNS) or onlyNS)
     lv = main_lv[i] .. onlyMobile .. '<br />' .. ns_lv[i] .. (c_chart[i] and (ctrlTouch ..onlyNS .. '<br />' .. ns_lv[i] .. ctrlJC .. onlyNS) or onlyNS)
   end
   end
elseif main_diffi[i] then
elseif main_lv[i] then
difficulty = main_diffi[i] .. onlyMobile
lv = main_lv[i] .. onlyMobile
elseif ns_diffi[i] then
elseif ns_lv[i] then
difficulty = ns_diffi[i] .. onlyNS
lv = ns_lv[i] .. onlyNS
else
else
difficulty = '/'
lv = '/'
end
end
data:insert(input('等级', i) or difficulty)
lv_table[i] = lv
end
end
else
else
for i = 0, 4 do
for i = 0, 4 do
difficulty = main_diffi[i] or '/'
local lv = main_lv[i] or '/'
data:insert(input('等级', i) or difficulty or '/')
lv_table[i] = lv
end
end
end
end
-- 顺序:PST PRS FTR ETR BYD
local lv_order = {0, 1, 2, 4, 3}
for i=1, #lv_order do
local j = lv_order[i]
local level = lv_table[j] or '/'
data:insert(input('等级', i) or level or '/')
end
-- for i in {0, 1, 2, 4, 3} do
-- data:insert(input('等级', i) or lv or '/')
-- end
end
end
table.sort(view, 
table.sort(view,