HTML5+A*算法实现游戏寻路的代码分享
功能描述:
结合A*算法和HTML5完成的一个寻路demo。
鼠标点击地图任意位置,飞鸟会寻找最短路程到达该位置。
效果预览:
立即学习“前端免费学习笔记(深入)”;
代码分析:
具体说说里面提到过的“穿越拐角规则”的实现:
所谓的“穿越拐角规则”,就是如下图中所出现的情况:假设绿色是障碍物,当右边的红色格子想到达上面的黄色方格,并不允许直接由红色方格跳到黄色方格,而需要经过蓝色方格的情况:
我的实现方法是判断使用当前格子的x值和下一个格子的y值的格子或者使用当前格子y值和下一个格子x值的格子是障碍物,则在该次寻路过程中忽略该格子。
代码:
if (isWall(pointsArr[i][point.x], this.wallValueArr) || isWall(pointsArr[point.y][j], this.wallValueArr)) { //拐角规则,如果检测某点四周的点时,该点和四周上某点之间隔着一个障碍物,则忽略该点,暂不添加到开始列表continue; }
文章推荐
-
HTML在线编辑器的调用方法和使用方法
html在线编辑器不需要懂得使用dreamweaver,会用word就会使用此编辑器,在文章系统或者是新闻系统需要文字编...
H5教程
6个月前 (10-19) 212 -
AlloyTouch全屏滚动插件 30秒搞定顺滑H5页
使用姿势在设计全屏滚动插件的时候,希望开发者几乎:不用写任何脚本快速生成精致H5支持PC滚轮和移动触摸酷炫的转场动效灵活...
H5教程
6个月前 (10-19) 213 -
HTML5 js实现拖拉上传文件功能
在html5的pc上面实现了相当多的功能,工作中也用到了拖拉上传,特地记录下该功能 在拖动目标上触发事件 (源元素): ...
H5教程
6个月前 (10-19) 217 -
Canvas and Drawables 翻译第一集
android官方原文地址:http://developer.android.com/guide/topics/grap...
H5教程
6个月前 (10-19) 217 -
Canvas and Drawables 翻译第三集
Android官方原文地址:http://developer.android.com/guide/topics/grap...
H5教程
6个月前 (10-19) 210
最新文章
- 微信三级分销系统产品详情页怎么开发? 3周前 (03-13)
- 微信公众号-获取用户信息(网页授权获取)实现步骤 3周前 (03-13)
- php微信公众号开发(2)百度BAE搭建和数据库使用 3周前 (03-13)
- php微信公众号开发(3)php实现简单微信文本通讯 3周前 (03-13)
- php微信公众号开发(4)php实现自定义关键字回复 3周前 (03-13)
- php版微信小店调用api示例代码 3周前 (03-13)
- php版微信小店API二次开发及使用示例 3周前 (03-13)
- C# 微信公众号开发--准备工作 3周前 (03-13)
- C#微信公众号开发--微信事件交互 3周前 (03-13)
- C#微信公众号开发--网页授权(oauth2.0)获取用户基本信息一 3周前 (03-13)