$.fn.clouds = function(settings) {
	settings = $.extend({
		clouds: [],
		folder: '/',
		speed: 2,
		opacityStep: 0.02,
		fader: true
	}, settings);
	return this.each(function(n, item) {
		var self = $(item);
		$.each(settings.clouds, function(c, cloud) {
			var cImg = new Image();
			$(cImg).load(function() {
				var cDiv = $('<div class="nuvem"></div>');
				cDiv.css({
					top: cloud.y+"px",
					left: cloud.x+"px",
					width: cImg.width+"px",
					height: cImg.height+"px",
					backgroundImage: 'url('+this.src+')',
					zIndex: 2
				});
				self.append(cDiv);
				var o = settings.opacityStep;
				cloud.currentO = Math.random();
				cDiv.css({opacity: cloud.currentO});
				window.setInterval(function() {
					if (settings.fader) {
						if (cloud.currentO > 1.0) o = -settings.opacityStep;
						if (cloud.currentO < 0.3) o = +settings.opacityStep;
						cloud.currentO += o;
						cDiv.css({opacity: cloud.currentO});
					}
					var currentLeft = parseInt(cDiv.css("left"));
					cDiv.css({left: (currentLeft - cloud.speedX)+'px'});
					if (cDiv.offset().left > $(document).width() - self.offset().left) {
						var s = -cImg.width;
						cDiv.css({left: s+"px"});
					}
				}, settings.speed);
			});
			cImg.src = settings.folder + cloud.src;
		});
	});
}