<!--
var ballObj = null;
var pinArr = new Array(3);
var inMove = true;
var ballPos = [[0,0], [0,162], [0,108]];
var hitArr = new Array();var hitPos = new Array(2);
var pinCount = 0;var who = 0;

	    
function initScr(x)
{
    pinCount = 0;
    inMove = false;
    who = x;
	var idx = 1;
	var str = '';
	
	for (var k = 1; k <= 3; k++)
	{
	    pinArr[k-1] = new Array(7);
	    str += '<div id="pinstand_' + k + '">';
	    for (var m = 0; m < 7; m++)
	    {
	        str += '<div id="p_' + idx + '" class="pin_f"></div>';pinArr[k-1][m]=1;idx++;
	    }
	    str += '</div>';
	}
	
	var o = document.getElementById("pins21brd"); if (o != null) {o.innerHTML = str;}	
	if (who == 0) {computerTurn();}
	updateTurn();
}

function updateTurn()
{
    var t = "&nbsp;Computer";
    if (who == 1) {t = "&nbsp;Your turn";}
    var o = document.getElementById("whoid"); if (o != null) {o.innerHTML = t;}
}

function computerTurn()
{
    if (pinCount >= 21) {return;}
    var x = 3 - pinCount%3;
    if (x == 3) {x = getrand(1,2);}
    hitBall(x);
}

function getPinsToHit(n)
{
    while(hitArr.length > 0) {hitArr.pop();}
    var r1 = 2; var r2 = 2;var c1 = 7; var c2 = -1;
    var cnt = 0;
    for (var r = 2; r >= 0; r--)
    {
		for (var c = 0; c < 7; c++) 
		{
			if (pinArr[r][c] == 1) 
			{
				cnt++;
				if (c1 > c) {c1=c;r1=r;if (n == 2 && pinArr[r][c+1] == 0) {c1= 7;}}
				if (c2 < c) {c2=c;r2=r;if (n == 2 && pinArr[r][c-1] == 0) {c2=-1;}}
			}
		}
    }
    if (cnt == 0) {return hitArr;}
    else if (c1 == 7 && c2 == -1)
    {
        for (var r = 0; r < 3; r++)
        {
            for (var c = 0; c < 7; c++)
            {
                if (pinArr[r][c] == 1) {hitArr.push([r,c]);}
                if (hitArr.length == 2) {break;}
            }
        }
    }    
    else
    {
        var min = 0; var max = 1;
        if (c1 == 7)  {min = 1;}
        if (c2 == -1) {max = 0;}
        var rnd = getrand(min,max);
        if (rnd == 0) {hitArr.push([r1,c1]); if (n == 2) {hitArr.push([r1,c1+1]);}}
        else {hitArr.push([r2,c2]); if (n == 2) {hitArr.push([r2,c2-1]);}}
    }
    
    return hitArr;
}

function getrand(min, max)
{
    return min + Math.floor(Math.random()*(max-min+1))
}


function getHitPos(arr)
{
    if (arr.length < 1) {return hitPos;}
    
    var r = arr[0][0];
    var c = arr[0][1];
    var x = (r == 1 ? 0 : 20) + c*40; var y = -260 + r *20;
    if (arr.length > 1) 
    {
        r = arr[1][0];c = arr[1][1];
        x += (r == 1 ? 0 : 20) + c*40; y += -260 + r *20;
        x = Math.floor(x/2);y = Math.floor(y/2);
    }
    
    hitPos[0] = x; hitPos[1] = y;
    
    return hitPos;
}

function hitBall(n)
{
    if (inMove) {return;}
    inMove = true;
    pinCount += n;
    ballObj = document.getElementById("ball_" + n);
    ballObj.style.top = ballPos[n][0] + 'px';
    ballObj.style.left = ballPos[n][1] + 'px';
    hitArr = getPinsToHit(n);
    hitPos = getHitPos(hitArr);
    moveBall(n);
}

function submitfrm()
{
	var f = document.getElementById("pins21brd");
	if (f != null) 
	{
		var str = ""; 
		if (who == 1) {str = "Congratulations!!<br/>";}
		else  {str = "Sorry! You lost.<br/>";}
		f.innerHTML = "";
		var o = f.appendChild(document.createElement('div'));
		o.innerHTML='<input type="hidden" name="helppage" value="pins21help.html" />';
		var o = f.appendChild(document.createElement('div'));
		o.innerHTML='<input type="hidden" name="gamepage" value="pins21.html" />';
		o = f.appendChild(document.createElement('div'));
		o.innerHTML='<input type="hidden" name="msg" value="' + str + '" />';
	}

	document.pins21_frm.submit();
}


function hidePins(n)
{
    for (var k = 0; k < hitArr.length; k++)
    {
		var id = hitArr[k][0]*7 + hitArr[k][1]+1;
		var o = document.getElementById("p_"+id); if (o != null) {o.className="pin_e";pinArr[hitArr[k][0]][hitArr[k][1]]=0;}
    }
    resetBall(n);
}



function isGameOver()
{
    return pinCount >= 21;
}

function endMove(n)
{
    showJumpPins(n);    
}

function resetBall(n)
{
	var xpos = ballPos[n][1];
	var ypos = ballPos[n][0];
	
	var x = parseInt(ballObj.style.left);
	var y = parseInt(ballObj.style.top);
	var off_x = xpos - x; if (Math.abs(off_x)/10 > 1) {off_x = off_x/10;}
	var off_y = ypos - y; if (Math.abs(off_y)/10 > 1) {off_y = off_y/10;}
	x += off_x; y += off_y;
	ballObj.style.left = x + 'px';ballObj.style.top = y + 'px';
	if ((x != xpos) || (y != ypos)) {setTimeout("resetBall(" + n + ")", 10);}
	else 
	{
		if (isGameOver()) 
		{
			var str = ""; str += ('<div style="float:right;"><div class="btntxt">Game over:&nbsp;&nbsp;</div><div id="lbtn"></div><div id="mbtn" onClick="submitfrm();">OK</div><div id="rbtn"></div></div>');
			var o = document.getElementById("btnbrd"); if (o != null) {o.innerHTML = str;}
		}
		else {inMove = false; who ^= 1;updateTurn();if (who == 0) {computerTurn();}}
	}
}

function moveBall(n)
{
	var xpos = hitPos[0];
	var ypos = hitPos[1];
	
	var x = parseInt(ballObj.style.left);
	var y = parseInt(ballObj.style.top);
	var off_x = xpos - x; if (Math.abs(off_x)/10 > 1) {off_x = off_x/10;}
	var off_y = ypos - y; if (Math.abs(off_y)/10 > 1) {off_y = off_y/10;}
	x += off_x; y += off_y;
	ballObj.style.left = x + 'px';ballObj.style.top = y + 'px';
	if ((x != xpos) || (y != ypos)) {setTimeout("moveBall(" + n + ")", 10);}
	else {endMove(n);}
}

function showJumpPins(n)
{
    for (var k = 0; k < hitArr.length; k++)
    {
		var id = hitArr[k][0]*7 + hitArr[k][1]+1;
		var o = document.getElementById("p_"+id); if (o != null) {o.style.webkitTransform = "translate(0,20px)";o.style.webkitTransform = "rotate(90deg)";}
    }
    setTimeout("hidePins("+n+")",100);
}


-->


