BirbAngry emoji.png
Open Beta is out on IOS/Android, PC & Mac! Play Now for Free!

Module:ItemInfobox

From Castaways Wiki
Revision as of 06:04, 18 November 2022 by User (talk | contribs)
Jump to navigation Jump to search

Documentation for this module may be created at Module:ItemInfobox/doc

local capiunto = require 'capiunto'

local p = {}

function p.main(frame)
	local args = frame:getParent().args
	local headerStyle
	if args.headerstyle and args.headerstyle ~= '' then
		headerStyle = string.format('background-color:%s;', args.headerstyle)
	else
		headerStyle = 'background-color:grey;'
	end
	local retval = capiunto.create( {
		title = tostring(mw.title.getCurrentTitle()),
		headerStyle = headerStyle
	} )
	:addImage( args.image, args.caption )
	:addWikitext ( 'Common Properties' )
	:addRow ( 'Display Name', args.displayName )
	:addRow ( 'Stackable?', args.stackable )
    
	local recipe = capiunto.create( {
		title = 'Crafting Recipe'
	} )
	:addRow( 'Ingredients', tostring(args.recipeInput) )
	:addRow( 'Output Quantity', tostring(args.recipeOutput) )
	
	retval:addRow ('Recipe', tostring( recipe:getHtml() ))
	
	if args.tool and args.tool ~= '' then
		retval:addWikitext( 'Tool Properties' )
		retval:addRow ( 'Tool Type', args.tool)
		
		if args.toolEffectiveOn and args.toolEffectiveOn ~= '' then
			retval:addRow ( 'Effective On', args.toolEffectiveOn )
		end
		
		retval:addRow( 'Durability', args.durability )
		retval:addRow( 'Tool Multiplier', args.toolMultiplier )
	end

	return retval
end

return p