# 贪恰蛇

awesome

# 在线Demo

# 一条贪吃的蛇与食物🎂

首先需要定义一个二维数组来存放蛇头与蛇身的坐标

  • 蛇头:[~~(Math.random() * (棋盘宽度 - 蛇长 - 1) + 1),~~(Math.random() * (棋盘高度 - 蛇长 - 1) + 1)];
  • 蛇身:通过蛇头的坐标随机向上或向下遍历坐标可得到
  • 蛇的数据结构:最终得到类似右边的二维数组 [[10,10],[10,11],[10,12],[10,13],[10,14]]
  • 食物: 通过while遍历出一个不属于🐍身的坐标就好了

# 让蛇动起来 🚑

根据移动的方向使蛇的首项的当前轴坐标+1,并删除蛇集合的尾项,蛇就动起来啦!我们需要:

  1. 绑定键盘事件,当用户按下时设置蛇移动的方向;
  2. 通过遍历去判断蛇头是否存在边界问题或蛇身;
  3. 判断蛇头坐标是否与食物坐标重合;
  4. 当蛇'吃到'食物时,则不删除蛇的尾项;

# 大功告成

接下来可以给贪吃蛇🐍加上一些因(花)吹(里)斯(胡)汀(哨)的功能了!

最后更新: 11/11/2019, 5:27:42 PM