跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机页面
学习园地
新人须知
教程整合
NEW!!!
主题编号使用指导
论坛百科
SS分区介绍
论坛设定
论坛文化
传奇殿堂
SS大事年表
SS大学图书馆
维基事务
基本规则
新手指南——技术
新手指南——内容
wiki语法手册
规范全集
搜索
搜索
外观
登录
个人工具
登录
查看“︁模块:勋章”︁的源代码
模块
讨论
English
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
常规
链入页面
相关更改
特殊页面
页面信息
外观
移至侧栏
隐藏
←
模块:勋章
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
-- --处理勋章的模块 -- local p = {} --处理单个勋章 function renderAwardDiv(awardNum, args) --添加新的div local awardDiv = mw.html.create('div') if args['file' .. awardNum] then awardDiv --div样式 --:attr('align', 'center') :css('width', '200px') :css('margin', '15px') :css('display', 'inline-block') :css('vertical-align', 'top') :css('position', 'relative') :css('text-align', 'center') :wikitext(args['file' .. awardNum]) :wikitext('<br>') :wikitext(args['name' .. awardNum]) end --创建表格 local infoTable = mw.html.create('table') infoTable :css('margin', 'auto') :css('text-align', 'center') :css('max-width', '200px') :css('min-width', '200px') :attr('border', '1') :attr('cellspacing', '0') if args['limited' .. awardNum] then local EXP = infoTable:tag('tr') EXP :tag('th') :wikitext('限定贩售期间') :done() :tag('td') :wikitext(args['limited' .. awardNum]) :done() end if args['cost' .. awardNum] then local cost = infoTable:tag('tr') cost :tag('th') :wikitext('获取条件') :done() :tag('td') :wikitext(args['cost' .. awardNum]) :done() end if args['price' .. awardNum] then local price = infoTable:tag('tr') price :tag('th') :wikitext('价格') :done() :tag('td') :wikitext(args['price' .. awardNum]) :done() end if args['Purchase' .. awardNum] then local Purchase = infoTable:tag('tr') Purchase :tag('th') :wikitext('购买条件') :done() :tag('td') :wikitext(args['Purchase' .. awardNum]) :done() end if args['Effect' .. awardNum] then local Effect = infoTable:tag('tr') Effect :tag('th') :wikitext('效果') :done() :tag('td') :wikitext(args['Effect' .. awardNum]) :done() end if args['EXP' .. awardNum] then local EXP = infoTable:tag('tr') EXP :tag('th') :wikitext('有效期') :done() :tag('td') :wikitext(args['EXP' .. awardNum]) :done() end if args['upgrade' .. awardNum] then local upgrade = infoTable:tag('tr') upgrade :tag('th') :wikitext('升级说明') :done() :tag('td') :wikitext(args['upgrade' .. awardNum]) :done() end if args['requirements' .. awardNum] then local requirements = infoTable:tag('tr') requirements :tag('th') :wikitext('升级要求') :done() :tag('td') :wikitext(args['requirements' .. awardNum]) :done() end if args['ability' .. awardNum] then local ability = infoTable:tag('tr') ability :tag('th') :wikitext('升级能力') :done() :tag('td') :wikitext(args['ability' .. awardNum]) :done() end if args['ranking' .. awardNum] then local ranking = infoTable:tag('tr') ranking :tag('th') :wikitext('名次') :done() :tag('td') :wikitext(args['ranking' .. awardNum]) :done() end if args['author' .. awardNum] then local author = infoTable:tag('tr') author :tag('th') :wikitext('作者') :done() :tag('td') :wikitext(args['author' .. awardNum]) :done() end if args['inspiration' .. awardNum] then local inspiration = infoTable:tag('tr') inspiration :tag('th') :wikitext('灵感') :done() :tag('td') :wikitext(args['inspiration' .. awardNum]) :done() end if args['testimonials' .. awardNum] then local testimonials = infoTable:tag('tr') testimonials :tag('th') :wikitext('感言') :done() :tag('td') :wikitext(args['testimonials' .. awardNum]) :done() end if args['description' .. awardNum] then local description = infoTable:tag('tr') description :tag('td') :attr('colspan', '2') :css('padding', '0 10px 0 10px') :wikitext(args['description' .. awardNum]) :done() end return awardDiv:node(infoTable) end --处理表格 function renderMainDiv(awardNums, args) local mainDiv = mw.html.create('div')--创建mainDiv --在这里mainDiv添加样式 :css('overflow', 'auto') :css('max-width', '800px') --循环处理每一个勋章 --splitCount为分割的数量 local splitCount = tonumber(args['splitCount']) if splitCount then for i, awardNum in ipairs(awardNums) do mainDiv:node(renderAwardDiv(awardNum, args)) if i%splitCount==0 then mainDiv:tag('br') end end else for i, awardNum in ipairs(awardNums) do mainDiv:node(renderAwardDiv(awardNum, args)) end end return mainDiv end function p.awards(frame) local args={} local awardNums={} --获取页面传来得参数,而不是模板的参数 local parent_args = frame:getParent().args; --将获取的参数传给args for k, v in pairs(parent_args) do if v ~= 'nil' then args[k] = v end end for k, v in pairs(args) do --依靠file个数,计算勋章个数 local awardNum = ('' .. k):match('^file(%d+)$') if awardNum then table.insert(awardNums, tonumber(awardNum)) end end table.sort(awardNums) --处理勋章 local mainDiv = renderMainDiv(awardNums, args) return tostring(mainDiv) end return p
该页面使用的模板:
模板:勋章
(
查看源代码
)
模块:勋章
(
查看源代码
)
模块:勋章/doc
(
查看源代码
)
返回
模块:勋章
。