
isNS4 = (document.layers) ? true : false;
isIE4 = (document.all && !document.getElementById) ? true : false;
isIE5 = (document.all && document.getElementById) ? true : false;
isNS6 = (!document.all && document.getElementById) ? true : false;
var curX, curY, curX2, curY2, boxX, boxY, moving=0, touch=0;
var gametime=0, started=0, speed=80;
var starttime, endtime, finaltime=0; //pass finaltime to popup window to ask for initials
var enemyxdir = new Array(1,1,1,1);
var enemyydir = new Array(1,1,1,1);
var xchgRate = 0.0;

if (isNS4 || isNS6){
	document.captureEvents(Event.MOUSEUP|Event.MOUSEDOWN|Event.MOUSEMOVE);
}

document.onmousedown = start;
document.onmousemove = checkLocation;
document.onmouseup = stop;

function startclock() {var today = new Date(); starttime = today.getTime();}
function endclock() {var today = new Date(); endtime = today.getTime();}
function calctime() {var time = (endtime - starttime - 0)/1000;	return time;}
function currtime() {var today = new Date(); var now = today.getTime(); var time = (now - starttime - 0)/1000;	return time;}

function giveposX(divname) 
{
	if (isNS4) var posLeft = document.layers[divname].left;
	else if (isIE4 || isIE5) var posLeft = document.all(divname).style.pixelLeft;
	else if (isNS6) var posLeft = parseInt(document.getElementById(divname).style.left + "");
	return posLeft;
}

function giveposY(divname) 
{
	if (isNS4) var posTop = document.layers[divname].top;
	else if (isIE4 || isIE5) var posTop = document.all(divname).style.pixelTop;
	else if (isNS6) var posTop = parseInt(document.getElementById(divname).style.top + "");
	return posTop;
}

function setposX(divname, xpos) {
	if (isNS4) document.layers[divname].left = xpos;
	else if (isIE4 || isIE5) document.all(divname).style.pixelLeft = xpos;
	else if (isNS6) document.getElementById(divname).style.left = xpos;
}

function setposY(divname, ypos) 
{
	if (isNS4) document.layers[divname].top = ypos;
	else if (isIE4 || isIE5) document.all(divname).style.pixelTop = ypos;
	else if (isNS6) document.getElementById(divname).style.top = ypos;
}

function givesize(divname, dimension) 
{
	var divsize = 0;
	if (dimension == 'y') 
	{
		if (isNS4) divsize = document.layers[divname].clip.height;
		else if (isIE4 || isIE5) divsize = document.all(divname).style.pixelHeight;
		else if (isNS6) divsize = parseInt(document.getElementById(divname).style.height + "");
	}
	else if (dimension == 'x') 
	{
		if (isNS4) divsize = document.layers[divname].clip.width;
		else if (isIE4 || isIE5) divsize = document.all(divname).style.pixelWidth;
		else if (isNS6) divsize = parseInt(document.getElementById(divname).style.width + "");
	}
	return divsize;
}

// check to see if 'box' is touching 'enemy'+num
function checktouching(num) 
{
	var enemy = "enemy" + num + ""
	var difX = giveposX('box') - giveposX(enemy) - 0; // -0 converts to integer
	var difY = giveposY('box') - giveposY(enemy) - 0;
	
	// set touch = 1 if it is touching an enemy
	if (difX > (-1 * givesize('box', 'x')) && difX < givesize(enemy, 'x') && difY > (-1 * givesize('box', 'y')) && difY < givesize(enemy, 'y')) 
	{
		touch = eval(num+1);
	}
	else
	{
		touch = 0;
	}
}

function movenemy(num,step_x,step_y)
{
	var enemy = "enemy" + num + ""
	var enemyx = givesize(enemy, 'x');
	var enemyy = givesize(enemy, 'y');

	if (giveposX(enemy) >= (450 - enemyx) || giveposX(enemy) <= 0) 
	{
		enemyxdir[num] = -1 * enemyxdir[num];
	}
	
	if (giveposY(enemy) >= (450 - enemyy) || giveposY(enemy) <= 0) 
	{
		enemyydir[num] = -1 * enemyydir[num];
	}
	
	var newposx = giveposX(enemy) + (step_x*enemyxdir[num]) + 0;
	var newposy = giveposY(enemy) + (step_y*enemyydir[num]) + 0;
	
	setposX(enemy, newposx);
	setposY(enemy, newposy);
	checktouching(num + "");
	
	if (touch > 0) 
	{
		stop(); reset();
	}
}

function movenemies() 
{
	if (speed == 0)
	{
		return;
	}
	displayTime();
	gametime = gametime + 1
	
	if (gametime >= 0 && gametime < 100) speed = 80;
	else if (gametime >= 100 &&  gametime < 200) speed = 60;
	else if (gametime >= 200 &&  gametime < 300) speed = 40;
	else if (gametime >= 300 &&  gametime < 400) speed = 30;
	else if (gametime >= 400 &&  gametime < 500) speed = 20;
	else speed = 10;
	// window.status = "speed:  " + speed + "   gametime: " + gametime;
	
	movenemy(0,-10,12);
	movenemy(1,-12,-20);
	movenemy(2,15,-13);
	movenemy(3,17,11);
	
	setTimeout(movenemies,speed);
}

function displayTime()
{
	var currtimeval = currtime();
	var currdollars = xchgRate*currtimeval/60;

	document.all("TextBoxTime").value = "Time: " + currtimeval.toFixed(2);
	document.all("TextBoxFM").value = "FM " + currdollars.toFixed(2);
}

function start(e) 
{ 
	if (document.all("panelFMGame") == null)
		return;
		
	var offsetLeft = -document.body.scrollLeft + document.all("panelFMGame").offsetLeft;
	var offsetTop  = -document.body.scrollTop + document.all("panelFMGame").offsetTop;
	
	var xchgStr = getCookie("XchgRate");
	
	if (xchgStr != "")
	{
		xchgRate = parseFloat(xchgStr);
	}
	else
	{
		xchgRate = 0.0;
	}
	
	curX = (isNS4 || isNS6) ? e.pageX : window.event.x - offsetLeft;
    curY = (isNS4 || isNS6) ? e.pageY : window.event.y - offsetTop;
		
	curX2 = eval(curX - 40);
	curY2 = eval(curY - 40);
		
	boxX = eval(curX - 20);
	boxY = eval(curY - 20);	
		
	var boxleft = giveposX('box');
	var boxtop = giveposY('box');
	
	window.status = "X=" + curX + " Y=" + curY + " XScroll=" + document.body.scrollTop;
				
	if (curX > boxleft && curX2 < boxleft && curY > boxtop && curY2 < boxtop) 
	{
		if (started == 0) 
		{	
			startclock(); 	
			movenemies(); 	
			started = 1;	
		}
		
		moving = 1;
		setposX('box', boxX);
		setposY('box', boxY);
		if (isNS4 || isNS6)
		{
			document.captureEvents(Event.MOUSEMOVE);
		}
	}
}

function stop(e)
{
    moving=0;
	if (isNS4 || isNS6)
	{
		document.releaseEvents(Event.MOUSEMOVE);
	}
}

function reset(e)
{
    endclock();
	moving=0;
	if (isNS4 || isNS6)
	{
		document.releaseEvents(Event.MOUSEMOVE);
	}
	
	if (finaltime == 0) 
	{
		speed =0 ;
		finaltime = calctime();
		//document.cookie="Score="+finaltime;
		//document.all("LabelScore").innerText = finaltime;
		document.all("TextBoxTime").innerText = "Time: " + finaltime.toFixed(2);
		document.all("TextBoxFM").value = "FM " + (xchgRate*finaltime/60).toFixed(2);
		document.forms("FormMain").submit(); 
		//window.alert('The monkey got bored to death by Poop-Zone after full ' + finaltime + ' seconds of pure fun. ' + touch); 
		
		//var entername = window.confirm('Enter your name?');
		//if (entername) 
		//if(true)
		//{
			//window.open("?" + finaltime,'winwin','width=300,height=500,left=40,top=40,status=1,resizable');
			//window.location.href = "yourdetails.aspx";
			//window.open("yourdetails.aspx");
		//}
		//else 
		//{
		//	document.location.reload();
		//}
		//document.location.reload();
	}
}
function checkLocation(e)
{
	if (document.all("panelFMGame") == null)
		return;
		
	var offsetLeft = -document.body.scrollLeft + document.all("panelFMGame").offsetLeft;
	var offsetTop  = -document.body.scrollTop + document.all("panelFMGame").offsetTop;

	curX = (isNS4 || isNS6) ? e.pageX : window.event.x - offsetLeft;
    curY = (isNS4 || isNS6) ? e.pageY : window.event.y - offsetTop;		
		
	boxX = eval(curX - 20);
	boxY = eval(curY - 20);	
	
	checktouching('1');
	if (moving == 1 && touch == 0)
	{
		setposX('box',boxX);
		setposY('box',boxY);
			
		if (curY > 69 && curX > 69 && curY < 381 && curX < 381) 
		//if (curY > 69+giveposY("panelFMGame") && curX > 69+giveposX("panelFMGame") && curY < 381+giveposY("panelFMGame") && curX < 381+giveposX("panelFMGame")) 
		{
			return false;
		}
		else 
		{
			stop(); 
			reset();
		}
	}
	else if (touch > 0)
	{
		stop(); reset();
	}
}

function getCookieVal(offset)
{
	var endstr = document.cookie.indexOf(";", offset);
	if (endstr == -1)
	{
		endstr = document.cookie.length;
	}
	return unescape(document.cookie.substring(offset, endstr));
}

function getCookie(name)
{
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	
	while (i < clen)
	{
		var j = i + alen;
		if (document.cookie.substring(i,j) == arg)
		{
			return getCookieVal(j);
		}
		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0) break;
	}
	return "";
}