

var arrZustand = new Array();

function Mischen()
{
  var a,b;
  var tmpThumb, tmpDescr;
  for (i=0;i<50;i++)
  {
    a = Math.round(Math.random()*100000) % 18;
    b = Math.round(Math.random()*100000) % 18;

    tmpThumb = arrThumb[a];
    tmpDescr = arrDescr[a];

    arrThumb[a] = arrThumb[b];
    arrDescr[a] = arrDescr[b];

    arrThumb[b] = tmpThumb;
    arrDescr[b] = tmpDescr;

  }

  for (i=0; i<18; i++)
    arrZustand[i] = 0;
}


var text;

var wsmall = 100, ssmall = 100;
var crlf = "<br><br>";

if (window.innerWidth < 800)
{
  wsmall = 90, ssmall = 80;
  crlf = "";
}


var dOpenCards;
var dFirstCard;
var dSecondCard;
var dSpielZuege;
var dPunkte;


function Aufblaettern(nr)
{

  if (dOpenCards == 0)
  {
     dFirstCard = nr;
     arrZustand[dFirstCard] = 1;
     dOpenCards = 1;
  }
  else if (dOpenCards == 1)
  {
     if (nr != dFirstCard)
     {
       dSecondCard = nr;
       arrZustand[dSecondCard] = 1;
       dOpenCards = 2;
       if (arrThumb[dFirstCard] == arrThumb[dSecondCard])
         dPunkte++;
       dSpielZuege++;
     }
  }
  else
  {
     if (arrThumb[dFirstCard] == arrThumb[dSecondCard])
     {
        arrZustand[dFirstCard] = 2;
        arrZustand[dSecondCard] = 2;
     }
     else
     {
        arrZustand[dFirstCard] = 0;
        arrZustand[dSecondCard] = 0;
     }
     dOpenCards = 0;
  }
  DrawTable();

}


function DrawSmall (nr)
{

  if (arrZustand[nr] == 0)
  {
    text+= "<td width=" + wsmall + " align=center height=130>";
    text+= "<a href=\"javascript:Aufblaettern(" + nr + ")\" border=0 ";
    text+= "onMouseOver=\"window.status=\'Bitte aufbl&auml;ttern\';return true;\" ";
    text+= "onMouseOut=\"window.status=\'Spiel Memory !\';return true;\" ";
    text+= "><img src=\"" + "../../pict/karte.jpg" + "\" width=" + ssmall + " alt=\"" + "Bitte aufbl&auml;ttern" + "\" border=0></a>";
    text+= "</td>\n";
  }
  else if (arrZustand[nr] == 1)
  {
    text+= "<td width=" + wsmall + " align=center height=130>";
    text+= "<a href=\"javascript:Aufblaettern(" + nr + ")\" border=0 ";
    text+= "onMouseOver=\"window.status=\'" + arrDescr[nr] + "\';return true;\" ";
    text+= "onMouseOut=\"window.status=\'Spiel Memory !\';return true;\" ";
    text+= "><img src=\"" + arrThumb[nr] + "\" width=" + ssmall + " alt=\"" + arrDescr[nr] + "\" border=0></a>";
    text+= "</td>\n";
  }
  else
  {
    text+= "<td width=" + wsmall + " align=center height=130></td>\n";
  }

  return (text);
}

function CalcTable()
{
  text = "<center><table><tr>";

  for (nr=0; nr<6; nr++) { DrawSmall(nr); }
  text+= "</tr><tr>\n";

  for (nr=6; nr<12; nr++) { DrawSmall(nr); }
  text+= "</tr><tr>\n";

  for (nr=12; nr<18; nr++) { DrawSmall(nr); }
  text+= "</tr><tr>\n";

  text+= "</tr></table>\n";

  text+= "<br><table><tr>\n";

  text+= "<td align=center width = " + 2*ssmall + ">Spielz&uuml;ge: " + dSpielZuege + "</td>\n";
  text+= "<td align=center width = " + 2*ssmall + ">Punkte: " + dPunkte + "</td>\n";
  text+= "<td align=center width = " + 2*ssmall + "><a href=\"javascript:NewGame();\">Neues Spiel</a>\n";
  text+= "</tr></table>\n";

  return (text);
}

function DrawTable()
{

  var txt = CalcTable();

  document.bgColor =    "003333";
  document.fgColor =    "EEFFFF";
  document.linkColor =  "33AAAA";
  document.alinkColor = "FFFFFF";
  document.vlinkColor = "EEFFFF";

    if(document.all) // MS Explorer 5.0
    {
      document.all.MicrosoftVersion.innerHTML = txt;
    }
    else if(document.layers) // Netscape 4.x
    {
      document.NetscapeVersion.document.open();
      document.NetscapeVersion.document.write(txt);
      document.NetscapeVersion.document.close();
    }

}


function NewGame()
{
   Mischen();

   dFirstCard = -1;
   dSecondCard = -1;
   dOpenCards = 0;

   dSpielZuege = 0;
   dPunkte = 0;

   DrawTable();
}

