Minecraft Wiki

Discordlogo.png  ¡Únete al servidor de Discord!

Make Stuff icon (MCE).png El sitio ha recibido cambios en su estado. Por favor lean la nota al respecto para más información.

LEE MÁS

Minecraft Wiki
Advertisement
Minecraft Wiki
Lang-es.gif
Se necesita traducir el contenido de este módulo. 
El texto presente se encuentra en otro idioma y dificulta la comprensión de los lectores. Puede colaborar traduciéndolo.

This module is used to list all recipes in a particular category.

The type function will match recipes which have the type parameter set to the same value as the input.

Example: {{#invoke:lista de recetas|type|Alimentación}}, lists all recipes with type set to Foodstuff in category Receta de Alimentación.

[ver | editar | historial | purgar]La documentación arriba es transcluída desde Módulo:Lista de recetas/doc.
local p = {}
function p.type( f )
	local args = f.args
	local text = require( [[Módulo:Text]] )
	local crafting = require( [[Módulo:Fabricación]] ).table
	local type = text.trim( args[1] )

	local argList = {
		'type', 'upcoming', 'name', 'ingredients', 'arggroups',
		1, 2, 3, 4, 5, 6, 7, 8, 9,
		'A1', 'B1', 'C1', 'A2', 'B2', 'C2', 'A3', 'B3', 'C3',
		'Output', 'description', 'fixed', 'notfixed',
		'A1title', 'A1link', 'B1title', 'B1link', 'C1title', 'C1link',
		'A2title', 'A2link', 'B2title', 'B2link', 'C2title', 'C2link',
		'A3title', 'A3link', 'B3title', 'B3link', 'C3title', 'C3link',
		'Otitle', 'Olink',
	}
	
	local data = f:callParserFunction( '#dpl:', {
		category = 'Receta de ' .. type,
		include = '{Crafting}:' .. table.concat( argList, ':' ),
		mode = 'userformat',
		secseparators = '====',
		multisecseparators = '===='
	} )
	
	local out = {}
	local showDesciption
	local templates = {}
	for template in text.gsplit( data, '====' ) do
		-- If type matches
		if template:find( '^%s*' .. type .. '%s*|' ) then
			local tArgs = {}
			local i = 0
			-- Extract the arguments from the DPL query
			for tArg in text.gsplit( template, '\n|' ) do
				i = i + 1
				if tArg ~= '' then
					local key = argList[i]
					tArgs[key] = tArg
				end
			end
			
			if tArgs.description then
				showDescription = true
			end
			
			tArgs.nocat = '1'
			
			table.insert( templates, tArgs )
		end
	end
	if #templates == 0 then
		return
	end
	
	templates[1].head = '1'
	templates[1].showname = '1'
	if showDescription and args.showdesciption ~= '0' or args.showdesciption == '1' then
		templates[1].showdescription = '1'
	end
	if not args.continue then
		templates[#templates].foot = '1'
	end
	
	local out = {}
	for i, v in ipairs( templates ) do
		table.insert( out, crafting( v ) )
	end
	
	return table.concat( out, '\n' )
end
return p
Advertisement