置顶公告:【置顶】关于临时开启评论区所有功能的公告(2022.10.22) | 【置顶】关于本站Widget恢复使用的公告
  • 你好~!欢迎来到萌娘百科镜像站!如需查看或编辑,请联系本站管理员注册账号。
  • 本镜像站和其他萌娘百科的镜像站无关,请注意分别。

Module:Sandbox/Ultim 0

贴贴♀百科,万娘皆可贴的百科全书!转载请标注来源页面的网页链接,并声明引自贴贴百科。内容不可商用。
跳到导航 跳到搜索
Template-info.svg 模块文档  [查看] [编辑] [历史] [刷新]

User:Ultim 0/Nav

这里是ultim_0在萌娘百科练习Lua的地方。

本模块现有函数如下:

函数名称 函数用法及输出示例 说明
p.main

{{#invoke:Sandbox/Ultim 0|main}}

  • Hello World!
示例函数。

参考

--这是[[User:Ultim 0]]在萌娘百科练习Lua的地方。
local p={}

function p.sgsWords(frame)	--生成[[三国杀]]武将页面中的台词列表 
	local content='<table class="wikitable" style="text-align:center">'
	if type(frame.args["skin"])~="nil" then
		content =content .. "<tr><th>皮肤</th><td colspan=2>" .. frame.args["skin"] .. "</td></tr>"
	end
	content=content .. '<tr><th>技能</th><th colspan=2>台词</th><tr>'	--表头字段
	local i=0	--计数用
	while (frame.args[i+1]~="-" and frame.args[i+1]~="-\n")	-- 当输入完所有技能及台词后,在其后的参数填“-”
	do
		if(frame.args[i+3]=="-" or frame.args[i+3]=="-\n") then	--如果某一技能只有1个台词,请在唯一台词后的参数填“-”
			content=content .. "<tr><th>"
			content=content .. frame.args[i+1]	--技能名称
			content=content .. "</th><td colspan=2>"
			content=content .. frame.args[i+2]	--台词名称
			content=content .. "</td></tr>"
		else
			content=content .. "<tr><th>"
			content=content .. frame.args[i+1]	--技能名称
			content=content .. "</th><td>"
			content=content .. frame.args[i+2]	--台词1
			content=content .. "</td><td>"
			content=content .. frame.args[i+3]	--台词2
			content=content .. "</td></tr>"
		end
		i=i+3
	end
	if type(frame.args["death"])~="nil" then
		content=content .. "<tr><th>阵亡</th><td colspan=2>" .. frame.args["death"] .. "</td></tr>"
	end
	content=content .. "</table>"
	return content
end

function p.sgsWords2(frame)	--生成[[三国杀]]武将页面中的台词列表,但是把HTML标签换成了wikitext
	local content=""
	if type(frame.args["multi"])=="nil" or (type(frame.args["multi"])~="nil" and type(frame.args["head"])~="nil") then 
		content=content .. '{| class="wikitable" style="text-align:center"\n'
	else
		content=content .. "| colspan=3 |\n|-\n"
	end
	if type(frame.args["skin"])~="nil" then
		content =content .. "| '''皮肤'''\n| colspan=2 |" .. frame.args["skin"] .. "\n|-\n"
	end
	content=content .. '! 技能 !! colspan=2 | 台词\n|-\n'	--表头字段
	local i=0	--计数用
	while (frame.args[i+1]~="-" and frame.args[i+1]~="-\n")	-- 当输入完所有技能及台词后,在其后的参数填“-”
	do
		if(frame.args[i+3]=="-" or frame.args[i+3]=="-\n") then	--如果某一技能只有1个台词,请在唯一台词后的参数填“-”
			content=content .. "| '''"
			content=content .. frame.args[i+1]	--技能名称
			content=content .. "''' || colspan=2 |"
			content=content .. frame.args[i+2]	--台词名称
			content=content .. "\n|-\n"
		else
			content=content .. "| '''"
			content=content .. frame.args[i+1]	--技能名称
			content=content .. "''' || "
			content=content .. frame.args[i+2]	--台词1
			content=content .. " || "
			content=content .. frame.args[i+3]	--台词2
			content=content .. "\n|-\n"
		end
		i=i+3
	end
	if type(frame.args["death"])~="nil" then
		content=content .. "| '''阵亡''' || colspan=2 | " .. frame.args["death"] .. "\n|-\n"
	end
	if type(frame.args["multi"])=="nil" or (type(frame.args["multi"])~="nil" and type(frame.args["foot"])~="nil") then 
		content=content .. "|}\n"
	end
	return content
end

function p.main()	--示例函数
	local text="Hello World!"
	return text
end

return p