模块:CollectGoalTable

来自PRTS
跳到导航 跳到搜索

使用

使用时头部:

{{#invoke:CollectGoalTable|table
| 收集道具=
| 道具数量1=
| 道具数量2=
| 道具数量3=

}}

其中“道具数量”参数为各档位收集目标达成后获得的道具数量,可以不填,对应的默认值是50,100,150。

对于其中的每一项:

| 项目X=
| 目标一X=
| 目标二X=
| 目标三X=
  • X的范围为1-50。
  • 换行请使用<br>。个人意见尽量少用强制换行。

示例

{{#invoke:OYSandbox|table
| 收集道具=游击队员徽章

| 项目1=累计消耗理智
| 目标一1=600
| 目标二1=1200
| 目标三1=1800

| 项目2=累计提升干员经验值
| 目标一2=35000
| 目标二2=70000
| 目标三2=100000

| 项目3=在干员升级和晋升中累计消耗龙门币
| 目标一3=60000
| 目标二3=120000
| 目标三3=200000

}}
奖励
道具 带框 游击队员徽章.png50
道具 带框 游击队员徽章.png100
道具 带框 游击队员徽章.png150
项目 目标
累计消耗理智 600 1200 1800
累计提升干员经验值 35000 70000 100000
在干员升级和晋升中累计消耗龙门币 60000 120000 200000

local p = {}

function p.table(frame)
	local max_pieces = 50
	local args = (frame == mw.getCurrentFrame() and frame.args) or frame
	
	res_table = {}
	
	local item_name = mw.text.trim(args["收集道具"] or "")
	local item_c1 = mw.text.trim(args["道具数量1"] or "50")
	local item_c2 = mw.text.trim(args["道具数量2"] or "100")
	local item_c3 = mw.text.trim(args["道具数量3"] or "150")
	local item_t1 = frame:expandTemplate{title="材料消耗", args={item_name,item_c1,'50px'}}
	local item_t2 = frame:expandTemplate{title="材料消耗", args={item_name,item_c2,'50px'}}
	local item_t3 = frame:expandTemplate{title="材料消耗", args={item_name,item_c3,'50px'}}
	
	local table_class = "wikitable"
	
	table.insert(res_table, string.format("\n{|class=\"%s\" ", table_class))
	table.insert(res_table, "style=\"width:800px;text-align:center;display:table;white-space:normal;\"\n")
	table.insert(res_table, string.format("! 奖励\n!%s\n!%s\n!%s\n", item_t1, item_t2, item_t3))
	table.insert(res_table, "|-\n! 项目\n! colspan=3|目标\n")
	
	for i = 1, max_pieces do
		local piece_title = mw.text.trim(args["项目" .. i] or "")
		if piece_title ~= "" then
			local piece_goal1 = mw.text.trim(args["目标一" .. i] or "")
			local piece_goal2 = mw.text.trim(args["目标二" .. i] or "")
			local piece_goal3 = mw.text.trim(args["目标三" .. i] or "")
			
			table.insert(res_table, string.format("|-\n|%s\n|%s\n|%s\n|%s\n", piece_title, piece_goal1, piece_goal2, piece_goal3))
			
		end
	end
	
	table.insert(res_table, "|}")
	
	return table.concat(res_table)
end

return p