模块:EnemyCategory
跳到导航
跳到搜索
可在模块:EnemyCategory/doc创建此模块的帮助文档
local p = {}
local getArgs = require("Module:Arguments").getArgs
function p.enemy(frame)
local args = getArgs(frame)
local lc = args['数量'] or 6
local width = args['宽度'] or 120
local enemys = {}
local enemysdata = mw.getCurrentFrame():callParserFunction('#ask', '[[分类:'..args[1]..'登场的敌人]]', '?', '?编号', '?无头像', 'format=array', 'limit=100', 'link=none', 'sep=;', 'propsep=:', 'sort=id')
enemysdata = mw.text.split(enemysdata, ';')
for k,v in ipairs(enemysdata) do
enemys[k] = mw.text.split(v, ":")
end
--mw.logObject(enemys)
local result = '|'
for k,v in ipairs(enemys) do
result = result .. mw.getCurrentFrame():expandTemplate{title = '敌人头像', args={(v[3] == 'true') and '无头像' or v[1], index=v[2], px=width, link=v[1]}}
if k % lc == 0 then
result = result .. '\n|-\n|'
elseif k ~= #(enemys) then
result = result .. '\n|'
else result = result .. '\n'
end
end
for i=0, lc-(#(enemys) % lc)-1, 1 do
result = result .. '|\n'
end
return result
end
return p