2023年政策修订增补工作正在进行中,欢迎参与!
Module:Kiraraf筛选
跳转到导航
跳转到搜索
local p = {}
local function notempty(s)
return (s and s ~= "")
end
local titleset = mw.loadData("模块:kiraraf角色信息")
local getArgs = require("Module:Arguments").getArgs
local function wikitext(text1)
return mw.getCurrentFrame():preprocess(text1)
end
function p.main(frame)
local iconName=frame.args[2] .. '('
if(notempty(frame.args["pre"])) then
iconName = iconName .. frame.args["pre"]
end
iconName = iconName .. frame.args[3] .. '之' .. frame.args[4] .. ')'
if(notempty(frame.args["suf"])) then
iconName = iconName .. frame.args["suf"]
end
--生成图片名元素。
local pageName
if (notempty(frame.args["pagelink"])) then
pageName=frame.args["pagelink"]
else
pageName=iconName
end
--生成卡片条目名元素,如不输入pagelink参数则与图片名元素相同。
local type="普通"
if(notempty(frame.args["pre"])) then
type="期间限定卡"
end
if(notempty(frame.args["type"])) then
type=frame.args["type"]
end
--生成卡片类型。参数type为空时,默认为普通,若参数pre非空则为期间限定卡;参数type非空时为参数type
local weapon="无"
if(notempty(frame.args["wp"])) then
weapon=frame.args["wp"]
end
if(notempty(titleset[frame.args[2]])) then
local link=titleset[frame.args[2]][1]
local title=titleset[frame.args[2]][2]
if (notempty(frame.args[3])) then
if (notempty(frame.args[4])) then
if (frame.args[1]=="3" or frame.args[1]=='4' or frame.args[1]=='5') then
local r="[[File:kiraraf-icon-"..iconName..'.png|50px|link=闪耀幻想曲:'..pageName..']]'
if(frame.args[1] ~= '3') then
r=r.."[[File:kiraraf-icon-"..iconName..'(进化).png|50px|link=闪耀幻想曲:'..pageName..']]'
end
r=r..'{{!}}{{!}}'
--输出头像,含卡片条目内链。若参数4(稀有度)不为3(为4/5),则再生成进化头像
r=r.."[["..link.."#卡片索引"
if(notempty(string.match(frame.args[2],"成年"))) then
r=r.."_2"
end
r=r.."|"..frame.args[2].."]]"
r=r..'{{!}}{{!}}'
--输出角色名,含指向主条目卡片索引的内链;并识别《学园孤岛》的成年角色,修正内链
r=r.."[["..title.."]]"
r=r.."{{!}}{{!}}"
--输出作品及内链
if(frame.args[1]=="3") then
r=r.."★★★"
end
if(frame.args[1]=="4") then
r=r.."★★★★"
end
if(frame.args[1]=="5") then
r=r.."★★★★★"
end
r=r.."{{!}}{{!}}"
--输出稀有度
r=r..frame.args[3].."{{!}}{{!}}"..frame.args[4].."{{!}}{{!}}"
--输出属性、职业
r=r..type
--输出卡片类型
r=r.."{{!}}{{!}}" .. weapon
return wikitext(r)
else
return wikitext('colspan="7"{{!}}缺少参数1,或参数1输入错误')
end
else
return wikitext('colspan="7"{{!}}缺少参数4')
end
else
return wikitext('colspan="7"{{!}}缺少参数3')
end
else
return wikitext('colspan="7"{{!}}未检测到相应角色,请检查参数2并核查相应模块')
end
end
return p