var balloonScroll = 300; 
var ufoScroll = 30; 
var currentScroll = 0;
var currentBalloonScroll = balloonScroll;
var currentUfoScroll = ufoScroll;

$.fn.delay = function( time, name ) {
    return this.queue( ( name || "fx" ), function() {
        var self = this;
        setTimeout(function() { $.dequeue(self); } , time );
    } );

};

function animateBalloon() {	
	$("#floating_balloon").animate({"left":"+=6px", "top": currentBalloonScroll + 4},"6500","linear", function() {
		$(this).animate({"left":"+=3px", "top": currentBalloonScroll - 2},"6300","linear", function() {				
			$(this).animate({"left":"-=6px", "top":currentBalloonScroll - 4},"6600","linear", function() {		
				$(this).animate({"left":"-=3px", "top": currentBalloonScroll + 2},"6800","linear", function() {		
					$(this).animate({"left":"-=2px", "top": currentBalloonScroll + 4},"6000","linear", function() {		
						$(this).animate({"left":"-=6px", "top":currentBalloonScroll - 3},"6300","linear", function() {		
							$(this).animate({"left":"+=6px", "top": currentBalloonScroll + 4},"6600","linear", function() {		
								$(this).animate({"left":"+=2px", "top":currentBalloonScroll + 3},"6300","linear", animateBalloon()) 
							})
						})
					})
				})
			})
		})
	});				
}

function floatUFO() {
	$("#floating_ufo").animate({"left":"-=3px", "top": "+=3px"},"5500","linear", function() {
		$(this).animate({"left":"-=4px", "top": "+=1px"},"4300","linear", function() {
			$(this).animate({"left":"-=2px", "top":"-=4px"},"3600","linear", function() {
				$(this).animate({"left":"+=4px", "top":"-=2px"},"5800","linear", function() {
					$(this).animate({"left":"+=3px", "top": "+=3px"},"6000","linear", function() {
						$(this).animate({"left":"-=1px", "top":"-=2px"},"4300","linear", function() {
							$(this).animate({"left":"+=2px", "top": "+=4px"},"3600","linear", function() {
								$(this).animate({"left":"+=1px", "top":"-=1px"},"2300","linear", animateUFO())
							})
						})
					})
				})
			})
		})
	});				
}

function animateUFO() {		
	var scrollX = $(document).width() - 200 + Math.round(Math.random()*70);
	var scrollY = currentUfoScroll + Math.round(Math.random()*400);
	//alert("scroll to: "+ scrollX + ", " + scrollY);
	$("#floating_ufo").animate({"left": $(document).width() - 200 + Math.round(Math.random()*70),"top": currentUfoScroll + Math.round(Math.random()*400)},"1000", function() {
			$(this).animate({"left": $(document).width() - 200 + Math.round(Math.random()*70),"top": currentUfoScroll + Math.round(Math.random()*400)},"1500", function() {
				$(this).animate({"left": scrollX,"top": scrollY},"1700","linear", floatUFO())
			})
		});
} 

$(document).ready(function() {		
	$("body").prepend('<img  src="images/balloon.png" id="floating_balloon" style="position: absolute; left: 30px; top: 300px;" />');
	$("body").prepend('<img  src="images/UFO.gif" id="floating_ufo" style="position: absolute; left: -1000px; top: -300px;" />');
		
	currentScroll = parseFloat($(window).scrollTop());	
	currentBalloonScroll = currentScroll + balloonScroll;
	currentUfoScroll = currentScroll + ufoScroll;
		
	$(window).scroll(function () { 	
		//alert($(document).width());
		$("#floating_balloon").stop();
		currentScroll = parseFloat($(window).scrollTop());
		currentBalloonScroll = currentScroll + balloonScroll;
		currentUfoScroll = currentScroll + ufoScroll;
		
		var animateSpeed = 1500;
		$("#floating_balloon").animate({"left":"30", "top": currentBalloonScroll},animateSpeed,"linear", function() {
			animateBalloon();
		});			
	});

	animateBalloon();
	animateUFO();
});	