var snowflake = new Array();
snowflake[0]="/dropbox/2003/12/snow/flake0.gif";
snowflake[1]="/dropbox/2003/12/snow/flake1.gif";
snowflake[2]="/dropbox/2003/12/snow/flake2.gif";
snowflake[3]="/dropbox/2003/12/snow/flake3.gif";
snowflake[4]="/dropbox/2003/12/snow/flake4.gif";
snowflake[5]="/dropbox/2003/12/snow/flake5.gif";
snowflake[6]="/dropbox/2003/12/snow/flake6.gif";
snowflake[7]="/dropbox/2003/12/snow/flake7.gif";
snowflake[8]="/dropbox/2003/12/snow/flake8.gif";
snowflake[9]="/dropbox/2003/12/snow/flake9.gif";

var no = snowflake.length; 
var speed = 10; // smaller numbers make the snow fall faster
var dx, xp, yp;    // coordinate and position variables
var am, stx, sty;  // amplitude and step variables
var obj, i, doc_width = 800, doc_height = 600;

function winSize() {
	doc_width = window.innerWidth?window.innerWidth:document.body.clientWidth;
	doc_height = window.innerHeight?window.innerHeight:document.body.clientHeight;
	}

dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();
winSize();
document.write("<STYLE type=\"text/css\">.flake {position:absolute;top:-200;}</STYLE>");
for (i = 0; i < no; i++) {  
	dx[i] = 0;                        // set coordinate variables
	xp[i] = Math.random()*(doc_width-30) +10;  // set position variables
	yp[i] = Math.random()*doc_height;
	am[i] = Math.random()*20;         // set amplitude variables
	stx[i] = 0.02 + Math.random()/10; // set step variables
	sty[i] = 0.7 + Math.random();     // set step variables
	document.write("<div id=\"dot"+ i +"\" class=\"flake\"><img src=\"");
	document.write(snowflake[i] + "\" border=\"0\"></div>");
	}

function snowMove(id,left,top) {
	obj = document.getElementById?document.getElementById(id).style:
		document.all?document.all[id].style:
		document.layers?document.layers[id]:null;
	if (obj) {
		obj.left=left;
		obj.top=top;
		}
	}

function snow() {
	winSize();
	doc_scroll = (window.pageYOffset!=null)?window.pageYOffset:document.body.scrollTop;
	for (i = 0; i < no; ++ i) {  // iterate for every dot
		yp[i] += sty[i];
		if (yp[i] > doc_height+doc_scroll-50) {
			xp[i] = Math.random()*(doc_width-am[i]-30);
			yp[i] = doc_scroll;
			stx[i] = 0.02 + Math.random()/10;
			sty[i] = 0.7 + Math.random();
		}
		dx[i] += stx[i];
		snowMove("dot"+i,xp[i]+am[i]*Math.sin(dx[i]),yp[i]);
	}
	setTimeout("snow()", speed);
}

window.onload=snow;

