Module:Version

Uit Minecraft Wiki
Ga naar: navigatie, zoeken

Dit is sinds dat het sjabloon Version niet meer heel belangrijk is (wel voor het lezen van de data), het belangrijkste onderdeel voor de versies op onder andere de hoofdpagina *kuch*copy-paste Engelse Minecraft Wiki*kuch*.

Hoe het werkt

Opmerking: De maker van deze documentatie is niet echt bepaald een module-expert qua code. Voel je vrij om verbeteringen in te brengen op de overlegpagina van deze documentatie.

Moduletype

Dit bepaald wat voor moduletype het is, in dit geval de versie.

local p = {}
p.version = function( f )
(...)
end
return p
Versies & afkorting
Hoofdartikel: Module:Version/Numbers

Dit zorgt ervoor dat de versies worden gehaald uit de module die erbij hoort en de standaardversie en de afkorting v.

	local args = f:getParent().args
	local versions = mw.loadData( 'Module:Version/Numbers' )
	local version = 'pc'
	if args.c then
		args.classic = '1'
	end
	for v in pairs( args ) do
		if type( v ) == 'string' then
			v = v:lower()
			if versions[v] then
				version = v
				break
			end
		end
	end
Editie

Dit bepaald de editie.

	local edition
	if args.s or args.server then
		edition = versions[version .. '-server']
	end
	if not edition then
		edition = versions[version]
	end
	local versionNum = edition[1] or edition
	local prefix = edition.prefix or ''
Controle

Dit controleert of de editie klopt met wat er in de bijbehorende module hoort.

	local style = ''
	if args[1] then
		style = f:expandTemplate{ title = 'Table Choice', args = { args[1] == versionNum and 'yes' or 'no', '' } }
	end
Links

Dit zorgt voor de links naar de versiepagina (als die er is).

	if args.nolink or versionNum == '' then
		return style .. ( args[1] or versionNum )
	else
		return style .. f:expandTemplate{ title = 'Version link', args = {
			prefix .. ' ' .. ( args[1] or versionNum ),
			args[2] or args[1] or versionNum
		} }
	end
[bekijken | bewerken | geschiedenis | cache legen]Bovenstaande documentatie is getranscludeerd uit Module:Version/doc.

local p = {}
p.version = function( f )
	local args = f:getParent().args
	local versions = mw.loadData( 'Module:Version/Numbers' )
	local version = 'pc'
	if args.c then
		args.classic = '1'
	end
	for v in pairs( args ) do
		if type( v ) == 'string' then
			v = v:lower()
			if versions[v] then
				version = v
				break
			end
		end
	end
	
	local edition
	if args.s or args.server then
		edition = versions[version .. '-server']
	end
	if not edition then
		edition = versions[version]
	end
	local versionNum = edition[1] or edition
	local prefix = edition.prefix or ''
	
	local style = ''
	if args[1] then
		style = f:expandTemplate{ title = 'Table Choice', args = { args[1] == versionNum and 'yes' or 'no', '' } }
	end
	
	if args.nolink or versionNum == '' then
		return style .. ( args[1] or versionNum )
	else
		return style .. f:expandTemplate{ title = 'Version link', args = {
			prefix .. ' ' .. ( args[1] or versionNum ),
			args[2] or args[1] or versionNum
		} }
	end
end
return p