Module:AnimateSprite

local p = {}

function p.animate( f ) local args = f	if f == mw.getCurrentFrame then args = f:getParent.args end local icons = {} local sheet = args.sheet or 'InvSprite' for icon in mw.text.gsplit( args[1], '%s*;%s*' ) do		function image( icon ) local ids = mw.loadData( 'Module:' .. sheet ).ids local sprite = require( 'Module:Sprite' ).sprite local idData = ids[icon] or { pos = 1, section = 0 } local image if idData then image = sprite{ iddata = idData, data = sheet }			end

return image end icons[#icons+1] = ' ' .. (#icon>0 and image( icon ) or ' ') .. ' '	end icons[1] = icons[1]:gsub( '^ ', ' ' ) return ' ' .. table.concat( icons ) .. ' ' end

return p