周末奖励自己一个小项目(Find Gold)

311 阅读1分钟

分享一个最新写的小游戏,写项目的同时还能玩游戏,还能锻炼到算法,真香~

简单说一下思路: 1.用canvas绘制一个网格,主要需要控住四个方向每一画是一个边长,然后找一个起始点和终点. 2.用BFS去遍历并为找过的节点,4个方向随机找,找到就标记已找到 3.为了防止不太顺利的查找一直撞到边界的概率,如果无解了,没找到,用一个栈,回退到前一个继续从别的方向找,同理,最终就能找到终点 4.把栈中的数据,前后相邻的墙打通,就是左边的右边墙和右边的坐标墙的值设为false(开始默认四边都是true),判断前后节点y坐标差1,打通上下墙,x坐标差1,打通左右墙 5.这样就能生成一个起点到终点的通路迷宫了 live demo