下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

贪吃蛇游戏设计具体教程全解析

作者:课课家教育     来源: http://www.kokojia.com点击数:2082发布时间: 2016-04-03 10:00:49

标签: 贪吃蛇游戏游戏设计教程贪吃蛇设计

  用上下左右控制蛇的方向,寻找吃的东西,每吃一口就能得到一定的积分,而且蛇的身子会越吃越长,身子越长玩的难度就越大,不能碰墙,不能咬到自己的身体,更不能咬自己的尾巴,等到了一定的分数,就能过关,然后继续玩下一关。贪吃蛇作为一款经典的小游戏很受大众喜爱,游戏制作的精细度和画面的质量也随着版本的提高而不断提高,那么贪吃蛇是怎么制作出来的呢,我们一起来探究一下。

      1、需求分析

  使用键盘的上下左右,来控制蛇的运动方向,ESC键退出,并显示得分。

  2、系统分析和设计

  2.1数据结构的设计和选择的理由

  本游戏中涉及的主要数据结构是如何表示运动的蛇、食物状态等问题。

  2.1.1从游戏参考画面中我们可以看到,贪吃蛇的身体是一节节的,由一个个大小相同的方块组成,那么我们可以用一个(x,y)坐标为左上角的、固定宽度的正方形来表示一节蛇身。为表示连续的多节身体,那么我们可以采用数组(或链表,或线性表)等数据结构来表示。下面以数组方式为例:

  贪吃蛇是在不断的运动的,我们研究蛇的运动可以发现这样的特点:

  1.蛇头由键盘控制,键盘不操作时,保持原有方向运动;(用intdirection;表示)

  2.运动时,蛇身后面一节移动到前面一节的位置。当我们用nodes[0]表示蛇头的时候,nodes[1]运动到nodes[0]处;nodes[2]运动到nodes[1]处...。

  3.吃到一个食物以后,蛇身会增加一节。即该数组中的有效数据个数加一。(用intlength;表示)

  根据上面的情况,我们可以设计蛇的数据结构如下:

  2.1.2关于食物,有两个属性:

  1.坐标位置

  2.状态:存在,或被吃。

  故我们用以下结构表示:

  2.2系统模块划分和模块结构

  2.3流程图

  2.4数据类型、全局变量和函数说明

  2.4.1数据类型

  2.4.2全局变量

  2.4.3函数说明

  3、程序测试和运行结果

  ----------------------------------------------------------------------------选择速度开始或退出

  ----------------------------------------------------------------------------------------游戏运行中

  --------------------------------------------------------------------------------------------------------游戏结束

  4、课程报告小结

  【遇到的问题及解决方法分析等】

  4.1分数重叠显示

  解决方法:每次都用一块黑的矩形覆盖

  4.2速度太快

  解决方法:循环delay

  

  4.3食物可能出现在蛇身上

  解决方法:依次判断,若重叠则重新生成食物

    5、程序源代码如下:

赞(20)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程