HTML5+A*算法实现游戏寻路的代码分享


本文摘自PHP中文网,作者黄舟,侵删。

功能描述:

结合A*算法和HTML5完成的一个寻路demo。

鼠标点击地图任意位置,飞鸟会寻找最短路程到达该位置。

效果预览:

1274.png

代码分析

具体说说里面提到过的“穿越拐角规则”的实现:

所谓的“穿越拐角规则”,就是如下图中所出现的情况:假设绿色是障碍物,当右边的红色格子想到达上面的黄色方格,并不允许直接由红色方格跳到黄色方格,而需要经过蓝色方格的情况:

  我的实现方法是判断使用当前格子的x值和下一个格子的y值的格子或者使用当前格子y值和下一个格子x值的格子是障碍物,则在该次寻路过程中忽略该格子。

  代码:

1

2

3

4

if (isWall(pointsArr[i][point.x], this.wallValueArr) || isWall(pointsArr[point.y][j], this.wallValueArr)) {                             

 //拐角规则,如果检测某点四周的点时,该点和四周上某点之间隔着一个障碍物,则忽略该点,暂不添加到开始列表

                continue;

                        }

以上就是HTML5+A*算法实现游戏寻路的代码分享的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

全面解析HTML5的文档结构和新增标签

HTML5游戏框架cngamejs开发实录-资源加载模块代码详解

HTML5实现分层屏幕适配

HTML5 canvas基本绘图之绘制矩形

h5如何使用约束验证api

总结HTML5中新表单元素的使用方法及实例教程

HTML5中关于div与span html块级元素的详细介绍

HTML5的发展

介绍几个超炫酷的HTML5动画演示及源码的图文详解

h5怎样实现输入框提示语+正常文本框提示语

更多相关阅读请进入《HTML5》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...