var maxNumDrops = parseInt(numraindrops);
var rainSize = parseInt(rainsize);
var finalSpeed = parseInt(speed);
var rainDirection;
if(wind  ==  "left") rainDirection = -finalSpeed;
else if(wind == "no") rainDirection = 0;
else if(wind == "right") rainDirection = finalSpeed;
finalSpeed <<= 2;
rainSize <<= 2;
var numDrops = 0;
var positionX = new Array();
var positionY = new Array();
var dropSpeed = new Array();
var dropVisible = new Array();
var dropHeight;
var dropColor;
var rainColors = new Array("ffffff","eeeeee","dddddd","cccccc","efefef","cecece");
var index = 0;
var isNS4 = (document.layers) ? 1 : 0;
var isIE = (document.all) ? 1 : 0;
var isMoz = (document.getElementById && !document.all);
var windowWidth = (isIE) ? window.document.body.clientWidth : window.innerWidth;
var windowHeight = (isIE) ? window.document.body.clientHeight : window.innerHeight;
var offsetX = (isIE) ? window.document.body.scrollLeft : window.pageXOffset;
var offsetY = (isIE) ? window.document.body.scrollTop : window.pageYOffset;
document.write('<div id="dsC" style="position:absolute;top:0px;left:0px;width:0px;height:0px;visibility:hidden;z-Index:1000;" align="center"></div>');

if(isNS4)
{
    for(index = 0; index < maxNumDrops; index++)
    {
        dropColor = rainColors[index%6];
        dropHeight = Math.round(Math.random() * rainSize) + rainSize;
        document.write('<layer name=\'sn'+index+'\'visibility="hide"left="0"top="0"bgcolor=\'#'+dropColor+'\'clip=\'0,0,1,'+dropHeight+'\'></layer>');
    }
}
else if(isMoz)
{
    window.document.body.style.overflow = 'hidden';
    for(index = 0; index < maxNumDrops; index++)
    {
        dropColor = rainColors[index%6];
        dropHeight = Math.round(Math.random() * rainSize) + rainSize;
        document.write('<div id=\'sg'+index+'\'style=\'position:absolute;top:0;left:0;width:1px;height:'+dropHeight+'px;background:#'+dropColor+';font-size:'+dropHeight+'px;visibility:hidden\'></div>');
    }
}
else if(isIE)
{
    document.write('<div style="position:absolute;top:0px;left:0px">');
    document.write('<div style="position:relative">');
    for(index = 0; index < maxNumDrops; index++)
    {
        dropColor = rainColors[index%6];
        dropHeight = Math.round(Math.random() * rainSize) + rainSize;
        document.write('<div id=\'si\' style=\'position:absolute;top:0;left:0;width:1px;height:'+dropHeight+'px;background:'+dropColor+';font-size:'+dropHeight+'px;visibility:hidden\'></div>');
    }
    document.write('</div>');
    document.write('</div>');
}
for(index = 0; index < maxNumDrops; index++)
{
    positionX[index] = Math.round(Math.random() * windowWidth);
    positionY[index] = Math.round(Math.random() * windowHeight);
    dropSpeed[index] = Math.round(Math.random() * 8) + finalSpeed;
    dropVisible[index] = 0;
}
function rain()
{
    windowWidth = (isIE) ? window.document.body.clientWidth : window.innerWidth;
    windowHeight = (isIE) ? window.document.body.clientHeight : window.innerHeight;
    offsetX = (isIE) ? window.document.body.scrollLeft : window.pageXOffset;
    offsetY = (isIE) ? window.document.body.scrollTop : window.pageYOffset;
    numDrops++;
    numDrops = (numDrops > maxNumDrops) ? maxNumDrops : numDrops;
    for(var j = 0; j < maxNumDrops; j++)
    {
        positionX[j] += rainDirection;
        positionX[j] = (positionX[j] + windowWidth) % windowWidth;
        positionY[j] += dropSpeed[j];
        if(positionY[j] >= windowHeight)
        {
            if(j<numDrops)dropVisible[j] = 1;
            else dropVisible[j] = 0;
            positionY[j] = -10;
        }
        if(dropVisible[j]  ==  1)
        {
            if(isNS4)
            {
                document.layers['sn'+j].left = positionX[j] + offsetX;
                document.layers['sn'+j].top = positionY[j] + offsetY;
                document.layers['sn'+j].visibility = 'show';
            }
            if(isMoz)
            {
                document.getElementById("sg"+j).style.left = positionX[j] + offsetX;
                document.getElementById("sg"+j).style.top = positionY[j] + offsetY;
                document.getElementById("sg"+j).style.visibility = 'visible';
            }
            else if(isIE)
            {
                si[j].style.pixelLeft = positionX[j] + offsetX;
                si[j].style.pixelTop = positionY[j] + offsetY;
                si[j].style.visibility = 'visible';
            }
        }
    }
}
function start()
{
    rain();
    setTimeout('start()',100);
}
window.onload = start;
window.onresize = new Function("window.location.reload()");

