-- Create a confetti particle.	

function _Confetti.createParticle(paramEmitter, paramForce, paramParent, paramColors)
	local _Particle = {}; setmetatable(_Particle, _Confetti);
	--colors = paramColors;
	-- Adjust forces.
	local xforce = paramForce.X; if (xforce < 0) then xforce = xforce * -1; end;
	local distanceFromZero = 0 - xforce;
	paramForce = Vector2.new(paramForce.X, paramForce.Y + (distanceFromZero * 0.75));
	--if (paramColors == nil) then paramColors = colors; end; 
	-- Confetti data.		
	_Particle.EmitterPosition = paramEmitter;
	_Particle.EmitterPower = paramForce;
	_Particle.Position = Vector2.new(0,0);
	_Particle.Power = paramForce;
	--_Particle.Color = paramColors[math.random(#paramColors)];
	local function getParticle()
		local label = shapes[math.random(#shapes)]:Clone();
		--label.ImageColor3 = _Particle.Color;
		label.Parent = paramParent;
		label.Rotation = math.random(360);
		label.Visible = true;
		label.ZIndex = 20;
		return label;
	end;
	_Particle.Label = getParticle();
	_Particle.DefaultSize = 30;
	_Particle.Size = 1; _Particle.Side = -1;
	_Particle.OutOfBounds = false;
	_Particle.Enabled = false;
	_Particle.Cycles = 0;	
	return _Particle;
end;