
function domove(which)
{
	switch(which)
	{
		case 1: flip(1);
				flip(2);
				flip(6);
				break;
		case 2: flip(2);
				flip(1);
				flip(3);
				flip(7);
				break;
		case 3: flip(3);
				flip(2);
				flip(4);
				flip(8);
				break;		
		case 4: flip(4);
				flip(5);
				flip(3);
				flip(9);
				break;		
		case 5: flip(4);
				flip(5);
				flip(10);
				break;		
		case 6: flip(1);
				flip(6);
				flip(7);
				flip(11);
				break;		
		case 7: flip(6);
				flip(7);
				flip(8);
				flip(2);
				flip(12);
				break;		
		case 8: flip(7);
				flip(8);
				flip(9);
				flip(3);
				flip(13);
				break;		
		case 9: flip(8);
				flip(9);
				flip(10);
				flip(4);
				flip(14);
				break;		
		case 10:flip(9);
				flip(10);
				flip(5);
				flip(15);			
				break;		
		case 11:flip(11);
				flip(12);
				flip(6);
				flip(16);			
				break;
		case 12:flip(11);
				flip(12);
				flip(7);
				flip(17);			
				flip(13);
				break;
		case 13:flip(12);
				flip(13);
				flip(14);
				flip(8);			
				flip(18);
				break;
		case 14:flip(13);
				flip(14);
				flip(15);
				flip(9);			
				flip(19);
				break;
		case 15:flip(14);
				flip(15);
				flip(10);
				flip(20);							
				break;
		case 16:flip(16);
				flip(17);
				flip(11);
				flip(21);			
				break;
		case 17:flip(16);
				flip(17);
				flip(18);
				flip(12);			
				flip(22);
				break;
		case 18:flip(17);
				flip(18);
				flip(19);
				flip(13);			
				flip(23);
				break;
		case 19:flip(18);
				flip(19);
				flip(20);
				flip(14);			
				flip(24);
				break;
		case 20:flip(19);
				flip(20);
				flip(15);
				flip(25);						
				break;
		case 21:flip(21);
				flip(22);
				flip(16);				
				break;
		case 22:flip(21);
				flip(22);
				flip(23);
				flip(17);			
				break;
		case 23:flip(22);
				flip(23);
				flip(24);
				flip(18);							
				break;
		case 24:flip(23);
				flip(24);
				flip(25);
				flip(19);			
				break;
		case 25:flip(24);
				flip(25);
				flip(20);				
				break;
	}	
	showlights();
	if(win())
	{
		if(moves<(par*3))
		{
			moves++;
			alert("Du hast diesen level bestanden! In "+moves+" Zügen.");
			old = eval(document.scores.score.value);
			score = (level*par - moves)*5 + old;	
			document.scores.score.value = score;
			document.scores.userscore.value = score;
			level=getlevel(level);
			moves=0;
			showlights();
		}
		else
		{
			moves++;
			alert("Du hast diesen level bestanden! In "+moves+" Zügen. Benötigt waren "+par+". Versuche es nochmals ;-)");		
			getlevel(level-1);
			moves=0;
			showlights();
		}
	}	
	else
	{
		++moves;
	}
}

function startUp() 
{
    document.scores.score.value = 0;
    document.scores.userscore.value = 0;
    document.scores.username.value = "";
    document.scores.s.value = "d";
	showlights();
}

function StoreScore(username,score)
{
		//Allows you to write high scores to a file.
        var form = document.scores;
        form.score.value = score;
		form.username.value = username;
        form.userscore.value = score;
		form.s.value = "s";
        form.submit();
}

function win()
{
	retval=1;
	for(i=0;i<25;i++)
	{
		if(lights[i]==0)
		{
			retval=0;
		}
	}
	return retval;
}

function showlights()
{
	if (level <= 11)
	{
	imgCHANGE("l1", lights[0]); 
	imgCHANGE("l2", lights[1]); 
	imgCHANGE("l3", lights[2]); 
	imgCHANGE("l4", lights[3]); 
	imgCHANGE("l5", lights[4]); 
	imgCHANGE("l6", lights[5]); 
	imgCHANGE("l7", lights[6]); 
	imgCHANGE("l8", lights[7]); 
	imgCHANGE("l9", lights[8]); 
	imgCHANGE("l10", lights[9]); 
	imgCHANGE("l11", lights[10]); 
	imgCHANGE("l12", lights[11]); 
	imgCHANGE("l13", lights[12]); 
	imgCHANGE("l14", lights[13]); 
	imgCHANGE("l15", lights[14]); 
	imgCHANGE("l16", lights[15]); 
	imgCHANGE("l17", lights[16]); 
	imgCHANGE("l18", lights[17]); 
	imgCHANGE("l19", lights[18]); 
	imgCHANGE("l20", lights[19]); 
	imgCHANGE("l21", lights[20]); 
	imgCHANGE("l22", lights[21]); 
	imgCHANGE("l23", lights[22]); 
	imgCHANGE("l24", lights[23]); 	
	imgCHANGE("l25", lights[24]); 	
	}
}

function flip(which)
{
	if(lights[which-1])
		lights[which-1]=0;
	else
		lights[which-1]=1;
}

function imgCHANGE(imgName, which) {
  if (document.images) 
  {
	if(which==0)
	{
	   	imgChange= eval(imgName + "on.src");
		this.document[imgName].src= imgChange;
	}
	else if(which==1)
	{
		imgChange= eval(imgName + "off.src");
		this.document[imgName].src= imgChange;
	}
  }
}

function getlevel(level) {
	switch(level)
	{
		case 1: par = 4;
			lights = new  Array(1,0,1,0,0,0,0,0,1,0,1,0,1,0,1,0,1,0,0,0,0,0,1,0,1);  break;  
		case 2: par = 5;
			alert("Level "+level+"!");	
			lights = new  Array(0,0,1,0,0,0,1,0,1,0,1,0,0,0,1,0,1,0,1,0,0,0,1,0,0);  break; 
		case 3: par = 6;
			alert("Level "+level+"!");	
			lights = new  Array(1,0,1,0,0,0,1,0,0,0,0,1,1,1,0,0,0,0,1,0,0,0,1,0,1);  break;  
		case 4: par = 8;
			alert("Level "+level+"!");	
			lights = new  Array(1,0,0,0,0,0,0,1,1,0,0,1,1,1,0,0,1,1,0,0,0,0,0,0,1);  break;  
		case 5: par = 12;
			alert("Level "+level+"!");	
			lights = new  Array(1,1,0,1,1,1,1,0,1,1,0,0,1,0,0,1,1,0,1,1,1,1,0,1,1);  break;  
		case 6: par = 22;
			alert("Level "+level+"!");	
			lights = new  Array(0,1,0,1,0,1,0,0,0,1,1,1,1,1,1,1,0,0,0,1,0,1,0,1,0);  break;  
		case 7: par = 25;
			alert("Level "+level+"!");	
			lights = new  Array(0,1,0,1,0,1,1,1,1,1,0,1,0,1,0,1,1,1,1,1,0,1,0,1,0);  break;  
		case 8: par = 32;
			alert("Level "+level+"!");	
			lights = new  Array(1,1,0,1,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,1,1,0,1,1);  break;  
		case 9: par = 36;
			alert("Level "+level+"!");	
			lights = new  Array(1,1,1,1,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,1,1,1,1);  break;  
		case 10: par = 41;
			alert("Level "+level+"!");	
			lights = new  Array(1,0,1,0,1,0,1,1,1,0,1,1,1,1,1,0,1,1,1,0,1,0,1,0,1);  break;  
		case 11: 
				alert("Du hast alle levels bestanden. Gratuliere!");
				//level = 0;
				total = eval(document.scores.score.value);
				username = prompt("Dein Name für die Rangliste","");  
				if (username != "" && username != null) {
					StoreScore(username,total);
				}
				break;
    }
	return ++level;
}

levelimg = new Image();	
level = getlevel(1);
moves = 0;

l1on = new Image();
l1on.src="images/on.gif";
l1off = new Image();
l1off.src="images/off.gif";	
l2on = new Image();
l2on.src="images/on.gif";
l2off = new Image();
l2off.src="images/off.gif";	
l3on = new Image();
l3on.src="images/on.gif";
l3off = new Image();
l3off.src="images/off.gif";	
l4on = new Image();
l4on.src="images/on.gif";
l4off = new Image();
l4off.src="images/off.gif";	
l5on = new Image();
l5on.src="images/on.gif";
l5off = new Image();
l5off.src="images/off.gif";	
l6on = new Image();
l6on.src="images/on.gif";
l6off = new Image();
l6off.src="images/off.gif";	
l7on = new Image();
l7on.src="images/on.gif";
l7off = new Image();
l7off.src="images/off.gif";	
l8on = new Image();
l8on.src="images/on.gif";
l8off = new Image();
l8off.src="images/off.gif";	
l9on = new Image();
l9on.src="images/on.gif";
l9off = new Image();
l9off.src="images/off.gif";	
l10on = new Image();
l10on.src="images/on.gif";
l10off = new Image();
l10off.src="images/off.gif";	
l11on = new Image();
l11on.src="images/on.gif";
l11off = new Image();
l11off.src="images/off.gif";	
l12on = new Image();
l12on.src="images/on.gif";
l12off = new Image();
l12off.src="images/off.gif";	
l13on = new Image();
l13on.src="images/on.gif";
l13off = new Image();
l13off.src="images/off.gif";	
l14on = new Image();
l14on.src="images/on.gif";
l14off = new Image();
l14off.src="images/off.gif";	
l15on = new Image();
l15on.src="images/on.gif";
l15off = new Image();
l15off.src="images/off.gif";	
l16on = new Image();
l16on.src="images/on.gif";
l16off = new Image();
l16off.src="images/off.gif";	
l17on = new Image();
l17on.src="images/on.gif";
l17off = new Image();
l17off.src="images/off.gif";	
l18on = new Image();
l18on.src="images/on.gif";
l18off = new Image();
l18off.src="images/off.gif";	
l19on = new Image();
l19on.src="images/on.gif";
l19off = new Image();
l19off.src="images/off.gif";	
l20on = new Image();
l20on.src="images/on.gif";
l20off = new Image();
l20off.src="images/off.gif";	
l21on = new Image();
l21on.src="images/on.gif";
l21off = new Image();
l21off.src="images/off.gif";	
l22on = new Image();
l22on.src="images/on.gif";
l22off = new Image();
l22off.src="images/off.gif";	
l23on = new Image();
l23on.src="images/on.gif";
l23off = new Image();
l23off.src="images/off.gif";	
l24on = new Image();
l24on.src="images/on.gif";
l24off = new Image();
l24off.src="images/off.gif";	
l25on = new Image();
l25on.src="images/on.gif";
l25off = new Image();
l25off.src="images/off.gif";

