Module:Animate

From Caves of Qud Wiki
Jump to navigation Jump to search
Template-info.png Documentation

This module implements {{animate}}. It accepts no directly passed arguments, only parent arguments and is therefore recommended to not be invoked directly from templates.

Adapted from Minecraft Wiki.


local p = {}
function p.animate( f )
	local args = f
	if f == mw.getCurrentFrame() then
		args = f:getParent().args
	end
	local files = args[1] or ''
	local size = args[2] or ''
	local link = args[3] or ''
	
	if size ~= '' then
		size = '|' .. size
	end

	if link ~= '' then
		link = '|link=' .. link
	end
	
	local images = {}
	for image in mw.text.gsplit( files, '%s*;%s*' ) do
		if image == '' then
			table.insert( images, '<span><br></span>' )
		else
			table.insert( images, '<span>[[File:' .. image .. size .. ']]</span>' )
		end
	end
	images[1] = images[1]:gsub( '^<span>', '<span class="animated-active">' )
	
	return '<span class="animated">' .. table.concat( images ) .. '</span>'
end
return p