All pastes #796686 Raw Edit

Untitled

public text v1 · immutable
#796686 ·published 2007-11-25 08:45 UTC
rendered paste body
<?xml version="1.0" encoding="utf-8"?>
<html xmlns = "http://www.w3.org/1999/xhtml">
	<head>
		<title>ISM002 Lab10</title>
		<style type="text/css">
			span  { font-size: 3em;
				font-weight: bold;
				font-family: Helvetica, Arial, sans-serif;
				color: blue }
		</style>

		<script type="text/javascript">
			<!--
			var rowsize=5, colsize=5;
			var cells;
			var count=0;
			var gamestatus=0; //0=continue, 1=human won, 2=computer won, 3=drawgame

			//initialize ALL the parameters
			function startgame(){
				clearboard();
				count=0;
				gamestatus=0;
				if (document.setting.whofirst[1].checked==true)
					computerplay();
			}

function setup(){
	cells = new Array( 
			new Array(cell00,cell01,cell02,cell03,cell04),
			new Array(cell10,cell11,cell12,cell13,cell14),
			new Array(cell20,cell21,cell22,cell23,cell24),
			new Array(cell30,cell31,cell32,cell33,cell34),
			new Array(cell40,cell41,cell42,cell43,cell44));
	clearboard();
	document.onclick = processClick;  
}

function clearboard(){
	for(var i=0;i<rowsize;i++)
		for(var j=0;j<colsize;j++)
			cells[i][j].innerText="-";	
}

	function processClick(){
		if (gamestatus!=0)
			window.alert("Game Over!");
		else {
			for(var i=0;i<rowsize;i++)
				for(var j=0;j<colsize;j++){
					if ((cells[i][j].id==window.event.srcElement.id)&&(cells[i][j].innerText=="-")) {
						cells[i][j].innerText="X";
						count++;
						gamestatus=checkwin(i,j);
						if (gamestatus==0)
							computerplay();
						if (gamestatus==1)
							window.alert("You Win");
						if(gamestatus==2)
							window.alert("computer win");
						if(gamestatus==3)
							window.alert("draw game");

					}
				}
		}
		//		window.alert("window.event.srcElement.id="+window.event.srcElement.id +"\n"+"cells[0][0].id="+cells[0][0].id );
	}

//return 0 for continue
//return 1 if human win
//return 2 if computer win
//return 3 if draw game
function checkwin(x,y){

	//human diagonally win

	var win=0, lose=0;
	for(var i=0;i<rowsize;i++){
		var j =0;
		//window.alert(cells[i][y+j].innerText);
		if(cells[i][y+j].innerText=="X"){
			win++;

			//window.alert(win);
			if(win==4)
			{
				return 1;
			}

		}else win =0;
		//if x=0 && you win
		if(cells[i][y+j].innerText=="O"){
			lose++;
			if(lose==4)
			{return 2;}

		}else lose=0;//if 

	}//for rowsize roop 
	win =0;
	win2=0;
	lose=0;
	i=0;
	j=0;

	for(var j=0;j<colsize;j++)
	{

		if(x+j>=0 && x+j<colsize && y+j>=0 && y+j<rowsize ){
			if(cells[x+j][y+j].innerText=="X"){
				win2++;
				if(win2==4)
				{return 1}
			}else win2=0;
		}



		if(cells[i+x][j].innerText=="X"){
			win++;
			if(win==4)
			{return 1}

		}else win =0;
		if(cells[i+x][j].innerText=="O"){
			lose++;
			if(lose==4)
			{return 2}
		}else lose=0;

	}

	var v; 
	v=x+5-y;
	var r;
	r=x+5+y;
	var a;
	a=x;
	var b;
	b=y;
	if(v==5){
		a=0;
		b=0;
	}
	if(v==4){
		a=0;
		b=1;
	}
	if(v==6){
		a=1;
		b=0;
	}
	if(r==8){
	a=0;
	b=3;
	}

	for(a;a<colsize;a++)
	{			
		for(b;b<rowsize;b++)
		{

			if(cells[a][b].innerText=="X"){
				win++;
					if(win==4)
					{return 1;}
			}else win=0;
		}
	}


	var count= 0
		for(var j=0;j<colsize;j++)
			for(var i=0;i<rowsize;i++){
				if(cells[i][j].innerText!="-")
				{
					count++;
					if (count ==25)
						return 3;
				}
			}


	return 0;
}

function computerplay(){
	var k=Math.floor(1+Math.random()*(rowsize*colsize-count));
	for (var row=0;row<rowsize;row++)
		for (var col=0;col<colsize;col++){
			if (cells[row][col].innerText=="-"){
				if (--k==0) {
					i=row;
					j=col;
				}
			}
		}
	cells[i][j].innerText="O";
	count++;
	gamestatus=checkwin(i,j);
}
// -->
</script>
	 </head>

	 <body onload="setup()">
		 <h2>ISM002 Lab10</h2>
		 <form name="setting">
			 <table border="1">
				 <tr>
					 <td><label><input type="radio" name="whofirst" value="1" checked/>Human First</label></td>
					 <td><input type=button value="Start" onclick="startgame()"/></td>
				 </tr>
				 <tr>
					 <td><label><input type="radio" name="whofirst" value="0"/>Computer First</label></td>
				 </tr>
			 </table>
		 </form>

		 <table border="1">
			 <colgroup><col span="5" width="50" align="center" valign="middle" /></colgroup>	
			 <tr>
				 <td><span id = "cell00"></span></td>
				 <td><span id = "cell01"></span></td>
				 <td><span id = "cell02"></span></td>
				 <td><span id = "cell03"></span></td>
				 <td><span id = "cell04"></span></td>
			 </tr>
			 <tr>
				 <td><span id = "cell10"></span></td>
				 <td><span id = "cell11"></span></td>
				 <td><span id = "cell12"></span></td>
				 <td><span id = "cell13"></span></td>
				 <td><span id = "cell14"></span></td>
			 </tr>
			 <tr>
				 <td><span id = "cell20"></span></td>
				 <td><span id = "cell21"></span></td>
				 <td><span id = "cell22"></span></td>
				 <td><span id = "cell23"></span></td>
				 <td><span id = "cell24"></span></td>
			 </tr>
			 <tr>
				 <td><span id = "cell30"></span></td>
				 <td><span id = "cell31"></span></td>
				 <td><span id = "cell32"></span></td>
				 <td><span id = "cell33"></span></td>
				 <td><span id = "cell34"></span></td>
			 </tr>
			 <tr>
				 <td><span id = "cell40"></span></td>
				 <td><span id = "cell41"></span></td>
				 <td><span id = "cell42"></span></td>
				 <td><span id = "cell43"></span></td>
				 <td><span id = "cell44"></span></td>
			 </tr>
		 </table>
	 </body>
 </html>