	pozycje = new Array(16);
	pozycje[0]=[40, 30]; pozycje[1]=[95, 30]; pozycje[2]=[150, 30]; pozycje[3]=[205, 30];
	pozycje[4]=[40, 85]; pozycje[5]=[95, 85]; pozycje[6]=[150, 85]; pozycje[7]=[205, 85];
	pozycje[8]=[40, 140]; pozycje[9]=[95, 140]; pozycje[10]=[150, 140]; pozycje[11]=[205, 140];
	pozycje[12]=[40, 195]; pozycje[13]=[95, 195]; pozycje[14]=[150, 195]; pozycje[15]=[205, 195];
	tab_el = [16];
	nr=0; 
	var lr=0;
	var tab_pol = [16];
	var wolnepole = 0;
	var przesun = 0;
	var nrpola = [4];
	var kn=0;
	var poziom = 200;


function start() {
	document.getElementById('but1').onclick=function(e) {
		losuj(); }
	document.getElementById('but2').onclick=function(e) {
		ustaw(); }
	document.getElementById('but3').onclick=function(e) {
		zamknij(); }
	document.getElementById('li_border').onchange=function(e) {
		wybierz_obwodke(); }
	document.getElementById('li_ramka').onchange=function(e) {
		wybierz_ramke(); }
	document.getElementById('li_poziom').onchange=function(e) {
		wybierz_poziom(); }
	document.getElementById('p1').onclick=function() {skok(0);}	
	document.getElementById('p2').onclick=function() {skok(1);}	
	document.getElementById('p3').onclick=function() {skok(2);}	
	document.getElementById('p4').onclick=function() {skok(3);}	
	document.getElementById('p5').onclick=function() {skok(4);}	
	document.getElementById('p6').onclick=function() {skok(5);}	
	document.getElementById('p7').onclick=function() {skok(6);}	
	document.getElementById('p8').onclick=function() {skok(7);}	
	document.getElementById('p9').onclick=function() {skok(8);}	
	document.getElementById('p10').onclick=function() {skok(9);}	
	document.getElementById('p11').onclick=function() {skok(10);}	
	document.getElementById('p12').onclick=function() {skok(11);}
	document.getElementById('p13').onclick=function() {skok(12);}	
	document.getElementById('p14').onclick=function() {skok(13);}	
	document.getElementById('p15').onclick=function() {skok(14);}	
}


function ustaw() {
	var li=document.getElementById('setup');
	li.style.display='block';
}

function zamknij() {
	var li=document.getElementById('setup');
	li.style.display='none';
}

function wybierz_obwodke() {
	var li=document.getElementById('li_border');
	var pl=document.getElementById('piet_plansza');
	var fo=document.forms['form'].li1;
	if (li.value=='Obwódka - 0') pl.style.border='0';
	if (li.value=='Obwódka - 1') pl.style.border='5px solid #008';
	if (li.value=='Obwódka - 2') pl.style.border='5px solid #088';
	if (li.value=='Obwódka - 3') pl.style.border='5px solid #f00';
	if (li.value=='Obwódka - 4') pl.style.border='5px solid #0f0';
	if (li.value=='Obwódka - 5') pl.style.border='5px solid #ff0';
}

function wybierz_ramke() {
	var li=document.getElementById('li_ramka');
	var pl=document.getElementById('piet_plansza');
	if (li.value=='Ramka - 1') pl.style.backgroundImage="url('gry/pietnastka/img/pietnastka_r.gif')";	
	if (li.value=='Ramka - 2') pl.style.backgroundImage="url('gry/pietnastka/img/pietnastka_r1.gif')";
	if (li.value=='Ramka - 3') pl.style.backgroundImage="url('gry/pietnastka/img/pietnastka_r2.gif')";
	if (li.value=='Ramka - 4') pl.style.backgroundImage="url('gry/pietnastka/img/pietnastka_r3.gif')";
	if (li.value=='Ramka - 5') pl.style.backgroundImage="url('gry/pietnastka/img/pietnastka_r4.gif')";
	if (li.value=='Ramka - 6') pl.style.backgroundImage="url('gry/pietnastka/img/pietnastka_r5.gif')";
}

function wybierz_poziom() {
	var li=document.getElementById('li_poziom');
	if (li.value=='Łatwy') poziom=50;
	if (li.value=='	Średni') poziom=100;
	if (li.value=='Trudny') poziom=200;
}
	
function losuj () {
	var los=0;
	lr=0;
	var temp=0;
	var ek=document.getElementById('tt');
	ek.value=(' Liczba ruchów: '+lr);
	ulozklocki();
	for (var i=0; i<16; i++) {
		tab_pol[i]=i;
	}
	wolnepole=15;
	kn=poziom;
	si = setInterval('time()',10);
	}
	
function rozlozklocki() {
		oblicz_wolnepole();
		wpole();
		temp=tab_pol[przesun];
		tab_pol[przesun] = tab_pol[15];
		tab_pol[15] = temp;
		wolnepole=temp;
	
		for (var i=0; i<16; i++) {
			tab_el[i]=tab_pol[i];
		}
		for (var i=1; i<17; i++) {
			var el=document.getElementById('p'+i);
			el.style.left=pozycje[tab_pol[i-1]][0]+'px';
			el.style.top=pozycje[tab_pol[i-1]][1]+'px';
		}
	
	
}

function time() {
	kn--;
	rozlozklocki();
	if (kn==0) {
		stop();
	}
}

function stop() {
	clearInterval(si);
}

function wpole() {
	var los=0;
	var j=0;
	do {
			los=Math.floor(Math.random()*4);
		}
	while (nrpola[los]==0)
	przesun=nrpola[los];
}

function oblicz_wolnepole() {
	var lp=0;
	var k=0;
	var czywolny = false;
	var wolnyskok = [4];
	for (var i=0; i<4; i++) {
		wolnyskok[i]=0;
		nrpola[i]=0;
	}

	if (wolnepole==0) {
	wolnyskok[0]=1; wolnyskok[1]=4; lp=2;
	}
	if (wolnepole==1) {
	wolnyskok[0]=0; wolnyskok[1]=2; wolnyskok[2]=5; lp=3;
	}
	if (wolnepole==2) {
	wolnyskok[0]=1; wolnyskok[1]=3; wolnyskok[2]=6; lp=3;
	}
	if (wolnepole==3) {
	wolnyskok[0]=2; wolnyskok[1]=7; lp=2;
	}
	if (wolnepole==4) {
	wolnyskok[0]=0; wolnyskok[1]=5; wolnyskok[2]=8; lp=3;
	}
	if (wolnepole==5) {
	wolnyskok[0]=1; wolnyskok[1]=4; wolnyskok[2]=6; wolnyskok[3]=9; lp=4;
	}
	if (wolnepole==6) {
	wolnyskok[0]=2; wolnyskok[1]=5; wolnyskok[2]=7; wolnyskok[3]=10; lp=4;
	}
	if (wolnepole==7) {
	wolnyskok[0]=3; wolnyskok[1]=6; wolnyskok[2]=1; lp=3;
	}
	if (wolnepole==8) {
	wolnyskok[0]=4; wolnyskok[1]=9; wolnyskok[2]=12; lp=3;
	}
	if (wolnepole==9) {
	wolnyskok[0]=5; wolnyskok[1]=8; wolnyskok[2]=10; wolnyskok[3]=13; lp=4;
	}
	if (wolnepole==10) {
	wolnyskok[0]=6; wolnyskok[1]=9; wolnyskok[2]=11; wolnyskok[3]=14; lp=4;
	}
	if (wolnepole==11) {
	wolnyskok[0]=7; wolnyskok[1]=10; wolnyskok[2]=15; lp=3;
	}
	if (wolnepole==12) {
	wolnyskok[0]=8; wolnyskok[1]=13; lp=2;
	}
	if (wolnepole==13) {
	wolnyskok[0]=9; wolnyskok[1]=12; wolnyskok[2]=14; lp=3;
	}
	if (wolnepole==14) {
	wolnyskok[0]=10; wolnyskok[1]=13; wolnyskok[2]=15; lp=3;
	}
	if (wolnepole==15) {
	wolnyskok[0]=11; wolnyskok[1]=14; lp=2;
	}

	for (var j=0; j<16; j++) {
		for (var i=0; i<lp; i++) {
			if (tab_pol[j]==wolnyskok[i]) {
			czywolny=true;
			}
		}
		if (czywolny==true) {
			czywolny=false;
			nrpola[k]=j;
			k++;
		}
	}
}

	
function skok(nr) {
	var sl=tab_el[15]-1;
	var sg=tab_el[15]-4;
	var sp=tab_el[15]+1;
	var sd=tab_el[15]+4;
	var warunek=true;
	if ((tab_el[nr]==3) && (tab_el[15]==4)) warunek=false;
	if ((tab_el[nr]==4) && (tab_el[15]==3)) warunek=false;
	if ((tab_el[nr]==7) && (tab_el[15]==8)) warunek=false;
	if ((tab_el[nr]==8) && (tab_el[15]==7)) warunek=false;
	if ((tab_el[nr]==11) && (tab_el[15]==12)) warunek=false;
	if ((tab_el[nr]==12) && (tab_el[15]==11)) warunek=false;
	if (warunek) {
	if (((tab_el[nr]==sl) || (tab_el[nr]==sg)) || ((tab_el[nr]==sp) || (tab_el[nr]==sd))) {
		var t=tab_el[nr];
		tab_el[nr]=tab_el[15];
		tab_el[15]=t;
		lr++;
		} }
	for (var i=0; i<15; i++) {
		if (nr==i) {
			var el=document.getElementById('p'+(i+1));
			el.style.left=pozycje[tab_el[i]][0]+'px';
			el.style.top=pozycje[tab_el[i]][1]+'px';
			break;
		}
	}
	var el2=document.getElementById('p16');
	el2.style.left=pozycje[tab_el[15]][0]+'px';
	el2.style.top=pozycje[tab_el[15]][1]+'px';
	var ek=document.getElementById('tt');
	ek.value=(' Liczba ruchów: '+lr);
	sprawdz();
	ramka(nr);
}   

function sprawdz() { 
	if ((((tab_el[0]==0) && (tab_el[1]==1)) && ((tab_el[2]==2) && (tab_el[3]==3))) &&
	(((tab_el[4]==4) && (tab_el[5]==5)) && ((tab_el[6]==6) && (tab_el[7]==7))))
	if (((tab_el[8]==8) && (tab_el[9]==9)) && ((tab_el[10]==10) && (tab_el[11]==11))) 
	if (((tab_el[12]==12) && (tab_el[13]==13)) && ((tab_el[14]==14) && (tab_el[15]==15))) 
	alert('BRAWO!!! Elementy zostały ułożone poprawnie'); 
 }

function ramka(nr) {
	for (var i=1; i<16; i++) {
		elk1=document.getElementById('p'+i);
		elk1.style.border='0';
	}
	var id1=('p'+(nr+1));
	elk1=document.getElementById(id1);
	elk1.style.border='2px solid #008';
	elk1.style.borderStyle='groove';
}	

function ulozklocki() {
	var tk = [16];
	for (var i=0; i<16; i++) {
		tk[i]=i;
	}
	
	for (var i=0; i<16; i++) {
		tab_el[i]=tk[i];
	}
	
	for (var i=1; i<17; i++) {
		var el=document.getElementById('p'+i);
		el.style.left=pozycje[tk[i-1]][0]+'px';
		el.style.top=pozycje[tk[i-1]][1]+'px';
	}
	
}