cardstatus = new Array(27);
cardstart = 0;
cardselected = false;
cardidx = 0;
talon = new Array(24);
picture = new Array(cards);
cardimg = new Array(cards);
preload = new Array(cards);
cardvis = new Array(cards);
ls = new Array(cards);
lsstat = new Array(cards);
lsflag = 0;
lsext=".gif";

/*
carddesc = new Array(
	"far","ur","thorn","os","rath","kaun","gibur","wonne","hagal",
	"noth","isa","jera","ar","per","eol","sol","tyr","bar",
	"eh","man","laf","ing","dag","yr"
);
*/

carddesc = new Array(
	"far","ur","thorn","os","rath","kaun","gibur","wonne","hagal",
	"noth","isa","jera","ar","per","eh","sol","tyr","bar",
	"eh","man","laf","ing","dag","yr"
);

cardvalue = new Array(
	0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,
	1,2,3,4,5,6,7,8,9,10,0,0,0,0,1,2,3,4,5,6,7,8,9,10,0,0,0,0,
	1,2,3,4,5,6,7,8,9,10,0,0,0,0,1,2,3,4,5,6,7,8,9,10,0,0,0,0
);

function InitTarot()
{
	var i;
	
	for( i = 0; i < 27; i++ )
	{
		cardstatus[i] = 0;
		if( i < 24 ) 
			talon[i] = i;
	}
	
	cardstatus[24] = -1;
	cardstatus[25] = -2;
	
	for( i = 0; i < document.images.length; i++ )
	{
		if( document.images[i].name == "img0" )
		{
			cardstart = i;
			break;
		}
	}		
	cardselected = false;
	cardidx = 0;
	
  InitCards();
	
	for( i = 0; i < cards; i++ )
	{
		cardvis[i] = false;
	}
	
	MixCards();	
}

function anleitung( page ) 
{
  window.open(page,"w1","screenX=0,screenY=0,toolbar=no,location=no,directories=no,scrollbars=yes,status=no,menubar=no,resizable=yes,width=350,height=500");
} 

function LichtSchatten()
{
	for( i = 0; i < cards; i++ )
	{
		if( cardvis[i] == false )
    {
      lsflag++;
      if( lsflag == 4 ) lsflag = 0;
      setTimeout( "LichtSchatten();", 100 );
      return;
    }
  }
}

function MixCards()
{
	var r1;
	var r2;
	
	if( cardselected ) 
  {
    setTimeout( "LichtSchatten();", 100 );
		return;
  }
	
	for( i = 0; i < 100; i++ )
	{
		r1 = Math.min( Math.round(Math.random() * 24), 23 );
		do
		{
			r2 = Math.min( Math.round(Math.random() * 24), 23 );
		}while( r1 == r2 );
		
		tmp = talon[r1];
		talon[r1] = talon[r2];
		talon[r2] = tmp;
	}
	
	setTimeout( "MixCards();", 100 );
}

function GetCard( nr )
{
	cardselected = true;
	if( cardidx < cards )
	{
		picture[cardidx] = talon[nr];		
		cardimg[cardidx].src = "img/kartenbck.jpg";

		s = "img/rune";
		preload[cardidx].src = s + picture[cardidx] + ".gif"

		cardidx++;		
		return true;
	}
  return false;
}

function OnSelectCard( nr )
{
	if( cardstatus[nr] > 0 )
		return;

	if( document.frage.frage.value.length < 10 )
	{
		alert( "Bitte stellen Sie zuerst eine Frage!" );
		document.frage.frage.focus();
		return;
	}
		
	if( nr == 0 )
	{
		if( !GetCard( nr ) ) return;		
		document.images[cardstart].src = "leer.gif";		
		cardstatus[nr] = 1;		
		if( cardstatus[nr+1] == -1 )
		{
			document.images[cardstart+1].src = "leer.gif";			
			cardstatus[nr+1] = 1;		
			if( cardstatus[nr+2] == -2 )
			{
				document.images[cardstart+2].src = "leer.gif";			
				cardstatus[nr+2] = 1;					
			}
		}
	}
	else
	{		
		if( cardstatus[nr] == 0 )
		{
			if( !GetCard( nr ) ) return;		
		
			if( cardstatus[nr-1] == 1 )
			{
				document.images[cardstart+nr].src = "leer.gif";			
				cardstatus[nr] = 1;		
			}
			else if( cardstatus[nr-1] == -1 )
			{
				document.images[cardstart+nr].src = "cardrght.gif";
				cardstatus[nr] = -2;					
			}			
			else if( cardstatus[nr-1] == -2 )
			{
				document.images[cardstart+nr].src = "leer.gif";
				cardstatus[nr] = 1;					
			}
			else
			{
				document.images[cardstart+nr].src = "cardmid.gif";
				cardstatus[nr] = -1;	
				if( cardstatus[nr+1] == -1 )
				{
					document.images[cardstart+nr+1].src = "cardrght.gif";
					cardstatus[nr+1] = -2;
					if( cardstatus[nr+2] == -2 )
					{
						document.images[cardstart+nr+2].src = "leer.gif";			
						cardstatus[nr+2] = 1;
					}
				}				
			}
		
			if( cardstatus[nr+1] == -1 )
			{
				document.images[cardstart+nr+1].src = "leer.gif";			
				cardstatus[nr+1] = 1;		
				if( cardstatus[nr+2] == -2 )
				{
					document.images[cardstart+nr+2].src = "leer.gif";			
					cardstatus[nr+2] = 1;
				}
			}
		}
		else if( cardstatus[nr] < 0 )
		{
			OnSelectCard( nr+cardstatus[nr] );					
		}		
	}
}

function quersumme( val )
{
	var result = 0;
	
	while( val >= 100 )
	{
		result++;
		val -= 100;
	}
	
	while( val >= 10 )
	{
		result++;
		val -= 10;
	}
	
	result += val;
	return result;	
}

function OnCardClick( nr )
{
	if( cardidx < cards )
	{
		alert( "Erst alle Karten ziehen!" );
		return;
	}
	
	if( cardvis[nr] == false )
	{
		cardimg[nr].src = preload[nr].src;
    if( document.frage.LS.value == 1 )     
    {
      if( lsflag == 1 )
        ls[nr].src = "schatten" + lsext;
      else
        ls[nr].src = "licht" + lsext;
      lsstat[nr] = lsflag;
    }
		cardvis[nr] = true;
	}
	else
	{
		if( cardimg[nr].complete == true )
		{
			cardimg[nr].src = preload[nr].src;
			s = "deutungen/" + carddesc[picture[nr]] + ".htm";
			var win = window.open( s, "window"+nr, "screenX=200,screenY=200,toolbar=no,location=no,directories=no,scrollbars=yes,status=no,menubar=no,resizable=yes,width=510,height=300" );
		}
	}
}

function Restart()
{
	window.location = window.location;
}

