nn4 = (document.layers)? true:false;
ie4 = (document.all)? true:false;
gE = (document.getElementById && !document.all)?true:false;
snakeway = [750, 205, 725, 205, 
			700, 205, 675, 205, 650, 205, 625, 205, 
			600, 205, 575, 205, 550, 205, 525, 205, 
			500, 205, 475, 205, 450, 205, 425, 205,
			400, 205, 375, 205, 350, 205, 325, 205, 300, 205, 
			300, 230, 300, 255, 300, 280, 
			300, 305, 300, 330, 300, 355, 300, 380, 300, 405,
			300, 430, 300, 455, 300, 480, 300, 505, 300, 530];

direction=1;
dir=1;
function Position(divID, x, y)
{
	if (nn4)
	{
		document.layers[divID].left=x;
		document.layers[divID].top=y;
	}
	else if (ie4)
	{
		document.all[divID].style.left=x;
		document.all[divID].style.top=y;
	}
	else if (gE)
	{
		document.getElementById(divID).style.left=x;
		document.getElementById(divID).style.top=y;
	}
}

function showhide(divID, state) {
	if (nn4)
	{
		document.layers[divID].visibility=state;
		document.layers[divID].visibility=state;
	}
	else if (ie4)
	{
		document.all[divID].style.visibility=state;
		document.all[divID].style.visibility=state;
	}
	else if (gE)
	{
		document.getElementById(divID).style.visibility=state;
		document.getElementById(divID).style.visibility=state;
	}
}

function snake(pos, step) {
switch(step) {
		case 0 : {
			Position('snake0', snakeway[2 * (pos + 2)], snakeway[2 * (pos + 2)+ 1]);
			Position('snake0a', snakeway[2 * (pos + 3)], snakeway[2 * (pos + 3) + 1]);
			Position('snake2', snakeway[2 * (pos + 1)], snakeway[2 * (pos + 1) + 1]);
			Position('snake2a', snakeway[2 * (pos + 4)], snakeway[2 * (pos + 4)+ 1]);
			Position('snake4', snakeway[2 * pos], snakeway[2 * pos + 1]);
			Position('snake4a', snakeway[2 * (pos + 5)], snakeway[2 * (pos + 5) + 1]);
			showhide('snake0', 'visible');
			showhide('snake0a', 'visible');
			showhide('snake2', 'visible');
			showhide('snake2a', 'visible');
			showhide('snake4', 'visible');
			showhide('snake4a', 'visible');
			showhide('snake1', 'hidden');
			showhide('snake1a', 'hidden');
			showhide('snake3', 'hidden');
			showhide('snake3a', 'hidden');
			setTimeout("snake(" + pos + ",1)", 60);
			break;
		}
		case 1 : {
			Position('snake0', snakeway[2 * (pos + 2 + dir)], snakeway[2 * (pos + 2 + dir)+ 1]);
			Position('snake1', snakeway[2 * (pos + 1 + dir)], snakeway[2 * (pos + 1 + dir) + 1]);
			Position('snake1a', snakeway[2 * (pos + 3 + dir)], snakeway[2 * (pos + 3 + dir)+ 1]);
			Position('snake3', snakeway[2 * (pos + dir)], snakeway[2 * (pos + dir) + 1]);
			Position('snake3a', snakeway[2 * (pos + 4 + dir)], snakeway[2 * (pos + 4 + dir) + 1]);
/*
			Position('snake0', snakeway[2 * (pos + 3)], snakeway[2 * (pos + 3)+ 1]);
			Position('snake1', snakeway[2 * (pos + 2)], snakeway[2 * (pos + 2) + 1]);
			Position('snake1a', snakeway[2 * (pos + 4)], snakeway[2 * (pos + 4)+ 1]);
			Position('snake3', snakeway[2 * (pos + 1)], snakeway[2 * (pos + 1) + 1]);
			Position('snake3a', snakeway[2 * (pos + 5)], snakeway[2 * (pos + 5) + 1]);

	*/
			showhide('snake0', 'visible');
			showhide('snake1', 'visible');
			showhide('snake1a', 'visible');
			showhide('snake3', 'visible');
			showhide('snake3a', 'visible');
			showhide('snake0a', 'hidden');
			showhide('snake2', 'hidden');
			showhide('snake2a', 'hidden');
			showhide('snake4', 'hidden');
			showhide('snake4a', 'hidden');
			newpos = pos + direction;
			if (2 * newpos >= snakeway.length - 12)
			{
				direction = -1;
				dir = 0;
			}

			if (newpos <= 0)
			{
				direction = 1;
				dir = 1;
			}

			setTimeout("snake(" + newpos + ",0)", 60);
			break;
		}
	}

}

