全站通知:
模块:Skilllist
刷
历
编
跳到导航
跳到搜索
此模块的文档可以在模块:Skilllist/doc创建
local p = {}
local icon = require("Module:Icon")
local skill_data = mw.loadData('Module:Skill.data')
local spskill_data = mw.loadData('Module:Spskill.data')
-- 生成技能列表
function p.list(frame)
local output_text = {}
local class = frame.args[1] or 'all'
local skill_type = frame.args[2] or '' -- 为sp时生成sp技能
local skill_list_data, skill_list
if skill_type == 'sp' then
skill_list_data = spskill_data
else
skill_list_data = skill_data
end
skill_list = skill_list_data['list']
local skill
local ignore_list = {}
-- ignore_list = {['钢铁意志'] = 0, ['可爱的妖精'] = 0, ['缪斯之声'] = 0}
output_text[#output_text+1] = '<div class="cq_frame">'
output_text[#output_text+1] = '<table class="cqtable odd skill_list">'
output_text[#output_text+1] = '<tr><th>技能</th><th>职业</th><th>技能<br class="nodisplay">类型</th>'
if skill_type == 'sp' then
output_text[#output_text+1] = '<th>Lv MAX 技能效果</th></tr>'
else
output_text[#output_text+1] = '<th>技能效果</th></tr>'
end
for k, name in ipairs(skill_list) do
skill = skill_list_data[name]
if (class=='all' or class==skill['c'] and (not ignore_list[name])) then
local c = skill['c']
local t = skill['t']
local e
if skill_type == 'sp' then
if skill['lv4'] == '' then
e = skill['lv3']
else
e = skill['lv5']
end
else
e = skill['e']
end
output_text[#output_text+1] = '<tr>'
output_text[#output_text+1] = '<td>[[File:'..name..'.png|link='..name..']]<span class="hidden"> </span><br class="nodisplay">[['..name..']]</td>'
output_text[#output_text+1] = '<td style="text-align:center">'..icon.class{args={c,'m'}}..'</td>'
output_text[#output_text+1] = '<td style="text-align:center">'..t..'</td>'
output_text[#output_text+1] = '<td>'..e..'</td>'
output_text[#output_text+1] = '</tr>'
end
end
output_text[#output_text+1] = '</table>'
output_text[#output_text+1] = '</div>'
return table.concat(output_text)
end
return p