bildbyte=0
//if((navigator.appName == "Netscape")&&(parseInt(navigator.appVersion) >= 3))
//  {bildbyte=1}
//if((navigator.appName == "Microsoft Internet Explorer")&&(parseInt(navigator.appVersion) >= 4))
 // {bildbyte=1}

if(document.images)
  {bildbyte=1}

keyOK=0
if((navigator.appName == "Netscape")&&(parseInt(navigator.appVersion) >= 4))
  {keyOK=1}
if(bildbyte==1)
{bild = new Array(2)
bild[1]=new Image()
bild[2]=new Image()
bild[1].src="../iljtegu.gif"
bild[2].src="../iljtewh.gif"
}
taken=new Array()
takennew=new Array()
startad=0
iljtimer=null
function startup()
{
if(bildbyte==1)
{  
   takenmin=200;
   wall=0;bit=null;turned=0             
   fullines=0;points=0;bildv=1;antal=0
   taken.length=0;ivall=350 
   for(i=0;i<200;i++){if(document.images[i].src!=bild[2].src){changepic(i,2)}}
   document.iljform3.iljruta.value=""
   document.iljform3.iljruta2.value="     1" 
   changem()
   iljdone=0
   iljtimer=setTimeout("iljtime()",100)
   startad=1
}}

function iljtime()
{ if(iljdone==0){ 
  clearTimeout(iljtimer)
  movedown()
  iljtimer=setTimeout("iljtime()",ivall)
}}
function movedown()
{
if(startad==1)
  {
  if(movep3>=190){wall=1;settaken();} 
  if((movep3+10)>=takenmin)
     {
     checkwall(10)
     }
  else {wall=0}
if(wall!=1)         
  {  changepic(movep0,2) 
     changepic(movep1,2)
     changepic(movep2,2)
     changepic(movep3,2)
     changepic(movep0+10,bildv)
     changepic(movep1+10,bildv)
     changepic(movep2+10,bildv)
     changepic(movep3+10,bildv)
     movep0=movep0+10
     movep1=movep1+10
     movep2=movep2+10
     movep3=movep3+10
     }}}
function moveright()
{
if(startad==1)
  {
   if(wall==0){    
     if((movep0+1)%10==0){wall=1;}
     if((movep1+1)%10==0){wall=1;}
     if((movep2+1)%10==0){wall=1;}
     if((movep3+1)%10==0){wall=1;}
   if(taken.length>0 && wall!=1)
     {
      if((movep3+1)>=takenmin) 
           {checkwall(1)}
      }
if(wall!=1)  
  {
     changepic(movep0,2)
     changepic(movep1,2)
     changepic(movep2,2)
     changepic(movep3,2)
     changepic(movep0+1,bildv)
     changepic(movep1+1,bildv)
     changepic(movep2+1,bildv)
     changepic(movep3+1,bildv)
     movep0=movep0+1
     movep1=movep1+1
     movep2=movep2+1
     movep3=movep3+1
  }}}}
function moveleft()
{
if(startad==1)
  {
  if(wall==0)
    {
     if(movep0%10==0){wall=1}
     if(movep1%10==0){wall=1}
     if(movep2%10==0){wall=1}
     if(movep3%10==0){wall=1}
     if(taken.length>0&&wall!=1)  
       {
       if((movep3+10)>=takenmin)
         {
         checkwall(-1)
         }
       }
     if(wall!=1)
       {
     changepic(movep0,2)
     changepic(movep1,2)
     changepic(movep2,2)
     changepic(movep3,2)
     changepic(movep0-1,bildv)
     changepic(movep1-1,bildv)
     changepic(movep2-1,bildv)
     changepic(movep3-1,bildv)
     movep0=movep0-1
     movep1=movep1-1
     movep2=movep2-1
     movep3=movep3-1
  }}}}

function changem()
 {
bit=Math.floor(Math.random()*7)
if(bit==0){bit="blue"}
if(bit==1){bit="red"}
if(bit==2){bit="gul"}
if(bit==3){bit="gree"}
if(bit==4){bit="lange"}
if(bit==5){bit="blue2"}
if(bit==6){bit="gra"}
if(bit=="blue"){ 
   movep0=3;movep1=4;movep2=5;movep3=13;turned=0}
if(bit=="blue2"){ 
   movep0=3;movep1=4;movep2=5;movep3=15;turned=0}
if(bit=="red"){
   movep0=4;movep1=5;movep2=14;movep3=15}
if(bit=="gul"){
   movep0=4;movep1=5;movep2=15;movep3=16;turned=0}
if(bit=="gree"){
   movep0=4;movep1=5;movep2=13;movep3=14;turned=0}
if(bit=="lange"){
   movep0=4;movep1=5;movep2=6;movep3=7;turned=0}
if(bit=="gra"){
   movep0=4;movep1=5;movep2=6;movep3=15;turned=0}
changepic(movep0,bildv)
changepic(movep1,bildv)
changepic(movep2,bildv)
changepic(movep3,bildv)
}
function changepic(position,bildnr)
  {document.images[position].src=bild[bildnr].src}

function turnpiece()
   {wall=0 ///
   if(movep3>=190){wall=1} 
   if(bit=="red") {wall=1}
   if(startad==0) {wall=1}
   if(wall==0)  
     {   
      turnok=1
      if(bit=="blue"){
        if(turned==1&&(movep0)%10==0){wall=1}
        if(turned==3&&(movep3+1)%10==0){wall=1} }
      if(bit=="blue2"){
        if(turned==1&&(movep2)%10==0){wall=1}
        if(turned==3&&(movep1+1)%10==0){wall=1} }
      if(bit=="gra") {
        if(turned==1&&(movep1)%10==0){wall=1}
        if(turned==3&&(movep2+1)%10==0){wall=1} } 
      if(bit=="lange") {
        if(turned==0&&movep0<30) {wall=1}
        if(turned==1&&(movep0)%10>6){wall=1} }
      if(bit=="gul") {
        if(turned==1&&(movep0+1)%10==0){wall=1}  } 
      if(bit=="gree") {
        if(turned==1&&(movep0)%10==0){wall=1}  }
 
      if(wall==0)
        {//OK
        if(bit=="blue")
          {
          if(turned==0){tempp0=movep0+1;tempp1=movep1+1;tempp2=movep2+10;tempp3=movep3+12}
          if(turned==1){tempp0=movep0+11;tempp1=movep1+18;tempp2=movep2+9;tempp3=movep3}
          if(turned==2){tempp0=movep0-12;tempp1=movep1-10;tempp2=movep2-1;tempp3=movep3-1}
          if(turned==3){tempp0=movep0;tempp1=movep1-9;tempp2=movep2-18;tempp3=movep3-11}
          }
        if(bit=="blue2")
          {
          if(turned==0){tempp0=movep0+2;tempp1=movep1+11;tempp2=movep2+19;tempp3=movep3+10}
          if(turned==1){tempp0=movep0+8;tempp1=movep1+8; tempp2=movep2;tempp3=movep3}
          if(turned==2){tempp0=movep0-10;tempp1=movep1-19;tempp2=movep2-11;tempp3=movep3-2}
          if(turned==3){tempp0=movep0;tempp1=movep1; tempp2=movep2-8;tempp3=movep3-8}
          }
        if(bit=="gra")
          {
          if(turned==0){tempp0=movep0+2;tempp1=movep1+10;tempp2=movep2+10;tempp3=movep3+11}
          if(turned==1){tempp0=movep0+9;tempp1=movep1+9;tempp2=movep2+9;tempp3=movep3}
          if(turned==2){tempp0=movep0-11;tempp1=movep1-10;tempp2=movep2-10;tempp3=movep3-2}
          if(turned==3){tempp0=movep0;tempp1=movep1-9;tempp2=movep2-9;tempp3=movep3-9}
          }
        if(bit=="gul")
          {
          if(turned==0){tempp0=movep0+1;tempp1=movep1+9;tempp2=movep2;tempp3=movep3+8;}
          if(turned==1){if(turned==1){turned=3}tempp0=movep0-1;tempp1=movep1-9;tempp2=movep2;tempp3=movep3-8}
          }
        if(bit=="gree")
          {
          if(turned==0){tempp0=movep0;tempp1=movep1+9;tempp2=movep2+2;tempp3=movep3+11;}
          if(turned==1){if(turned==1){turned=3}tempp0=movep0;tempp1=movep1-9;tempp2=movep2-2;tempp3=movep3-11}
          }
        if(bit=="lange")
          {
          if(turned==0){tempp0=movep0-30;tempp1=movep1-21;tempp2=movep2-12;tempp3=movep3-3;}
          if(turned==1){if(turned==1){turned=3}tempp0=movep0+30;tempp1=movep1+21;tempp2=movep2+12; tempp3=movep3+3}
          }
        if(taken.length>0)
          {
          if((movep3+10)>=takenmin)
           {
           checkturn()
           }
         }
        if(turnok==1)
          {
          changepic(movep0,2)
          changepic(movep1,2)
          changepic(movep2,2)
          changepic(movep3,2) 
          movep0=tempp0
          movep1=tempp1
          movep2=tempp2
          movep3=tempp3   
          changepic(movep0,bildv)
          changepic(movep1,bildv)
          changepic(movep2,bildv)
          changepic(movep3,bildv)
          turned=turned+1
          if(turned==4){turned=0} 
         }
     }
   }  
}
function checkturn()
  {
  var j=0
  while(j<taken.length)
          {
          if(tempp0==taken[j]){turnok=0;break} 
          if(tempp1==taken[j]){turnok=0;break}
          if(tempp2==taken[j]){turnok=0;break}
          if(tempp3==taken[j]){turnok=0;break}
          j++
          }
}
function settaken()
  {
  var i=0
  taken_start=taken.length
  taken[taken_start+0]=movep0
  taken[taken_start+1]=movep1
  taken[taken_start+2]=movep2
  taken[taken_start+3]=movep3
  takenmin=200
  for(i=0;i<taken.length;i++)
    {
     takenmin=Math.min(takenmin,taken[i])
     }
if(taken.length>9)
  {checkline()}
if(takenmin>9)
   {changem()}
else{clearTimeout(iljtimer);iljdone=1;startad=0;alert('GAME OVER!')}             
}
function checkwall(rikt)
{
wall=0 
var j=0
if(taken.length>1)
  {
   j=taken.length-1
   while(j>-1)
      {                                    
      if(movep0==taken[j]-rikt){wall=1;if(rikt==10){settaken();break};break}
      if(movep1==taken[j]-rikt){wall=1;if(rikt==10){settaken();break};break}
      if(movep2==taken[j]-rikt){wall=1;if(rikt==10){settaken();break};break}
      if(movep3==taken[j]-rikt){wall=1;if(rikt==10){settaken();break};break}
      j--
      }
   }
}
function checkline()
 {
  antal=0  
  fullrad=0
  var startli=parseInt(movep3/10)//var OK?
  var minli= startli-3//var OK?
  var i=startli
  while(i>=minli)  
    { 
    antal=0
    var k=0
    while(k<taken.length)
       {
        if(taken[k]>=i*10 && taken[k]<(i+1)*10)
          {
          antal++
          }
          if(antal==10)
            {fullrad=i;break}
           k++
        }
    i--
    if(antal==10){break}
    }
    if(antal==10)   
      {iljclear(fullrad);}    
     else {if(fullines!=0){pointsetter();}        
      }
}

function iljclear(iljinv)
{
var i=0
var j=0
for(j=0;j<taken.length;j++)
         {
         takennew[j]=taken[j]
         }
for(i=iljinv*10;i<(iljinv+1)*10;i++)
   {changepic(i,2)} 
for(j=0;j<taken.length;j++)
   {
   if(taken[j]>=iljinv*10 && taken[j]<(iljinv+1)*10)
          {takennew[j]=0}           
    } 
maxposition=iljinv*10
for(j=0;j<taken.length;j++)
    {
    if(taken[j]<maxposition)
      {
      changepic(taken[j],2) 
      } 
    }
for(j=0;j<taken.length;j++)
    {
    if(taken[j]<maxposition)
      {
      changepic(taken[j]+10,bildv) 
      takennew[j]=taken[j]+10  
      } 
    }
var jj=0
for(j=0;j<taken.length;j++)
   {
   if(takennew[j]!=0)
     {
     taken[jj]=takennew[j]
     jj++
     } 
    }
taken.length=jj
takennew.length=0
fullines++
checkline()
}
function pointsetter()
{
if(fullines==1){points=points+200;fullines=0;}
if(fullines==2){points=points+500;fullines=0;}
if(fullines==3){points=points+900;fullines=0;}
if(fullines==4){points=points+1200;fullines=0;}
if(points>1200){ivall=250;document.iljform3.iljruta2.value="     2"}
if(points>2000){ivall=150;document.iljform3.iljruta2.value="     3"}
if(points>3000){ivall =75;document.iljform3.iljruta2.value="     4"}
if(points>4000){ivall =20;document.iljform3.iljruta2.value="     5"}
if(points>=4500){clearTimeout(iljtimer);iljdone=1;alert("Well done!")} 
document.iljform3.iljruta.value="    "+points
}
window.onerror = null;

