Module:ISMLTimer
跳转到导航
跳转到搜索
本模块用来生成新版Template:ISMLTimer的主体结构,请尽量避免直接调用本模块。
在每届大会开始之前,请根据日程表对本模块进行维护。
具体的维护内容包括:
- 日期更新
- 赛程调整
- 其他需要维护的项目
赛程方面的更新请参阅当年章程,赛程方面的更新同样会反映到当年度的日程表中,可以互做参照。
根据赛事阶段的不同,请用不同的颜色进行标识,参见{{ISML}}。
具体的更新要求请参见模块中具体注释,请勿删除--后的注释文字。
诚挚的向维护者表示感谢。
local p = {}
function p.main(frame)
--这里的表格是不同阶段的日程表,维护时只需修改这些数字即可,淘汰赛每个阶段单独一行
--注意不要删去0,这是判断轮次的依据之一
--同时注意:在常规赛七个阶段轮次不统一时,需要在2-8行(即常规赛)少的一边补充0至所有数组的元素数量相同
local days={{219,221,223,225,227,301,0}, --预选阶段
{310,314,317,321,324,328,0}, --第一阶段(原:海蓝宝石)
{407,411,414,418,421,425,0}, --第二阶段(原:黄玉)
{505,509,512,516,519,523,0}, --第三阶段(原:紫水晶)
{602,606,609,613,616,620,0}, --第四阶段(原:蓝宝石)
--{0,0,0,0,0,0,0}, --绿宝石
--{0,0,0,0,0,0,0}, --红宝石
--{0,0,0,0,0,0,0}, --钻石
{630,0}, --淘汰赛 - 预赛
{704,0}, --淘汰赛 - 胜者组第一轮&败者组第一轮
{707,0}, --淘汰赛 - 败者组第二轮
{711,0}, --淘汰赛 - 胜者组第二轮&败者组第三轮
{714,0}, --淘汰赛 - 败者组第四轮
{718,0}, --淘汰赛 - 胜者组第三轮&败者组第五轮
{721,0}, --淘汰赛 - 败者组第六轮
{725,0}, --总决赛
{801,0}} --总决赛加赛
--如果颜色发生了改变,在这里进行修改
--[[参考值:
英文名, 中文名, 颜色代码
'Preliminary', '预选阶段', 'FF4500'
'Aquamarine', '海蓝宝石', '30C090'
'Topaz', '黄玉', 'D0A050'
'Amethyst', '紫水晶', 'A050C0'
'Sapphire', '蓝宝石', '4466BB'
'Emerald', '绿宝石', '208020'
'Ruby', '红宝石', 'CF1020'
'Diamond', '钻石', 'C9C9C9'
'Round of 16', '淘汰赛 - 16强赛','E87B27'
'Quarterfinals','淘汰赛 - 8强赛',
'Semifinals', '淘汰赛 - 半决赛',
'Finals', '淘汰赛 - 总决赛',
]]
local data={{'Preliminary','预选阶段','FF4500'},
{'First Group Stage','第一阶段','30C090'},
{'Second Group Stage','第二阶段','A050C0'},
{'Third Group Stage','第三阶段','208020'},
{'Fourth Group Stage','第四阶段','C9C9C9'},
{'Playoff Round 1','淘汰赛 - 第1轮','E87B27'},
{'Playoff Round 2','淘汰赛 - 第2轮','E87B27'},
{'Playoff Round 3','淘汰赛 - 第3轮','E87B27'},
{'Playoff Round 4','淘汰赛 - 第4轮','E87B27'},
{'Playoff Round 5','淘汰赛 - 第5轮','E87B27'},
{'Playoff Round 6','淘汰赛 - 第6轮','E87B27'},
{'Playoff Round 7','淘汰赛 - 第7轮','E87B27'},
{'Finals','淘汰赛 - 总决赛','E87B27'},
{'Finals Plus','淘汰赛 - 总决赛加赛','E87B27'}}
local stage = 0
local round = 0
local en = ''
local zh = ''
local out = ''
local args = tonumber(frame.args[1])
--根据 args 在 days 表中查找,以确定当前所处的阶段(stage)和轮次(round)
for i, phase in ipairs(days) do
for j, day in ipairs(phase) do
if args == day then
stage = i
round = j
end
end
end
if stage == 0 or type(args) == 'nil' then
return 0
elseif days[stage][round+1] == 0 and data[stage][3] ~= 'FF4500' and data[stage][3] ~= 'E87B27' then
en='style=\"width:250px;color:white;background:#'..data[stage][3]..'\"|'..data[stage][1]..' Necklace Showdown\n|'
zh='-align=\"middle\"\n|style=\"width:250px;color:white;background:#'..data[stage][3]..'\"|<big><big>'..data[stage][2]..' - 项链及垂饰赛</big></big>'
out = en..zh
return out
elseif days[stage][2] == 0 then
en='style=\"width:250px;color:white;background:#'..data[stage][3]..'\"|'..data[stage][1]..'\n|'
zh='-align=\"middle\"\n|style=\"width:250px;color:white;background:#'..data[stage][3]..'\"|<big><big>'..data[stage][2]..'</big></big>'
out = en..zh
return out
else
en='style=\"width:250px;color:white;background:#'..data[stage][3]..'\"|'..data[stage][1]..' '..round..'\n|'
zh='-align=\"middle\"\n|style=\"width:250px;color:white;background:#'..data[stage][3]..'\"|<big><big>'..data[stage][2]..' - 第'..round..'轮</big></big>'
out = en..zh
return out
end
end
return p