VOOZH about

URL: https://minecraft.wiki/w/Module:Pack_format_table

⇱ Module:Pack format table – Minecraft Wiki


Module:Pack format table

From Minecraft Wiki
Jump to navigation Jump to search
Documentation[view] [edit] [history] [purge]Jump to code ↴

This module implements {{Pack format table}}.

[view] [edit] [history] [purge]The above documentation is transcluded from Module:Pack format table/doc.
localp={}
-- Used to determine whether an argument is empty
localfunctionis_not_empty(value)
if(value==nilorvalue=='')thenreturnfalse
elsereturntrue
end
end
-- Code
functionp._main(args)
-- The pack format table column
localtableLine='<tr id="pack-format-column">'
-- Pack format cell
tableLine=tableLine..('<th id="pack-format">'..args.packFormat..'</th>')
-- Development version cells
ifis_not_empty(args.dev1)then
ifis_not_empty(args.dev2)then
tableLine=tableLine..('<th id="dev" class="nowrap">'..args.dev1Link..' &ndash; '..args.dev2Link..'</th>')
else
tableLine=tableLine..('<th id="dev" class="nowrap">'..args.dev1Link..'</th>')
end
end
-- Release version cells
ifis_not_empty(args.v1)then
ifis_not_empty(args.v2)then
tableLine=tableLine..('<th id="v" class="nowrap">'..args.v1Link..' &ndash; '..args.v2Link..args.upcoming..'</th>')
else
tableLine=tableLine..('<th id="v" class="nowrap">'..args.v1Link..args.upcoming..'</th>')
end
else
tableLine=tableLine..('<td class="tc-hyphen" id="v-none">&ndash;</td>')
end
-- Significant/Breaking changes cells
ifnotargs.nolistthen
tableLine=tableLine..('<td style="text-align: start;"><ul>')
fori,vinipairs(args)do
if(i>3)then
tableLine=tableLine..('<li>'..v..'</li>')
end
end
tableLine=tableLine..('</ul></td>')
else
tableLine=tableLine..('<td style="text-align: start; padding: 7px;">'..args[4]..'</td>')
end
tableLine=tableLine..('</tr>')
-- Print the table column
returntableLine
end
-- Process arguments
functionp.main(frame)
localargs=frame:getParent().args
args.packFormat=args[1]or'?'
args.v1=args[2]
args.v2=args[3]
ifis_not_empty(args['nolist'])then
args.nolist=true
else
args.nolist=false
end
ifis_not_empty(args['upcoming'])then
args.upcoming=' '..frame:expandTemplate{title='upcoming',args={nocat=1}}
else
args.upcoming=''
end
ifis_not_empty(args.dev1)then
ifis_not_empty(args['dev1link'])andnot(args['dev1link']=='ver')then
if(args['dev1link']=='none')then
args.dev1Link=args.dev1
elseif(args['dev1link']:match('//'))then
args.dev1Link='['..args['dev1link']..' '..args.dev1..']'
else
args.dev1Link='[['..args['dev1link']..'|'..args.dev1..']]'
end
else
localsnapIndex,_=args.dev1:find('Snapshot',1,true)
localpreIndex,_=args.dev1:find('Pre-release',1,true)orargs.dev1:find('Pre-Release',1,true)
localrcIndex,_=args.dev1:find('Release Candidate',1,true)
if(snapIndex)then
args.dev1Link=(
'[[Java Edition '..args.dev1..'|'..args.dev1:sub(0,snapIndex-2)..'-snap'..args.dev1:sub(snapIndex+9,-1)..']]'
)
elseif(preIndex)then
args.dev1Link=(
'[[Java Edition '..args.dev1..'|'..args.dev1:sub(0,preIndex-2)..'-pre'..args.dev1:sub(preIndex+12,-1)..']]'
)
elseif(rcIndex)then
args.dev1Link=(
'[[Java Edition '..args.dev1..'|'..args.dev1:sub(0,rcIndex-2)..'-rc'..args.dev1:sub(rcIndex+18,-1)..']]'
)
else
args.dev1Link=(
'[[Java Edition '..args.dev1..'|'..args.dev1..']]'
)
end
end
end
ifis_not_empty(args.dev2)then
ifis_not_empty(args['dev2link'])andnot(args['dev2link']=='ver')then
if(args['dev2link']=='none')then
args.dev2Link=args.dev2
elseif(args['dev2link']:match('//'))then
args.dev2Link='['..args['dev2link']..' '..args.dev2..']'
else
args.dev2Link='[['..args['dev2link']..'|'..args.dev2..']]'
end
else
localsnapIndex,_=args.dev2:find('Snapshot',1,true)
localpreIndex,_=args.dev2:find('Pre-release',1,true)orargs.dev2:find('Pre-Release',1,true)
localrcIndex,_=args.dev2:find('Release Candidate',1,true)
if(snapIndex)then
args.dev2Link=(
'[[Java Edition '..args.dev2..'|'..args.dev1:sub(0,snapIndex-2)..'-snap'..args.dev2:sub(snapIndex+9,-1)..']]'
)
elseif(preIndex)then
args.dev2Link=(
'[[Java Edition '..args.dev2..'|'..args.dev2:sub(0,preIndex-2)..'-pre'..args.dev2:sub(preIndex+12,-1)..']]'
)
elseif(rcIndex)then
args.dev2Link=(
'[[Java Edition '..args.dev2..'|'..args.dev2:sub(0,rcIndex-2)..'-rc'..args.dev2:sub(rcIndex+18,-1)..']]'
)
else
args.dev2Link=(
'[[Java Edition '..args.dev2..'|'..args.dev2..']]'
)
end
end
end
ifis_not_empty(args.v1)then
ifis_not_empty(args['v1link'])andnot(args['v1link']=='ver')then
if(args['v1link']=='none')then
args.v1Link=args.v1
elseif(args['v1link']:match('//'))then
args.v1Link='['..args['v1link']..' '..args.v1..']'
else
args.v1Link='[['..args['v1link']..'|'..args.v1..']]'
end
else
args.v1Link=(
'[[Java Edition '..args.v1..'|'..args.v1..']]'
)
end
end
ifis_not_empty(args.v2)then
ifis_not_empty(args['v2link'])andnot(args['v2link']=='ver')then
if(args['v2link']=='none')then
args.v2Link=args.v2
elseif(args['v2link']:match('//'))then
args.v2Link='['..args['v2link']..' '..args.v2..']'
else
args.v2Link='[['..args['v2link']..'|'..args.v2..']]'
end
else
args.v2Link=(
'[[Java Edition '..args.v2..'|'..args.v2..']]'
)
end
end
returnp._main(args)
end
returnp
Retrieved from "https://minecraft.wiki/w/Module:Pack_format_table?oldid=3322247"

Navigation menu