有兽档案馆
搜索
切换搜索
切换菜单
切换个人菜单
查看“Module:QueryCharacters”的源代码
来自有兽档案馆
阅读
查看源代码
查看历史
模块
讨论
更多操作
←
Module:QueryCharacters
因为以下原因,您没有权限编辑该页面:
您所请求的操作,仅限具有
注册用户
、
自动确认用户
、
管理员
、
界面管理员
、
优质编辑者
、
确认用户
、
巡查员
、
档案理事员
等
权限
的
用户
执行。
若您尚未登录有兽档案馆账号,请您
登录
有兽档案馆账号后操作。
您尚未完成电子邮件确认,因此操作受限,请尽快
完成电子邮件确认
。
若您无法完成前述手续,请通过适当渠道请求管理员或档案理事员协助。
您可以查看和复制此页面的源代码。
若您无权编辑本页面,您可以
提出编辑请求
,提请有权限者代为编辑。
-- 作者:华纹 (User:Blossomstripe on youshou.wiki) local p = {} function p.queryOnNumber(frame) local function queryOnNumberAndType(number, camera_type) --[[ 给定出场话数和类型,查询出场角色 number:出场话数 camera_type:出场类型 --]] local args = string.format('[[OnCamera:number::%d]]|[[OnCamera:type::%s]]|?OnCamera:character_name', number, camera_type) local results = mw.smw.ask(args) return results end local function prettyList(node, results) --[[ 将results给出的角色列表显示出来。要修改角色显示方式,只需修改该函数 node:mw.html results:mw.smw.ask返回的查询结果 --]] local ul = node:tag('ul') for _, item in pairs(results) do local li = ul:tag('li') li:wikitext('[[' .. item['OnCamera:character name'] .. ']]') end return node end local number = frame.args[1] local camera_type = frame.args[2] local node = mw.html.create('') -- 若给定出场类型,则仅查询相应出场类型的角色,否则分别查询所有出场类型的角色 if (camera_type and camera_type ~= '') then local results = queryOnNumberAndType(number, camera_type) if (type(results) == 'table') then node = prettyList(node, results) end else for idx_type, camera_type in pairs({ '主要', '次要', '背景' }) do local results = queryOnNumberAndType(number, camera_type) if (type(results) == 'table') then local title = string.format('%s角色', camera_type) local h4 = node:tag('h4') h4:wikitext(title) node = prettyList(node, results) end end end return node end return p
该页面使用的模板:
Template:Documentation
(
查看源代码
)
Module:Arguments
(
查看源代码
)
Module:Documentation
(
查看源代码
)
Module:Fullurl
(
查看源代码
)
Module:No globals
(
查看源代码
)
Module:Page name
(
查看源代码
)
Module:QueryCharacters
(
查看源代码
)
Module:QueryCharacters/doc
(
查看源代码
)
Module:Yesno
(
查看源代码
)
返回
Module:QueryCharacters
。