// JavaScript Document
var num=5;    // Alter bats Number here

// Nothing needs altering past here....................
/*
Script disabled for Netscape 6 
*/

var Netscape6=false;
if (navigator.appName == "Netscape" && parseFloat(navigator.appVersion) >= 5) 
Netscape6=true;

if (!Netscape6){
	var pics=new Array("images/bat2.gif","images/bat3.gif","images/bat2.gif","images/bat1.gif");
	var loadImg=new Array();
	
	function pre_load(){
		for(i=0; i < pics.length; i++){
		 loadImg[i]=new Image();
		 loadImg[i].src=pics[i];
		}
	}
	pre_load();
	
	var n4=(document.layers);
	var o6=(navigator.appName.indexOf("Opera") != -1)?true:false;
	var ie=(document.all);
	var y=0;
	var x=0;
	var yb=0;
	var xb=0;
	var s0=0;
	var s1=0.5;
	var s2=1;
	var cnt=new Array(0,1,2)
	var mix=new Array();
	for (i=0; i < num; i++)
	mix[i]=cnt[Math.floor(Math.random()*cnt.length)];
	var del=0.1;
	var y1=new Array();
	var x1=new Array();
	var y2=new Array();
	var x2=new Array();
	for (i=0; i < num; i++){
	y1[i]=0;
	x1[i]=0;
	y2[i]=0;
	x2[i]=0;
	}
	if (n4){
	window.captureEvents(Event.MOUSEMOVE);
	function mouse1(e){
	 y = e.pageY-window.pageYOffset;
	 x = e.pageX; 
	 }
	window.onMouseMove=mouse1;                               
	}
	if (ie||o6){
	 function mouse2(){
	 y = (ie)?event.clientY:event.clientY-window.pageYOffset;
	 x = event.clientX;
	 } 
	document.onmousemove=mouse2;
	}
	if (n4){
	 for (i=0; i < num; i++)
	 document.write("<LAYER NAME='bats"+i+"' LEFT='0' TOP='-50'><img name='temp"+i+"' src='images/"+pics[0]+"'></LAYER>");
	}
	if (ie){
	document.write("<div id='con' style='position:absolute;top:-50px;left:0px'><div style='position:relative'>");
	 for (i=0; i < num; i++){
	 document.write("<img id='bats"+i+"' src='images/"+pics[0]+"' style='position:absolute;top:0px;left:0px'>");
	 }
	 document.write("</div></div>");
	}
	if (o6){
	 for (i=0; i < num; i++)
	 document.write("<div id='bats"+i+"' style='position:absolute;top:-50px;left:0px'><img name='temp"+i+"' src='images/"+pics[0]+"'></div>");
	}
	
	function swirl(){
	if (ie) con.style.top=document.body.scrollTop;
	sy=(!ie)?window.pageYOffset:0;
	yb=(ie)?window.document.body.offsetHeight/3:window.innerHeight/3;
	xb=(ie)?window.document.body.offsetWidth/7:window.innerWidth/7;
	for (i=0; i < num; i++){
	 var t=(n4)?document.layers["bats"+i]:document.getElementById("bats"+i).style;
	 t.top = y1[i]+yb*Math.sin(((s0)+i*3.7)/4)*Math.cos((s0+i*35)/20)+sy;
	 t.left =x1[i]+xb*Math.cos(((s0)+i*3.7)/4)*Math.cos((s0+i*35)/62);
	 }
	s0+=s1;
	}
	
	function animate(){
	var i_or_o=(ie)?"bats":"temp";
	for (i=0; i < num; i++){
	 if (mix[i] == pics.length) mix[i]=0;
	 if (n4) document.layers['bats'+i].document.images['temp'+i].src=pics[mix[i]];
	 else document.images[i_or_o+i].src=pics[mix[i]];
	 mix[i]+=s2;
	}
	swirl();
	}
	
	function follow(){
	y1[0]=Math.round(y2[0]+=((y)-y2[0])*del);
	x1[0]=Math.round(x2[0]+=((x)-x2[0])*del);
	for (i=1; i < num; i++){
	y1[i]=Math.round(y2[i]+=(y1[i-1]-y2[i])*del);
	x1[i]=Math.round(x2[i]+=(x1[i-1]-x2[i])*del);
	}
	animate();
	setTimeout('follow()',50);
	}
	
	function startit(){
	setTimeout('follow()',1000);
	}
	//window.onload=startit;
}
