//Screen Animation variables //moves:no. of moves to change screen 15
var Img,Img2,timer,timer2,afterAnim,afterAnim2,lastTop,lastLeft,lastLeft2,the_style,movLeft,animType,screenWidth=320,adsTimer,adsTimeSet=5,moves=10;
//Checkers Animation variables
var leftEnd,topEnd,movesChecker=15,Checkerobj,leftMov,topMov;
//Dice Animation variables
var DiceImg1,DiceImg2,leftMov1,leftMov2,topMov1,topMov2,leftEnd1,leftEnd2,topEnd1,topEnd2,movesDice=50,timerDice;
//Arrays & variables to store player positions
var p1,p2,p1pos,p2pos,pos,lefts,tops1,tops2,upper,lower,newpos,bearpos,bearLeft,bearTop,hitleftPos;
//Game variables
var plChance,movChecker,gameMode,dice1,dice2,selChecker,hit,hitPlayer,diceActive1,diceActive2,Player1,Player2,bearing,hitp1,hitp2,countHit1,countHit2,Clocktimer,Minutes,Seconds,score1,score2,gameEnd,pauseTime=1000;
//Variables for AI Player
var filesadded="";
//Variables for Cookies
var expDays = 30;
var exp = new Date(); 
exp.setTime(exp.getTime() + (expDays*24*60*60*1000));
function Shuffle(max){
var num=Math.random()*max;
return Math.round(num)+1;
}
function AnimateScreen()
{
	the_style=Img.style;
	the_style2=Img2.style;
	the_style.left = parseFloat(the_style.left) + movLeft;
	the_style2.left=parseFloat(the_style2.left) + movLeft;
  	if((parseInt(the_style.left)<=lastLeft&&animType==0)||(parseInt(the_style.left)>=lastLeft&&animType==1))
	{
		the_style.left=lastLeft; 
		the_style2.left=lastLeft2;
		clearInterval(timer);eval(afterAnim);
		return;
	}
}
function adsTime()
{
	document.getElementById("adstime").innerHTML=adsTimer;
	if(adsTimer==0)
	{
		clearInterval(timer2);
		fnStartInit();
		return;
	}
	adsTimer--;
}
function SkipAds()
{
	clearInterval(timer2);
	fnStartInit();
}
function startGame()
{
	container=document.getElementById("screen1");
	container.style.left="0px";
	lastLeft=-1*screenWidth;lastLeft2=lastLeft;
	Img=container; movLeft=-1*screenWidth/moves;
	Img2=document.getElementById("screen2");
	Img2.style.left="0px";
	afterAnim="";
	adsTimer=adsTimeSet-1;
	document.getElementById("returnToGame").style.visibility="hidden";
	//alert("wait");
	//positions of the checkers (0=dummy for tops)
	lefts=new Array(320,293,268,243,218,193,168,125,100,75,50,25,0);
	tops1=new Array(0,330,305,280,255,230,318,293,268,243);
	tops2=new Array(0,105,130,155,180,205,117,142,167,192);
	hitp1=new Array(0,0,0,0); countHit1=0;
	hitp2=new Array(0,0,0,0); countHit2=0;
	upper=105;
	lower=240;
	bearTop=220;
	hitleftPos=145;
	var i,j;
	for(i=0;i<5;i++)
	{
	}
	animType=0;
	timer=setInterval("AnimateScreen()",10);
}
function Instructions()
{
	alert("instructions");
}
function HighScore()
{
	alert("Coming Soon");
}
function SinglePlayer()
{
	Img=document.getElementById("screen2");
	Img2=document.getElementById("screen5");
	var temp=-1*screenWidth;
	var temp2=-3*screenWidth;
	Img.style.left=temp+"px";
	Img2.style.left=temp2+"px";
	movLeft=-1*screenWidth/moves;
	adsTimer=adsTimeSet-1;
	document.getElementById("adstime").innerHTML=adsTimer+1;
	afterAnim="timer2=setInterval('adsTime()',1000);";
	lastLeft=-2*screenWidth;
	lastLeft2=-4*screenWidth;
	document.getElementById("returnToGame").style.visibility="hidden";
	gameMode=1; //for single player game
	animType=0;
	Player1=GetCookie("Player1"+gameMode);
	Player2="iPhone";
	document.getElementById("name1").value=Player1;
	document.getElementById("name2").value=Player2;
	timer=setInterval("AnimateScreen()",10);
}
function TwoPlayer()
{
	Img=document.getElementById("screen2");
	Img2=document.getElementById("screen5");
	var temp=-1*screenWidth;
	var temp2=-3*screenWidth;
	Img.style.left=temp+"px";
	Img2.style.left=temp2+"px";
	movLeft=-1*screenWidth/moves;
	adsTimer=adsTimeSet-1;
	document.getElementById("adstime").innerHTML=adsTimer+1;
	afterAnim="timer2=setInterval('adsTime()',1000);";
	lastLeft=-2*screenWidth;
	lastLeft2=-4*screenWidth;
	document.getElementById("returnToGame").style.visibility="hidden";
	gameMode=0; //for 2 player game
	animType=0;
	document.getElementById("name1").value=GetCookie("Player1"+gameMode);
	document.getElementById("name2").value=GetCookie("Player2"+gameMode);
	document.getElementById("player2login").style.visibility="visible";
	document.getElementById("returnToGame").style.visibility="hidden";
	document.getElementById("loginBox").style.top="0";
	timer=setInterval("AnimateScreen()",10);
}
function GamePlay()
{
	//placing players 1 to 15 (0=dummy)
	p1=new Array(0,6,6,6,6,6,8,8,8,13,13,13,13,13,24,24);
	p2=new Array(0,19,19,19,19,19,17,17,17,12,12,12,12,12,1,1);
	p1pos=new Array(0,1,2,3,4,5,1,2,3,1,2,3,4,5,1,2);
	p2pos=new Array(0,1,2,3,4,5,1,2,3,1,2,3,4,5,1,2);
	//total checkers on specific triangle 1 to 24 (0= and 25= for bearing off)
	pos=new Array(4,2,0,0,0,0,5,0,3,0,0,0,5,5,0,0,0,3,0,5,0,0,0,0,2,4);
	//bearing intialised for both players
	bearing=new Array(0,0);
	Player1=document.getElementById("name1").value;
	if(Player1=="")
		Player1="Player1";
	document.getElementById("pl1").innerHTML=Player1;
	if(gameMode==1)
		Player2="iPhone";
	else
	{
		Player2=document.getElementById("name2").value;
		if(Player2=="")
			Player2="Player2";
	}
	if(document.getElementById("chkSaved").checked)
	{
		SetCookie("Player1"+gameMode, Player1, exp);
		SetCookie("Player2"+gameMode, Player2, exp);
	}
	else
	{
		DeleteCookie("Player1"+gameMode);
		DeleteCookie("Player2"+gameMode);
	}
	document.getElementById("pl2").innerHTML=Player2;
	Img=document.getElementById("screen3");
	Img2=document.getElementById("screen4");
	var i,oppPlayer,temp=-2*screenWidth;
	score1=167;
	score2=167;
	gameEnd=0;
	Img.style.left=temp+"px";
	Img2.style.left=temp+"px";
	movLeft=-1*screenWidth/moves;
	afterAnim="startMoves()";
	lastLeft=-3*screenWidth;lastLeft2=lastLeft;
	animType=0;plChance=1;
	oppPlayer=2;
	document.getElementById("p"+oppPlayer+"img").style.visibility="hidden";
	document.getElementById("pl"+oppPlayer).style.fontWeight="normal";
	for(i=1;i<=15;i++)
	{
		if(p1[i]<=12)
		{
			document.getElementById("p1"+i).style.left=lefts[p1[i]];
			document.getElementById("p1"+i).style.top=tops1[p1pos[i]];
		}
		else
		{
			document.getElementById("p1"+i).style.left=lefts[25-p1[i]];
			document.getElementById("p1"+i).style.top=tops2[p1pos[i]];
		}
		if(p2[i]<=12)
		{
			document.getElementById("p2"+i).style.left=lefts[p2[i]];
			document.getElementById("p2"+i).style.top=tops1[p2pos[i]];
		}
		else
		{
			document.getElementById("p2"+i).style.left=lefts[25-p2[i]];
			document.getElementById("p2"+i).style.top=tops2[p2pos[i]];
		}
	}
	Minutes=Seconds=0;
	document.getElementById("rollingstones").innerHTML="";
	clearInterval(Clocktimer);
	Clocktimer=setInterval("ShowClock()",1000);
	timer=setInterval("AnimateScreen()",10);
}
function ShowClock()
{
	var minuteText=Minutes,secondText=Seconds;
	if(Minutes<10)
		minuteText="0"+Minutes;
	if(Seconds<10)
		secondText="0"+Seconds;	
	document.getElementById("Timer").innerHTML="TIME: "+minuteText+":"+secondText;
	Seconds++;
	if(Seconds==60)
		{
			Minutes++;
			Seconds=0;
		}
}
function startMoves()
{
	document.getElementById("TXTBox").style.visibility="visible";
	document.getElementById("playerPos").style.visibility="visible";
	document.getElementById("p"+plChance+"img").style.visibility="visible";
	document.getElementById("pl"+plChance).style.fontWeight="bold";
	document.getElementById("RollDiceButton").style.visibility="visible";
	if(gameMode==0||plChance==1)
	{
		document.getElementById("TXTstatus").innerHTML=eval("Player"+plChance)+", Your Turn";
		document.getElementById("RollDiceButton").innerHTML="&nbsp;&nbsp;&nbsp;&nbsp;Roll Dice&nbsp;&nbsp;&nbsp;&nbsp;";
	}
	else
	{
		document.getElementById("TXTstatus").innerHTML="Press Finish Turn to Continue";
		document.getElementById("RollDiceButton").innerHTML="&nbsp;&nbsp;Finish Turn&nbsp;&nbsp;";
	}
	movChecker=0;hit=0;
}
function GoToMenu()
{
	document.getElementById("TXTBox").style.top="100";
	document.getElementById("TXTBox").style.height="50";
	Img=document.getElementById("screen4");
	Img2=document.getElementById("screen2");
	document.getElementById("playerPos").style.visibility="hidden";
	var temp=-3*screenWidth;
	Img.style.left=temp+"px";
	movLeft=screenWidth/moves;
	afterAnim="";
	lastLeft=-2*screenWidth;lastLeft2=parseInt(Img2.style.left)+screenWidth;
	animType=1;
	if(gameEnd==0)
		document.getElementById("returnToGame").style.visibility="visible";
	else
	{
		document.getElementById("returnToGame").style.visibility="hidden";
		document.getElementById("TXTBox").style.visibility="hidden";
	}
	timer=setInterval("AnimateScreen()",10);
}
function returnToGame()
{
	document.getElementById("TXTBox").style.top="100";
	document.getElementById("TXTBox").style.height="50";
	Img=document.getElementById("screen2");
	Img2=document.getElementById("screen4");
	document.getElementById("playerPos").style.visibility="visible";
	movLeft=-1*screenWidth/moves;
	afterAnim="";
	lastLeft=-2*screenWidth;lastLeft2=parseInt(Img2.style.left)-screenWidth;
	animType=0;
	document.getElementById("returnToGame").style.visibility="visible";
	timer=setInterval("AnimateScreen()",10);
}
function rollDice()
{
	document.getElementById("RollDiceButton").style.visibility="hidden";
	document.getElementById("rollingstones").innerHTML="<img src='images/DiceAnim2_2.gif' id='dice1' style='position:absolute;left:320px;top:200px;z-index:25;' /><img src='images/DiceAnim2_2.gif' id='dice2' style='position:absolute;left:320px;top:200px;z-index:25;' />";
	DiceImg1=document.getElementById("dice1");
	DiceImg2=document.getElementById("dice2");
	leftEnd1=50; topEnd1=250; leftEnd2=80; topEnd2=180;
	leftMov1=(leftEnd1-parseInt(DiceImg1.style.left))/movesDice;
	leftMov2=(leftEnd2-parseInt(DiceImg2.style.left))/movesDice;
	topMov1=(topEnd1-parseInt(DiceImg1.style.top))/movesDice;
	topMov2=(topEnd2-parseInt(DiceImg2.style.top))/movesDice;
	document.getElementById("TXTBox").style.visibility="hidden";
	timerDice=setInterval("AnimateDice()",10);
}
function AnimateDice()
{
	if(Math.abs(parseFloat(DiceImg1.style.left) - leftEnd1)<Math.abs(leftMov1))
	{
		DiceImg1.style.left=leftEnd1;
		DiceImg1.style.top=topEnd1;
		DiceImg2.style.left=leftEnd2;
		DiceImg2.style.top=topEnd2;
		clearInterval(timerDice);AfterDiceAnim();
		return;
	}
	DiceImg1.style.left = parseFloat(DiceImg1.style.left) + leftMov1;
	DiceImg1.style.top = parseFloat(DiceImg1.style.top) + topMov1;
	DiceImg2.style.left = parseFloat(DiceImg2.style.left) + leftMov2;
	DiceImg2.style.top = parseFloat(DiceImg2.style.top) + topMov2;
}
function AfterDiceAnim()
{
	dice1=Shuffle(5);
	dice2=Shuffle(5);
	document.getElementById("Dices").innerHTML="DICES :"+dice1+","+dice2;
	DiceImg1.src="images/dice"+dice1+".gif";
	DiceImg2.src="images/dice"+dice2+".gif";
	movChecker=1;
	diceActive1=diceActive2=1;
	//document.getElementById("submitTurn").style.visibility="visible";
	if(dice1==dice2)
		diceActive1=diceActive2=2;
	if(gameMode==0||plChance==1)
	{
		//document.getElementById("TXTstatus").innerHTML="Click on the play piece you wish to move";
		//document.getElementById("TXTBox").style.visibility="visible";
		setTimeout("removeBox()",pauseTime);
	}
	else
	{
		//document.getElementById("TXTstatus").innerHTML="Please wait while opponent is thinking";
		//document.getElementById("TXTBox").style.visibility="visible";
	}
	setTimeout("thinkBot()",10);
}
function selectChecker(pl,no)
{
	if((plChance==pl)&&(movChecker==1))
	{
		var i,j,maxPos,fail=0;
		document.getElementById("TXTBox").style.visibility="hidden";
		j=no;
		switch(pl)
		{
			case 1:
				if((countHit1>0)&&(p1[no]==50))
				{
					j=hitp1[countHit1-1];
					break;
				}
				else if(countHit1>0)
				{
					document.getElementById("TXTstatus").innerHTML="You cannot move that piece";
					document.getElementById("TXTBox").style.visibility="visible";
					fail=1;
					 setTimeout("removeBox()",pauseTime);
					break;
				}
				for(i=1;i<=15;i++)
				{
					if((p1pos[j]<p1pos[i])&&(p1[i]==p1[no]))
					{
						j=i;
					}
				}
				break;
			case 2:
				if((countHit2>0)&&(p2[no]==50))
				{
					j=hitp2[countHit2-1];
					break;
				}
				else if(countHit2>0)
				{
					document.getElementById("TXTstatus").innerHTML="You cannot move that piece";
					document.getElementById("TXTBox").style.visibility="visible";
					fail=1;
					 setTimeout("removeBox()",pauseTime);
					break;
				}
				for(i=1;i<=15;i++)
				{
					if((p2pos[j]<p2pos[i])&&(p2[i]==p2[no]))
					{
						j=i;
					}
				}
				break;
		}
		if(fail==0)
		{
			document.getElementById("p"+pl+""+j).className="selectedChecker";
			movChecker=2;
			selChecker=j;
			findMoves(pl,j);
		}
	}
	else
	{
		if(movChecker==2)
		{
			document.getElementById("TXTBox").style.visibility="hidden";
			var i,flag=0,temp=eval("p"+pl+"[no]");
			for(i=0;i<4;i++)
			{
				if(temp==newpos[i])
				{
					flag=1; break;
				}
			}
			if(flag==1)
			{
				moveHere(i);
				return;
			}
			else
			{
				if(eval("p"+pl+"[selChecker]==p"+pl+"[no]"))
					undoSelect();
				else
				{
					document.getElementById("TXTBox").style.visibility="visible";
					document.getElementById("TXTstatus").innerHTML="Invalid move";
					 setTimeout("removeBox()",pauseTime);
				}
			}
		}
		else if(movChecker!=0)
		{
			document.getElementById("TXTstatus").innerHTML="You cannot move Opponent's piece";
			document.getElementById("TXTBox").style.visibility="visible"; setTimeout("removeBox()",pauseTime);
		}
	}
}
function removeBox()
{
	document.getElementById("TXTBox").style.visibility="hidden";
}
function findMoves(pl,no)
{
	var curr,i,j,temp, srcText,temphigh,leftPos,topPos;
	newpos=new Array();
	bearpos=new Array(0,0,0,0);
	switch(pl)
	{
		case 1:
			curr=p1[no];
			i=0;
			while(i<4)
				newpos[i++]=-10; //for invalid move
			if(curr==50)
				curr=25;
			if(dice1==dice2)//double
			{
				for(i=1;i<=(diceActive1+diceActive2);i++)
				{
					if(movChk(pl,curr-(dice1*i)))
						newpos[3+i-(diceActive1+diceActive2)]=curr-(dice1*i);
					else
						break;
				}
				break;
			}
			if(movChk(pl,curr-dice1)&&diceActive1)
			{
				newpos[0]=curr-dice1;
				temp=newpos[0]-dice2;
				if(movChk(pl,temp)&&diceActive2)
					newpos[1]=temp;
			}
			if(movChk(pl,curr-dice2)&&diceActive2)
			{
				newpos[2]=curr-dice2;
				if(newpos[1]==-10)
				{
					temp=newpos[2]-dice1;
					if(movChk(pl,temp)&&diceActive1)
						newpos[3]=temp;
				}
			}
			break;
		case 2:
			curr=p2[no];
			i=0;
			while(i<4)
				newpos[i++]=-10;
			if(curr==50)
				curr=0;
			if(dice1==dice2)
			{
				for(i=1;i<=(diceActive1+diceActive2);i++)
				{
					if(movChk(pl,curr+(dice1*i)))
						newpos[3+i-(diceActive1+diceActive2)]=curr+(dice1*i);
					else
						break;
				}
				break;
			}
			if(movChk(pl,curr+dice1)&&diceActive1)
			{
				newpos[0]=curr+dice1;
				temp=newpos[0]+dice2;
				if(movChk(pl,temp)&&diceActive2)
					newpos[1]=temp;
			}
			if(movChk(pl,curr+dice2)&&diceActive2)
			{
				newpos[2]=curr+dice2;
				if(newpos[1]==-10)
				{
					temp=newpos[2]+dice1;
					if(movChk(pl,temp)&&diceActive1)
						newpos[3]=temp;
				}
			}
			break;
	}
	for(i=0;i<4;i++)
	{
		if(newpos[i]!=-10&&newpos[i]<1)
			newpos[i]=0;
		else if(newpos[i]>24&&newpos[i]!=50)
			newpos[i]=25;
	}
	temphigh="";
	for(i=0;i<4;i++)
	{
		if((newpos[i]>0)&&(newpos[i]<25))
		{
			if(newpos[i]%2==0)
				srcText="images/blackmoveto";
			else
				srcText="images/whitemoveto";
			if(newpos[i]<=12)
			{
				leftPos=lefts[newpos[i]];
				topPos=lower;
				srcText=srcText+"2.gif";
			}
			else
			{
				leftPos=lefts[25-newpos[i]];
				topPos=upper;
				srcText=srcText+"1.gif";
			}
			temphigh=temphigh+"<img src='"+srcText+"' id='tr"+i+"' onClick='moveHere("+i+")' style='position:absolute;left:"+leftPos+";top:"+topPos+"'/>";
		}
		else
		{
			if(newpos[i]!=-10)
			{
				temphigh=temphigh+"<a onClick='moveHere("+i+")' style='position:absolute;left:70;top:215;' class='RedButton'>&nbsp;&nbsp;Bear Off &gt;&gt;&nbsp;&nbsp;</a>";
			}
		}
	}
	if(temphigh==""&&(gameMode==0||plChance==1))
	{
		document.getElementById("TXTstatus").innerHTML="No Legal Move";
		document.getElementById("TXTBox").style.visibility="visible";
		setTimeout("undoSelect()",pauseTime-50);
		if(eval("countHit"+plChance)>0)
		{
			document.getElementById("p"+pl+""+no).className="checker";	
			setTimeout("nextPlayerMove()",pauseTime);
		}
		else
			setTimeout("removeBox()",pauseTime);
	}
	document.getElementById("highlightbg").innerHTML=temphigh;
	if(gameMode==0||plChance==1)
		document.getElementById("customButton").innerHTML="<a onClick='undoSelect()' class='RedButton'>&nbsp;Undo Select&nbsp;</a>";
}
function undoSelect()
{
	document.getElementById("highlightbg").innerHTML="";
	document.getElementById("TXTBox").style.visibility="hidden";
	document.getElementById("p"+plChance+""+selChecker).className="checker";
	movChecker=1;
	//document.getElementById("submitTurn").style.visibility="visible";
	document.getElementById("customButton").innerHTML="<a onClick='GoToMenu()' class='RedButton'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Menu&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>";
}
function movChk(pl,mov)
{
	if(bearing[pl-1]==1&&(mov==0||mov==25))
		return 1;
	var i,oppPlayer;
	if((mov<0)&&(bearing[0]==1))
	{
		for(i=1;i<=15;i++)
		{
			if(p1[i]>p1[selChecker])
				return 0;
		}
		if((p1[selChecker]-mov)==(dice1+dice2))
			return 0;
		else
			return 1;
	}
	if((mov>25)&&(bearing[1]==1))
	{
		for(i=1;i<=15;i++)
		{
			if(p2[i]<p2[selChecker])
				return 0;
		}
		if((mov-p2[selChecker])==(dice1+dice2))
			return 0;
		else
			return 1;
	}
	if(mov<1||mov>24)
		return 0;
	oppPlayer=(plChance%2)+1;
	for(i=1;i<=15;i++)
	{
		if(eval("(p"+oppPlayer+"pos[i]>1)&&(p"+oppPlayer+"[i]==mov)"))
			return 0;
	}
	return 1;
}
function moveHere(j)
{
	var i,flag=0,oppPlayer,movtop;
	oppPlayer=(plChance%2)+1;
	document.getElementById("TXTBox").style.visibility="hidden";
	Checkobj=document.getElementById("p"+plChance+""+selChecker);
	document.getElementById("customButton").innerHTML="<a onClick='GoToMenu()' class='RedButton'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Menu&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>";
	movtop=pos[newpos[j]]+1;
	if((movtop==2)||(j%2==1)||dice1==dice2)//chance of a hit
	{
		switch(plChance)
		{
			case 1:
				for(i=1;i<=15;i++)
				{
					if(p2[i]==newpos[j]||(j%2==1&&(p2[i]==newpos[2]||p2[i]==newpos[0])))//detected hitting
						{
							flag=1; break;
						}
				}
				if(flag==1)
				{
					hit=i; hitPlayer=2;
					hitp2[countHit2]=i;
					countHit2++; movtop=1;
				}
				break;
			case 2:
				for(i=1;i<=15;i++)
				{
					if(p1[i]==newpos[j]||(j%2==1&&(p1[i]==newpos[2]||p1[i]==newpos[0])))//detected hitting
						{
							flag=1; break;
						}
				}
				if(flag==1)
				{
					hit=i; hitPlayer=1;
					hitp1[countHit1]=i;
					countHit1++; movtop=1;
				}
				break;
		}
	}
	if(newpos[j]>12)
		{
			topEnd=tops2[movtop];
			leftEnd=lefts[25-newpos[j]];
		}
	else
		{
			topEnd=tops1[movtop];
			leftEnd=lefts[newpos[j]];
		}
	if(newpos[j]!=50)
		Checkobj.style.zIndex=9;
	leftMov=(leftEnd-parseInt(Checkobj.style.left))/movesChecker;
	topMov=(topEnd-parseInt(Checkobj.style.top))/movesChecker;
	afterAnim="movDone("+j+")";
	if(hit==0||newpos[j]!=eval("p"+hitPlayer+"[hit]"))
		pos[newpos[j]]++;
	if((newpos[j]<1||newpos[j]>24)&&hit==0)
		pos[newpos[j]]--;
	if(eval("countHit"+plChance)==0)
	{
		temp=eval("p"+plChance+"["+selChecker+"]");
		pos[temp]--;
	}
	else
	{
		eval();
		eval("hitp"+plChance+"[--countHit"+plChance+"]=0");
	}
	switch(plChance)
	{
		case 1: if(p1[selChecker]!=50)
				   score1-=(p1[selChecker]-newpos[j]);
				  else
				  	score1-=(25-newpos[j]);
				break;
		case 2: if(p2[selChecker]!=50)
				   score2-=(newpos[j]-p2[selChecker]);
				  else
				  	score2-=newpos[j];
				break;
	}
	eval("p"+plChance+"["+selChecker+"]=newpos[j]");
	eval("p"+plChance+"pos["+selChecker+"]=pos[newpos[j]]");
	timer=setInterval("AnimateChecker()",10);
}
function AnimateChecker()
{
	the_style=Checkobj.style;
	if((Math.abs(parseFloat(the_style.left) - leftEnd)<Math.abs(leftMov))||(Math.abs(parseFloat(the_style.top) - topEnd)<Math.abs(topMov)))
	{
		the_style.left=leftEnd; 
		the_style.top=topEnd;
		clearInterval(timer);eval(afterAnim);
		return;
	}
	the_style.left = parseFloat(the_style.left) + leftMov;
	the_style.top = parseFloat(the_style.top) + topMov;
}
function movDone(j)
{
	var i,count=0;
	Checkobj.className="checker";
	document.getElementById("highlightbg").innerHTML="";
	document.getElementById("score1").innerHTML=score1;
	document.getElementById("score2").innerHTML=score2;
	if(hit!=0)//handle hitting
	{
		leftEnd=hitleftPos;
		Checkobj=document.getElementById("p"+hitPlayer+""+hit);
		Checkobj.style.zIndex=20;
		topEnd=eval("tops"+plChance+"[6-countHit"+hitPlayer+"]");
		leftMov=(leftEnd-parseInt(Checkobj.style.left))/movesChecker;
		topMov=(topEnd-parseInt(Checkobj.style.top))/movesChecker;
		afterAnim="movDone("+j+")";
		if(newpos[j]!=eval("p"+hitPlayer+"[hit]"))
		pos[eval("p"+hitPlayer+"[hit]")]--;
		switch(hitPlayer)
		{
			case 1:score1+=(25-p1[hit]);
					break;
			case 2:score2+=p2[hit];
					break;
		}
		eval("p"+hitPlayer+"["+hit+"]=50");
		eval("p"+hitPlayer+"pos["+hit+"]=6-countHit"+hitPlayer);
		hit=0;
		timer=setInterval("AnimateChecker()",10);
		return;
	}
	var flag1=0,flag2=0;
	switch(plChance)//check bearing and end of game
	{
		case 1:	for(i=1;i<=15;i++)
				{
					if(p1[i]>6)
						flag1=1;
					if(p1[i]!=0)
						flag2=1;
				}
				break;
		case 2:	for(i=1;i<=15;i++)
				{
					if(p2[i]<19)
						flag1=1;
					if(p2[i]!=25)
						flag2=1;
				}
				break;
	}
	if(flag1==0)
		bearing[plChance-1]=1;
	if(flag2==0)
	{
		endGame();
		return;
	}		
	if(dice1==dice2)
	{
		switch(j)
		{
			case 3:diceBlur(2);
			case 2:diceBlur(2);
			case 1:diceBlur(1);
			case 0:diceBlur(1);
				   break;
		}
	}
	else
	{
		if(j%2==1)
		{
			diceBlur(1);
			diceBlur(2);
		}
		else
		{
			diceBlur(Math.floor(j/2)+1);
		}
	}
	if(diceActive1||diceActive2)
	{
		movChecker=1;
		//document.getElementById("submitTurn").style.visibility="visible";
		//if(gameMode==1&&plChance==2)
			thinkBot();
		return;
	}
	else
	{
		nextPlayerMove();
	}
}
function diceBlur(diceno)
{
	if(eval("diceActive"+diceno+">0"))
		eval("diceActive"+diceno+"--");
	if(eval("diceActive"+diceno+"==0"))
		document.getElementById("dice"+diceno).className="blurredDice";
}
function nextPlayerMove()
{
	document.getElementById("p"+plChance+"img").style.visibility="hidden";
	document.getElementById("pl"+plChance).style.fontWeight="normal";
	plChance=(plChance%2)+1;
	document.getElementById("Dices").innerHTML="DICES :";
	startMoves();
}
function endGame()
{
	var temp,oppChance=(plChance%2)+1;
	temp=eval("Player"+plChance)+", Score:"+eval("score"+oppChance);
	document.getElementById("TXTstatus").innerHTML="Game Over<br/>Winner:"+temp+"<br/><a class='RedButton' style='position:relative;top:20;' href=''>&nbsp;High Scores</a><br/><a class='RedButton' style='position:relative;top:40;' href=''>&nbsp;More Games</a><br/><a onClick='GoToMenu()' class='RedButton' style='position:relative;top:60;'>&nbsp;&nbsp;Play Again&nbsp;&nbsp;</a>";
	document.getElementById("TXTBox").style.visibility="visible";
	document.getElementById("TXTBox").style.top="50";
	document.getElementById("TXTBox").style.height="155";
	document.getElementById("TXTBox").style.zIndex=50;
	gameEnd=1;
}
function SetCookie (name, value) {  
var argv = SetCookie.arguments;  
var argc = SetCookie.arguments.length;  
var expires = (argc > 2) ? argv[2] : null;  
var path = (argc > 3) ? argv[3] : null;  
var domain = (argc > 4) ? argv[4] : null;  
var secure = (argc > 5) ? argv[5] : false;  
document.cookie = name + "=" + escape (value) + 
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + 
((path == null) ? "" : ("; path=" + path)) +  
((domain == null) ? "" : ("; domain=" + domain)) +    
((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
var exp = new Date();  
exp.setTime (exp.getTime() - 1);  
var cval = GetCookie (name);  
document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
function getCookieVal (offset) {  
var endstr = document.cookie.indexOf (";", offset);  
if (endstr == -1)    
endstr = document.cookie.length;  
return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) {  
var arg = name + "=";  
var alen = arg.length;  
var clen = document.cookie.length;  
var i = 0;  
while (i < clen) {    
var j = i + alen;    
if (document.cookie.substring(i, j) == arg)      
return getCookieVal (j);    
i = document.cookie.indexOf(" ", i) + 1;    
if (i == 0) break;   
}  
return unescape("");
}

//AI part of game
var noMoves,tempCount;
function fnStartInit()
{
	Img=document.getElementById("screen5");
	Img2=document.getElementById("screen3");
	var temp=-4*screenWidth;
	var temp2=-1*screenWidth;
	Img.style.left=temp+"px";
	Img2.style.left=temp2+"px";
	movLeft=-1*screenWidth/moves;
	afterAnim="";
	lastLeft=-5*screenWidth;
	lastLeft2=-2*screenWidth;
	animType=0;
	if(gameMode==1)
	{
		document.getElementById("player2login").style.visibility="hidden";
		document.getElementById("loginBox").style.top="-40";
	}
	timer=setInterval("AnimateScreen()",10);
}
function thinkBot()
{
	var i,temp,flag=0;
	noMoves=new Array();
	tempCount=0;
	if(eval("countHit"+plChance)>0)
	{
		temp=eval("hitp"+plChance+"[countHit"+plChance+"-1]");;
		selectChecker(plChance,temp);
		for(i=0;i<4;i++)
		{
			if(newpos[i]!=-10)
			{
				flag=1;
				break;
			}
		}
		if(flag==0)// No legal moves exist
		{
			document.getElementById("TXTstatus").innerHTML="No legal move exist";
			document.getElementById("TXTBox").style.visibility="visible";
			setTimeout("undoSelect()",pauseTime-50);
			setTimeout("nextPlayerMove()",pauseTime);
			return;
		}
	}
	else
	{
		while(flag==0)
		{
			temp=getValidChecker();
			if(temp==16)
			{
				document.getElementById("TXTstatus").innerHTML="No legal move exist";
				document.getElementById("TXTBox").style.visibility="visible";
				setTimeout("nextPlayerMove()",pauseTime);
				return;
			}
			//alert("chk2"+temp);
			selectChecker(plChance,temp);
			for(i=0;i<4;i++)
			{
				if(newpos[i]!=-10)
				{
					flag=1;
					break;
				}
			}
			//alert("chk3");
			if(flag==0)// No legal moves exist
			{
				undoSelect();
				noMoves.push(temp);
			}
		}
	}
	if(gameMode==1&&plChance==2)
		moveHere(i);
	else
		undoSelect();
}
function getValidChecker()
{
	var i,j,flag=0,temp=1;
	while(flag==0)
	{
		flag=1;
		if(eval("p"+plChance+"[temp]<1||p"+plChance+"[temp]>24"))
			flag=0;
		else
		{
			for(j=0;j<noMoves.length;j++)
			{
				if(temp==noMoves[j])
				{
					flag=0;
					break;
				}
			}
		}
		if(flag==0)
			temp++;
		if(temp==16)
			return temp; //No legal moves
	}
	//alert("chk1");
	if(gameMode==0||plChance==1)
		return temp;
	for(i=temp+1;i<=15;i++)
	{
		flag=0;
		for(j=0;j<noMoves.length;j++)
		{
			if(i==noMoves[j])
			{
				flag=1;
				break;
			}
		}
		if(eval("p"+plChance+"[i]<p"+plChance+"[temp]&&p"+plChance+"[i]>0&&p"+plChance+"[i]<25&&flag==0"))
			temp=i;
	}
	return temp;
}
