第17章 开发贪吃蛇游戏第2部分

  在本章中,我们完成贪吃蛇游戏的构建。在第16章中,我们设置了游戏区域并且介绍了游戏大概的样子。现在,我们来创建表示游戏中的贪吃蛇和苹果的对象,并且编写一个键盘事件处理程序,以便玩家能够使用箭头键控制贪吃蛇。最后,我们将给出游戏的完整代码列表。

  在为游戏创建贪吃蛇和苹果对象的时候,我们将使用第12章所学习的面向对象编程技术,为每个对象创建构造方法和一般方法。贪吃蛇和苹果对象都将依赖于一个更加基础的块对象,我们使用该对象来表示游戏面板网格中的一个块。首先为这一简单的块对象创建一个构造方法。

17.1 构建Block构造方法

  在本节中,我们将定义一个Block构造方法,它会创建对象来表示不可见的游戏网格中的单个的块。每个块都有col(column的缩写)和row属性,它们将存储特定的块在网格上的位置。图17-1展示了这个带有数目固定的一些列和行的网格。尽管这个网格并不会真的出现在屏幕上,游戏设计成让苹果和贪吃蛇段总是能够和网格中的块对齐。

《javascript-少儿编程》第17章开发贪吃蛇游戏第2部分之构建Block

图17-1 Block构造方法所使用的列数和行数

  在图17-1 中,位于第10列第10行的块包含了绿色的苹果。贪吃蛇的头位于第8列第10行(在苹果的左边)

  以下是Block构造方法的代码

《javascript-少儿编程》第17章开发贪吃蛇游戏第2部分之构建Block

  列值和行值作为参数传递给构造方法,并且保存在新的对象的col和row属性中。

  现在,使用该构造方法来创建一个对象,以表示游戏肉格上的一个特定的块。例如,下面我们创建了一个对象。表示了第5列第5行中的块。

《javascript-少儿编程》第17章开发贪吃蛇游戏第2部分之构建Block