ウィキのスタイルガイドが改定されました。スタイルガイドでは、ウィキに記事を書く際のスタイルについて解説しています。(9月19日更新)

モジュール:Renewable resource row

提供: Minecraft Wiki
移動先: 案内検索
このモジュールには解説がありません。もしあなたがこのモジュールを使用する方法を知っている場合は、解説ページを作成してください。
local p = {}
p.row = function( f )
	local args = f
	if f == mw.getCurrentFrame() then
		args = f:getParent().args
	else
		f = mw.getCurrentFrame()
	end
	local resource = mw.text.trim( args[1] or '' )
	local product = mw.text.trim( args[2] or '' )
	local slot = require( 'モジュール:Inventory slot' )
	local output = {}
	local Autolink = require( 'モジュール:Autolink' )

	local title
	if args.title or '' ~= '' then
		title = args.title
    else
		local titles = {}
		for v in mw.text.gsplit( resource, '%s*,%s*' ) do
			local resources = slot.getParts( v ).name:gsub( '^Any ', '' )
			table.insert( titles, '[[' .. Autolink.invlink(resources) .. ']]' )
		end
		title = mw.text.listToText( titles )
	end

	local icon = function( var )
		local out = {}
		for icons in mw.text.gsplit( var, '%s*,%s*' ) do
			table.insert( out, slot.slot{ icons, class = 'invslot-plain' } )
		end
		return table.concat( out )
	end

	local resourceicon
	if resource ~= '' then
		resourceicon = '<br>' .. icon( resource )
	else
		resourceicon = ''
	end

	table.insert( output, '| style="text-align:center" | ' .. title .. resourceicon )

	local align = 'center'
	if f:callParserFunction( '#var', 'renewable-method' ) ~= '' then
		align = 'left'
	end

	local products
	if args.product or '' ~= '' then
		products = args.product
	elseif product ~= '' then
		products = icon( product )
	else
		products = '—'
	end

	table.insert( output, '| style="text-align:' .. align .. '" | ' .. products )

	if f:callParserFunction( '#var', 'renewable-method' ) == '' then
		table.insert( output, '| ' .. ( args[3] or '' ) )
	end

	table.insert( output, '|-' )

	return table.concat( output, '\n' )
end
return p