全站通知:

模块:首页时间

来自原神WIKI_BWIKI_哔哩哔哩
跳到导航 跳到搜索

编辑文档

{{#invoke:首页时间|info}}
现在是提瓦特时间:12月22日 周日
周日 武器/天赋突破素材
全部材料
本月商城兑换角色
芭芭拉芭芭拉 凯亚凯亚
本月商城兑换武器
宗室长剑宗室大剑宗室猎枪宗室秘法录宗室长弓
{{#invoke:首页时间|activity}}
「彩石与焰泉之国」
「循音觅奇」
「强风猛进之述演」
「与玛薇卡同行」
「地脉移涌」第十五期
local p={}

function p.isleap(year)
	if (year%100~=0 and year%4==0 or year%400==0) then
		-- mw.log("true")
		return true
	else
		-- mw.log("false")
		return false
	end
end

function p.info(frame)
	
	if (frame==nil) then
		frame = mw.getCurrentFrame()
	end
	
	-- 当前时间信息
	local wkday = {"周日","周一","周二","周三","周四","周五","周六"}
	local gamedate = os.date("*t", os.time() - 4*60*60) --当前时间往前4小时,对应凌晨四点刷新日期
	local dmonth = gamedate["month"]
	local dday = gamedate["day"]
	local dwkday = gamedate["wday"]
	local text_date = [['''现在是提瓦特时间:]]..dmonth..[[月]]..dday..[[日 ]]..wkday[dwkday]..[[''']]
	-- text_date = text_date.."  "..gamedate["hour"].."时"..gamedate["min"].."分"
	
	-- 生日祝福
	local text_birthday = frame:callParserFunction{name = '#Widget:生日祝福'}
	
	-- 日替材料
	local text_material = ""
	local wkday_gp = {"周日","周一、周四","周二、周五","周三、周六","周一、周四","周二、周五","周三、周六"}
	local text_weapon_title = "[[日替刷取材料|"..[['''<font style="color: #3B475D">]]..wkday_gp[dwkday]..[[ 武器突破素材</font>''']].."]]<br>"
	local text_talent_title = "<br>[[日替刷取材料|"..[['''<font style="color: #3B475D">]]..wkday_gp[dwkday]..[[ 天赋突破素材</font>''']].."]]<br>"
	local text_weapon = ""
	local text_talent = ""
	local text_weapon_data = {
		[1] = "高塔孤王的破瓦,孤云寒林的光砂,远海夷地的瑚枝,谧林涓露的铜符,悠古弦音的残章,贡祭炽心的惶恐",-- 周一周四
		[2] = "凛风奔狼的始龀,雾海云间的铅丹,鸣神御灵的明惠,绿洲花园的追忆,纯圣露滴的滤渣,谵妄圣主的朽败",-- 周二周五
		[3] = "狮牙斗士的枷锁,漆黑陨铁的一粒,今昔剧画的恶尉,烈日威权的残响,无垢之海的苦盏,神合秘烟的思绪",-- 周三周六
	}
	local text_talent_data = {
		[1] = "「自由」的教导,「繁荣」的教导,「浮世」的教导,「诤言」的教导,「公平」的教导,「角逐」的教导",-- 周一周四
		[2] = "「抗争」的教导,「勤劳」的教导,「风雅」的教导,「巧思」的教导,「正义」的教导,「焚燔」的教导",-- 周二周五
		[3] = "「诗文」的教导,「黄金」的教导,「天光」的教导,「笃行」的教导,「秩序」的教导,「纷争」的教导",-- 周三周六
	}
	if (dwkday==1) then
		text_material = "[[日替刷取材料|"..[['''周日 <font style="color: #3B475D;">武器</font>/<font style="color: #b739a2">天赋</font>突破素材''']].."]]<br>"
		text_material = text_material.."全部材料"
	else
		if (dwkday==2 or dwkday==5) then
			-- 周一周四
			text_weapon = frame:callParserFunction{name="#arraymap:"..text_weapon_data[1], args={", ","@@@","{{图标|小|@@@}}",""}}
			text_talent = frame:callParserFunction{name="#arraymap:"..text_talent_data[1], args={", ","@@@","{{图标|小|@@@}}",""}}
		elseif (dwkday==3 or dwkday==6) then
			-- 周二周五
			text_weapon = frame:callParserFunction{name="#arraymap:"..text_weapon_data[2], args={", ","@@@","{{图标|小|@@@}}",""}}
			text_talent = frame:callParserFunction{name="#arraymap:"..text_talent_data[2], args={", ","@@@","{{图标|小|@@@}}",""}}
		elseif (dwkday==4 or dwkday==7) then
			-- 周三周六
			text_weapon = frame:callParserFunction{name="#arraymap:"..text_weapon_data[3], args={", ","@@@","{{图标|小|@@@}}",""}}
			text_talent = frame:callParserFunction{name="#arraymap:"..text_talent_data[3], args={", ","@@@","{{图标|小|@@@}}",""}}
		end
		text_material = text_weapon_title..text_weapon..text_talent_title..text_talent
	end
	
	-- 星辉兑换
	local text_exchange = ""
	local month_characters = {
		[1] = "菲谢尔,香菱",
		[2] = "北斗,诺艾尔",
		[3] = "凝光,行秋",
		[4] = "雷泽,安柏",
		[5] = "班尼特,丽莎",
		[6] = "芭芭拉,凯亚",
		[7] = "菲谢尔,香菱",
		[8] = "北斗,诺艾尔",
		[9] = "凝光,行秋",
		[10] = "雷泽,安柏",
		[11] = "班尼特,丽莎",
		[12] = "芭芭拉,凯亚"
	}
	local exg_char_data = month_characters[dmonth]
	local exg_char_text = frame:callParserFunction{name="#arraymap:"..exg_char_data, args={", ","@@@","{{图标|小|@@@}}[[@@@|@@@ ]]",""}}
	local exg_weap_data = ""
	if (dmonth==1 or dmonth==3 or dmonth==5 or dmonth==7 or dmonth==9 or dmonth==11) then
		exg_weap_data = "黑岩长剑,黑岩斩刀,黑岩刺枪,黑岩绯玉,黑岩战弓"
	else
		exg_weap_data = "宗室长剑,宗室大剑,宗室猎枪,宗室秘法录,宗室长弓"
	end
	local exg_weap_text = frame:callParserFunction{name="#arraymap:"..exg_weap_data, args={", ","@@@","{{图标|小|@@@}}",""}}
	text_exchange = "[[商城#星辉兑换|"..[['''<font style="color: #3B475D;">本月商城兑换角色</font>''']].."]]<br>"..exg_char_text.."<br>"
	text_exchange = text_exchange.."[[商城#星辉兑换|"..[['''<font style="color: #3B475D;">本月商城兑换武器</font>''']].."]]<br>"..exg_weap_text
	
	local result = text_date..text_birthday.."<hr>"..text_material.."<hr>"..text_exchange
	mw.log(result)
	return result
end

function p.activity(frame)

	if (frame==nil) then
		frame = mw.getCurrentFrame()
	end
	local nowdate = os.date("%Y-%m-%d %H:%M", os.time())
	local expdate = os.date("%Y-%m-%d %H:%M", os.time()+5*24*3600) --提前五天预告活动开始
	local act_data = frame:callParserFunction{name="#ask:[[分类:活动]][[开始时间::<"..expdate.."]][[结束时间::>"..nowdate.."]]",args={
		"?开始描述",
		"?结束描述",
		"?开始时间#-F[Y-m-d H:i]",
		"?结束时间#-F[Y-m-d H:i]",
		format="template",
		template="首页活动/行",
		sort="类型排序,开始时间,结束时间",
		order="desc",
		link="none",
		userparam=nowdate}}
	mw.log(act_data)
	return act_data
end

function p.rtime(frame)
	local nowdate = os.date("%Y-%m-%d %H:%M", os.time())
	mw.log(nowdate)
	return nowdate
end

return p