prazdno = new Image(20,20);
prazdno.src = "images/prazdno.gif";
okraj = new Image(20,20);
okraj.src = "images/okraj.gif";
krizek = new Image(20,20);
krizek.src = "images/symbol1.gif";
kolecko = new Image(20,20);
kolecko.src = "images/symbol2.gif";
pole = new Array(225);
tahy = new Array(225);
prav = new Array(225);
ctahu = 0;
smer = new initArray(1,-1,15,-15,16,-16,14,-14);
function initArray()
{
  this.length=initArray.arguments.length;
  for (var i=0;i<this.length;i++)
  {
    this[i]=initArray.arguments[i];
  }
}
function JeJichPet()
{
  tah=tahy[ctahu];
  ktera=pole[tah];
  for(i=0;i<8;i+=2)
  {
    pocet=1;
    konst=1;
    while (pole[tah+(konst++)*smer[i]]==ktera) pocet++;
    konst=1;
    while (pole[tah+(konst++)*smer[i+1]]==ktera) pocet++;
    if (pocet>=5) return true;
  }
  return false;
}
function VytvorTah()
{
  if (ctahu==0)
  {
    tahni=65+Math.floor(6*Math.random())+15*Math.floor(6*Math.random());
  }
  else
  {
    max=0;
    tahni=0;
    for(i=0;i<225;i++) prav[i]=0;
    ictahu=ctahu;
    while (ictahu>0)
    {
    tah=tahy[ictahu--];
    ktera=pole[tah];
    for(sm=0;sm<8;sm+=2)
    {
      pocet=1;
      konst=1;
      while (pole[tah+(konst++)*smer[sm]]==ktera) pocet++;
      konsu=1;
      while (pole[tah+(konsu++)*smer[sm+1]]==ktera) pocet++;
      if(pole[tah+(konst-1)*smer[sm]]==0)
      {
        prav[tah+(konst-1)*smer[sm]]+=pocet;
      }
      if(pole[tah+(konsu-1)*smer[sm+1]]==0)
      {
        prav[tah+(konsu-1)*smer[sm+1]]+=pocet;
      }
      if((pole[tah+(konst-1)*smer[sm]]==0)&&(pole[tah+(konsu-1)*smer[sm+1]]==0))
      {
        prav[tah+(konst-1)*smer[sm]]+=0.76;
        prav[tah+(konsu-1)*smer[sm+1]]+=0.76;
      }
    }
    }
    for(i=0;i<225;i++)
    {
      if(prav[i]>max) { max=prav[i]; tahni=i; }
      if(prav[i]==max) { if(Math.random()>0.7) tahni=i; }
    }
  }
  document.images[tahni].src=kolecko.src;
  pole[tahni]=2;
  tahy[++ctahu]=tahni;
}
function Odpovez()
{
  if(JeJichPet()==true)
  {
    alert('Zvítězil jsi ! Začínám já :-(');
    Vynuluj();
  }
  if (ctahu==169)
  {
    alert('Remíza ! Začínám já :-(');
    Vynuluj();
  }
  VytvorTah();
  if(JeJichPet()==true) 
  {
    alert('Vyhrál jsem ! Zkus štěstí znovu, začínáš :-)');
    Vynuluj();
  }
  if (ctahu==169)
  {
    alert('Remíza ! Zkus štěstí znovu, začínáš :-)');
    Vynuluj();
  }
}
function Vynuluj()
{
  for(i=0;i<225;i++)
  {
    document.images[i+1].src=prazdno.src;
    pole[i+1]=0;
  }
  for(i=0;i<15;i++)
  {
    document.images[i+1].src=okraj.src;
    pole[i+1]=3;
    document.images[i+210+1].src=okraj.src;
    pole[i+210+1]=3;
    document.images[i*15+1].src=okraj.src;
    pole[i*15+1]=3;
    document.images[i*15+15].src=okraj.src;
    pole[i*15+15]=3;
  }
  ctahu=0;
}
function Zakresli(co,kam)
{
  if (pole[kam]==0)
  {
    if (co==1) document.images[kam].src=krizek.src;
    if (co==2) document.images[kam].src=kolecko.src;
    pole[kam]=co;
    tahy[++ctahu]=kam;
    Odpovez();
  }
}
function Plocha()
{
  s="";
  for(i=0;i<225;i++)
  {
    if(Math.floor(i/15)==(i/15)) s+="<br>";
    s+="<a href=\"#\" onClick=\"Zakresli(";
    s+="1,"+(i+1);
    s+=")\"><img src=\"images/prazdno.gif\" border=0></a>";
  }
  document.write(s);
}
Plocha();
Vynuluj();
