Este módulo é usado para listar todas as receitas em uma determinada categoria.
O tipo da função irá corresponder a receitas que parâmetro type define para o mesmo valor como entrada.
Exemplo: {{#invoke:recipe list|type|Alimentos}}
, lista todas as receitas com o tipo definido como Básico na categoria Receita de Alimentos.
Nome | Ingredientes | Receita de Fabricação | Descrição |
---|---|---|---|
Ensopado suspeito | Cogumelo vermelho + Cogumelo marrom + Tigela + Qualquer Flor |
||
Bolo | Balde de leite + Açúcar + Ovo + Trigo |
Os baldes vazios permanecem na grade de fabricação após a confecção do bolo. | |
Pão | Trigo | ||
Biscoito | Trigo + Sementes de cacau |
||
Ensopado de cogumelos | Cogumelo vermelho + Cogumelo marrom + Tigela |
||
Maçã dourada | Barra de ouro + Maçã |
||
Ensopado de beterraba | Beterraba + Tigela |
||
Ensopado de coelho | Coelho assado + Cenoura + Batata assada + Qualquer Cogumelo + Tigela |
||
Cenoura dourada | Pepita de ouro + Cenoura |
||
Algas secas | Bloco de algas secas | ||
Ensopado suspeito | Cogumelo vermelho + Cogumelo marrom + Tigela + Qualquer Flor |
[ver | editar | histórico | purgar]A documentação acima é transcluída de Módulo:Recipe list/doc.
local p = {}
function p.type( f )
local args = f.args
local crafting = require( 'Módulo:Crafting' ).table
local type = mw.text.trim( args[1] )
local argList = {
'type', 'upcoming', 'edicao', 'name', 'ingredients',
1, 2, 3, 4, 5, 6, 7, 8, 9,
'A1', 'B1', 'C1', 'A2', 'B2', 'C2', 'A3', 'B3', 'C3',
'Output', 'description'
}
local data = f:callParserFunction( '#dpl:', {
category = 'Receita de ' .. type:lower(),
include = '{Fabricação}:' .. table.concat( argList, ':' ),
mode = 'userformat',
secseparators = '====',
multisecseparators = '===='
} )
local out = {}
local showDesciption
local templates = {}
for template in mw.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 mw.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