spring boot框架课学习笔记:第三讲(下)-- 创建菜单与游戏界面

今天学习完成构建蛇与蛇的移动

  • 改良地图 抽对称改成中心对称
  • 地图加蛇 先从简单的蛇头开始,逐渐实现蛇的移动
  • 状态检测 定义游戏结束条件
  • 给蛇加眼睛

对于在线匹配游戏,在前端实现地图是不科学的,为什么?

  • 游戏的公平性来分析,无论是由游戏双方的哪一方实现地图都不公平。应该是后端实现,然后发给前端。

如何让蛇连贯的移动?

  • 求偏移量的投影。

判断蛇的状态的函数放在 GameMap 中。

如何获取用户的操作?

  • 从键盘获取输入。

如何实现移动?

  • 蛇头抛出新的球,并不是蛇头移动。

JS要注意 父引用。多个引用的值可能会相互干扰

学习算法搞开发的好处 ?

  • 写得快,调的快

实现蛇的移动
接下来,实现蛇的连贯移动
思路:设置一个虚拟的头部。每次移动只有头和尾巴移动
回合制游戏,给蛇设定三种状态 idle 静止 move 移动 die 死亡
记录蛇的下一步指令
接下来实现用户控制蛇的移动 canvas 输入tab index 属性
snake 中,统一的接口设置方向
json实现深层复制

设置监听事件,实现蛇的移动。当前是接受键盘的输入

实现蛇头移动后实现蛇尾移动。逻辑:先判断,再渲染
学习算法,可以获得的优势--写得好,调的快。具有不可替代性

显示fiilRect函数错误。这里fillRect是在ctx上面的
定义变量 const k 指k是常量。let k 指k是变量

画布ctx 没有this 指代

posted @ 2022-12-30 20:17  安半愚  阅读(49)  评论(0)    收藏  举报