372
个编辑
(创建页面,内容为“local p = {} function jsonAssayForSingleSong(json, index, indexTyped) -- 传入JSON文件,索引值和索引值类型(索引是ID还是曲名)。分析JSON文件以获得曲目信息,返回的是一个查找单一曲目中信息的函数。仅获取单一曲目的信息。table中的索引名请查看下方switch表。 -- Songlist是以数字为索引值,因此遍历Songlist,直到发现需要找的曲目,将信息存入info变量中。…”) |
无编辑摘要 |
||
第13行: | 第13行: | ||
else | else | ||
for i, k in ipairs(json['songs']) do | for i, k in ipairs(json['songs']) do | ||
if k['title_localized'][' | if k['title_localized']['default'] == index then info = k end | ||
end | end | ||
end | end | ||
第46行: | 第46行: | ||
return info["difficulties"][1]['jacketDesigner'] | return info["difficulties"][1]['jacketDesigner'] | ||
end, | end, | ||
["source"] = function() return info['source_localized']['default'] end, | ["source"] = function() | ||
if info['source_localized'] | |||
then | |||
return info['source_localized']['default'] | |||
end | |||
end, | |||
["rating1"] = function() | ["rating1"] = function() | ||
return info["difficulties"][1]['rating'] | return info["difficulties"][1]['rating'] | ||
第71行: | 第76行: | ||
end | end | ||
function p.singleSongInformation(index, indexTyped | function p.singleSongInformation(index, indexTyped) | ||
-- 传入曲名或ID,获得一个查阅信息的函数。直接在下一个模块使用。 | -- 传入曲名或ID,获得一个查阅信息的函数。直接在下一个模块使用。 | ||
-- index:曲目的索引字符串,和typed一致 indexTyped:id或name,查找曲目的索引值类型 | -- index:曲目的索引字符串,和typed一致 indexTyped:id或name,查找曲目的索引值类型 | ||
if indexTyped == "id" then | |||
return jsonAssayForSingleSong(mw.text.jsonDecode(mw.getCurrentFrame():expandTemplate{ title = 'Songlist.json' } ), index, 'id') | |||
else | else | ||
return jsonAssayForSingleSong(mw.text.jsonDecode(mw.getCurrentFrame():expandTemplate{ title = 'Songlist.json' } ), index, 'name') | |||
end | end | ||
end | end | ||
第160行: | 第158行: | ||
end | end | ||
function p.allSongInformation(indexTyped | function p.allSongInformation(indexTyped) | ||
-- 获得一个查阅信息的函数,可查阅任何曲目。直接在下一个模块使用。 | -- 获得一个查阅信息的函数,可查阅任何曲目。直接在下一个模块使用。 | ||
-- indexTyped:id或name,查找曲目的索引值类型 | -- indexTyped:id或name,查找曲目的索引值类型 | ||
if indexTyped == "id" then | |||
return jsonAssayForAllSong(mw.text.jsonDecode(mw.getCurrentFrame():expandTemplate{ title = 'Songlist.json' } ), 'id') | |||
else | else | ||
return jsonAssayForAllSong(mw.text.jsonDecode(mw.getCurrentFrame():expandTemplate{ title = 'Songlist.json' } ), 'name') | |||
end | end | ||
end | end |