结对-结对编程项目作业名称-结对项目总结

这个学期的软件工程的结对是做一个项目,因为自己对于其他编程语言对h5稍稍有些自信,所以选择了五子棋游戏来开发,经历了有欢笑又谜团,这个“”简易“”(对我和金鹏而言并不简单)的五子棋终于开发完成。

开发过程中,居然其他颜色的棋子能覆盖上!!!这个就想了一周。由于我自己的能力有限,反复翻了很多网页去学习,所以我和金鹏去求一些贴吧大佬,菜鸟教程,和一些大佬博客网站,加上一些大佬的指点,终于开发成了这个属于自己的“五子棋”(ps:后续我会把这个放在我自己的网站上 pps:自己画画能力有限,就到博客拽了两张棋子),也感谢大伟老师对我的教育。

 

 

画棋盘:function drawRect() {
canvas = document.getElementById("canvas");
context = canvas.getContext("2d");

for (var i = 0; i <= 640; i += 40) {
context.beginPath();
context.moveTo(0, i);
context.lineTo(640, i);
context.closePath();
context.stroke();

context.beginPath();
context.moveTo(i, 0);
context.lineTo(i, 640);
context.closePath();
context.stroke();
}

 

 

 

事件:function play(e) {
var x = parseInt((e.clientX - 20) / 40);
var y = parseInt((e.clientY - 20) / 40);

if (chessData[x][y] != 0) {//判断该位置是否被下过了
alert("这个位置已经有其他棋子了");
return;
}

if (isWhite) {
isWhite = false;
drawChess(1, x, y);
}
else {
isWhite = true;
drawChess(2, x, y);
}

}

 

 

 

判断输赢function judge(x, y, chess) {
var count1 = 0;
var count2 = 0;
var count3 = 0;
var count4 = 0;


for (var i = x; i >= 0; i--) {
if (chessData[i][y] != chess) {
break;
}
count1++;
}
for (var i = x + 1; i < 15; i++) {
if (chessData[i][y] != chess) {
break;
}
count1++;
}

for (var i = y; i >= 0; i--) {
if (chessData[x][i] != chess) {
break;
}
count2++;
}
for (var i = y + 1; i < 15; i++) {
if (chessData[x][i] != chess) {
break;
}
count2++;
}

for (var i = x, j = y; i >= 0, j >= 0; i--, j--) {
if (chessData[i][j] != chess) {
break;
}
count3++;
}
for (var i = x + 1, j = y + 1; i < 15, j < 15; i++, j++) {
if (chessData[i][j] != chess) {
break;
}
count3++;
}

for (var i = x, j = y; i >= 0, j < 15; i--, j++) {
if (chessData[i][j] != chess) {
break;
}
count4++;
}
for (var i = x + 1, j = y - 1; i < 15, j >= 0; i++, j--) {
if (chessData[i][j] != chess) {
break;
}
count4++;
}

if (count1 >= 5 || count2 >= 5 || count3 >= 5 || count4 >= 5) {
if (chess == 1) {
alert("白棋赢了");
}
else {
alert("黑棋赢了");
}
isWell = true;//胜利
}
}

 

posted @ 2017-11-02 20:38  Ext4  阅读(145)  评论(0编辑  收藏  举报