模块:OYSandbox

来自PRTS
跳转到导航 跳转到搜索

可在模块:OYSandbox/doc创建此模块的帮助文档

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

function p.time(frame)
	local wkday = {"周日","周一","周二","周三","周四","周五","周六"}
	local gamedate = os.date("*t", os.time() - 4*60*60) --当前时间往前4小时,对应凌晨四点刷新日期
	local text_date = [[现在是泰拉时间:]]..os.date("%c", os.time() - 4*60*60)
	mw.log(text_date)
	return text_date
end

-- {{#ask:[[分类:干员]][[稀有度::1]]
-- |?初始生命
-- |link=none
-- |sort=初始生命
-- |order=desc
-- }}

function p.sand(frame)
	frame = mw.getCurrentFrame()
	local text = [[{{#ask:]].."[[分类:干员]][[稀有度::1]]"..[[|?初始生命|link=none|sort=初始生命|order=desc}}]]
	mw.log(frame:preprocess(text))
	return frame:preprocess(text)
end

function p.sand2(frame)
	frame = mw.getCurrentFrame()
	local text = frame:callParserFunction{name="#ask:[[分类:干员]][[稀有度::1]]",args={"?初始生命",link="none",sort="初始生命",order="desc"}}
	mw.log(text)
	return text
end

return p