,,JavaScript实现网页版五子棋游戏

,,JavaScript实现网页版五子棋游戏

这篇文章主要为大家详细介绍了JavaScript(JavaScript)实现网页版五子棋游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了JavaScript(JavaScript)实现网页版五子棋游戏的具体代码,供大家参考,具体内容如下

学习联署材料的第三天,跟着老师完成的五子棋小游戏,记录学习成果欢迎大佬们一起分享经验,批评指正。

本程序主要通过三部分实现:

1.棋盘绘制

2.鼠标交互

3.输赢判断

!文档类型html

超文本标记语言格式

头儿

标题(标题)

坎瓦斯测试

/标题

/头

体表

氕加农炮/h1

画布id=' canvas '宽度=' 400 '高度=' 400 '

/画布

src=' 339 cdn。net/Ajax/libs/jquery/3。6 .0/jquery。js '/脚本脚本

脚本编写

var canv=文档。getelement byid(' canvas ');

var CTX=canv。获取上下文(“2d”);

CTX。strokesstyle=' black

var bow=0

//画出棋盘;

风险值矩阵=[

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],

];

ctx.beginPath():

S7-1200可编程控制器:i19>

ctx。移动(10 20*i,10);

CTX。line to(10i * 20.370);

ctx。已移动(10.20 * i10);

ctx.lineTo(370、I * 20 10);

}

CTX。笔画();

//鼠标交互;

$(# canvas).点击(函数事件)

{

console.log(event.offsetX)

console.log(bow):

var arcposx,arcposy

var mtxPosX、mtxposy

for(var x=0):x19;(十)

{

如果((数学。ABS(事件。offsetx-(10x * 20)))10)

{

弧x=10 x 20

mtxposx=x

}

如果((数学。ABS(事件。偏移量-(10x * 20)))10)

{

弧=10 x 20

mtxposy=x

}

}

如果(矩阵[mtxPosX][mtxPosY]==0)

{

bow=!弓;弓;

ctx.beginPath():

如果(鞠躬)>

ctx。fillstyle=' black

ctx.arc(反正切、反正切、10.0、数学)。PI*2,假

矩阵[MTX posx][MTX posy]=1;

}

其他

ctx。fillstyle=' white

ctx.arc(反正切、反正切、10.0、数学)。PI*2,假

CTX。笔画();

矩阵[MTX posx][MTX posy]=2;

}

ctx.fill():

}

//实现输赢判断

var winFlag=0:

if(winflag==0)}

如果(矩阵[mtxPosX-1][mtxPosY]==矩阵[mtxPosX][mtxPosY])

{

如果(矩阵[mtxPosX-2][mtxPosY]==矩阵[mtxPosX][mtxPosY])

{

如果(矩阵[mtxPosX-3][mtxPosY]==矩阵[mtxPosX][mtxPosY])

{

如果(矩阵[mtxPosX-4][mtxPosY]==矩阵[mtxPosX][mtxPosY])

{

winflag=1;

}

其他语句

{

如果(矩阵[mtxPosX 1][mtxPosY]==矩阵[mtxPosX][mtxPosY])

{

winflag=1;

}

其他语句

{

winflag=0;

}

}

}

其他语句

{

对于(var w=0);w2;(w)

{

如果(矩阵[mtxPosX w 1][mtxPosY]!=矩阵[mtxPosX][mtxPosY]

{

winflag=0;

打断;打断;

}

其他

{

winFlag=1;

}

}

}

}

其他

{

for(var w=0;w3;w)

{

if(matrix[mtxPosX w 1][mtxPosY]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

}

其他

{

for(var w=0;w 4;w)

{

if(matrix[mtxPosX w 1][mtxPosY]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

if(矩阵[MTX波西][MTX波西-1]==矩阵[MTX波西][MTX波西])

{

if(矩阵[MTX波西][MTX波西-2]==矩阵[MTX波西][MTX波西])

{

if(矩阵[MTX波西][MTX波西-3]==矩阵[MTX波西][MTX波西])

{

if(矩阵[MTX波西][MTX波西-4]==矩阵[MTX波西][MTX波西])

{

winFlag=1;

}

其他

{

if(矩阵[MTX波西][MTX波西1]==矩阵[MTX波西][MTX波西])

{

winFlag=1;

}

其他

{

winFlag=0;

}

}

}

其他

{

for(var w=0;w 2;w)

{

if(matrix[mtxPosX][mtxPosY w 1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

}

其他

{

for(var w=0;w3;w)

{

if(matrix[mtxPosX][mtxPosY w 1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

}

其他

{

for(var w=0;w 4;w)

{

if(matrix[mtxPosX][mtxPosY w 1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

if(矩阵[MTX波西-1][MTX波西-1]==矩阵[MTX波西][MTX波西])

{

if(矩阵[MTX位置x-2][MTX位置y-2]==矩阵[MTX位置x][MTX位置y])

{

if(矩阵[MTX位置x-3][MTX位置y-3]==矩阵[MTX位置x][MTX位置y])

{

if(矩阵[MTX位置x-4][MTX位置y-4]==矩阵[MTX位置x][MTX位置y])

{

winFlag=1;

}

其他

{

if(矩阵[MTX波西1][MTX波西1]==矩阵[MTX波西][MTX波西])

{

winFlag=1;

}

其他

{

winFlag=0;

}

}

}

其他

{

for(var w=0;w 2;w)

{

if(matrix[MTX波西w 1][MTX波西w 1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

}

其他

{

for(var w=0;w3;w)

{

if(matrix[MTX波西w 1][MTX波西w 1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

}

其他

{

for(var w=0;w 4;w)

{

if(matrix[MTX波西w 1][MTX波西w 1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

if(矩阵[MTX位置x-1][MTX位置y 1]==矩阵[MTX位置x][MTX位置y])

{

if(矩阵[MTX位置x-2][MTX位置y 2]==矩阵[MTX位置x][MTX位置y])

{

if(矩阵[MTX位置x-3][MTX位置y-3]==矩阵[MTX位置x][MTX位置y])

{

if(矩阵[MTX位置x-4][MTX位置y-4]==矩阵[MTX位置x][MTX位置y])

{

winFlag=1;

}

其他

{

if(matrix[mtxPosX 1][mtxPosY-1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

}

其他

{

winFlag=1;

}

}

}

其他

{

for(var w=0;w 2;w)

{

if(matrix[MTX posx w1][MTX posy-w-1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

}

其他

{

for(var w=0;w3;w)

{

if(matrix[MTX posx w1][MTX posy-w-1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

}

其他

{

for(var w=0;w 4;w)

{

if(matrix[MTX posx w1][MTX posy-w-1]!=matrix[mtxPosX][mtxPosY])

{

winFlag=0;

打破;

}

其他

{

winFlag=1;

}

}

}

}

if(winFlag==1){

如果(鞠躬)

警报('黑色胜利!');

其他

警报('白色胜利!');

}

});

/脚本

/body

/html

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: