贪吃蛇游戏系统课程设计.docx

上传人:h**** 文档编号:27178424 上传时间:2022-07-22 格式:DOCX 页数:8 大小:14.19KB
返回 下载 相关 举报
贪吃蛇游戏系统课程设计.docx_第1页
第1页 / 共8页
贪吃蛇游戏系统课程设计.docx_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《贪吃蛇游戏系统课程设计.docx》由会员分享,可在线阅读,更多相关《贪吃蛇游戏系统课程设计.docx(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、贪吃蛇游戏系统课程设计 一、课程设计的目的和要求 1.通过C#课程设计,使学生能将学到的面向对象的程序设计思想用到具体的工作和学习中,加深对类与对象的理解,要求学生能够对现实生活中许多具体的事物抽象出类,并掌握继承与派生,基类、虚方法和抽象方法和多态性的概念。 2.通过这次课程设计掌握C#语言程序设计的编程思想,为后续课程打下基础。 3.培养我们实际操作能力和实践能力,为以后的工作打下坚实的基础。 二、课程设计内容 编写一个C# GUI版贪吃蛇小游戏程序 我们的需求是: 一条蛇在封闭的围墙内爬行,玩家可以通过方向键来控制蛇 的运动方向,围墙内随机出现一食物,蛇头碰到食物时表示 食物被吃掉,此时

2、蛇身加长一节,同时游戏成绩加10分,接 着又出现食物等待蛇吃周而复所,直到蛇撞墙或身体交叉而 死游戏结束。 基本要求: 1、要求利用C#完成游戏的设计 2、要求在设计过程中建立清晰的类层次 3、程序应具有容错功能 4、程序界面美观,逻辑层次清楚,结构合理,文档清晰 三、课程设计基本要求 1) 要求利用面向对象的方法以及C#的编程思想来完成系统的设计; 2) 要求在设计的过程中,建立清晰的类层次; 3) 在系统中至少要定义四个类,每个类中要有各自的属性和方法; 4) 在系统的设计中,至少要用到面向对象的一种机制。 5) 程序应具有容错功能。 6)程序运行结果正确,操作方便,界面美观,逻辑层次清楚

3、,程序 结构合理,文档规范清晰。 目录 1:需求分析 1.1程序功能说明 1.2程序设计的分析 2:系统的主要功能模块 2.1程序功能图示 3:程序的输入,输出和相应的算法 3.1程序的输入 3.2程序的输出 3.3程序的一些重要方法的实现算法和方法4:程序的测试 4.1程序测试的内容和结果 5:程序运行效果图 6:部分程序代码 6.1 蛇类代码 6.2 食物类代码 7:程序的注意事项 8:程序的不足之处 一:需求分析 1:程序的功能说明: 一条蛇在封闭的围墙内爬行,玩家可以通过方向键来控制蛇的运动方向,围墙内随机出现一食物,蛇头碰到食物时表示食物被吃掉,此时蛇身加长一节,同时游戏成绩加10分

4、,接着又出现食物等待蛇吃周而复所,直到蛇撞墙或身体交叉而死游戏结束。2:程序设计的分析 通过程序所要实现的功能可以看出,该程序中有,蛇,食物两个主要的对象,所以我们可以定义两个类:蛇类,和食物类;在蛇类中封装了蛇的所有的属性和操作。蛇的属性有:蛇的长度,蛇的初始位置,蛇的运动方向,蛇的存活状态,蛇的运动速度。蛇的操作有:蛇的移动,蛇吃食物,画出蛇所有的状态。食物的属性有:食物的出现位置,食物的存活状态。食物类的操作:创建一个新的食物,画出食物的位置。在该程序中还有一个FROM类,用来画出和显示蛇和食物的状态和位置,该类提供给蛇和食物的运动平台,蛇和事物在该FORM的面板范围内运行。 程序中还有

5、其他的功能要一一的实现。如:在用户点击“开始”按钮后程序才能开始运行。用户如果点击“暂停”按钮,则该程序暂停,但并不终止程序,在用户再次点击“开始”按钮后,程序继续运行。如果程序运行结束,即程序出现“GAME OVER”,或用户点击“结束”按钮则程序结束,并且退出。在程序运行过程中,用户控制的蛇,每吃到一个食物,那么该玩家的得分就加10,并且还要记录 该玩家总共吃了多少食物。如果玩家“GAME OVER ”则要判断该玩家的得分是否大于最高分,如果大于,则提示该玩家获得了最高分。玩家可以查看最高分,玩家点击“显示”按钮则将显示最高分。 二:系统主要功能图示 三:系统的输入,输出和相关算法. 1:

6、输入: 在该程序中几乎没有什么从键盘输入的数据,所有的程序所运用的数据都是有程序本身提供的,由用户来选择,程序将根据用户的选择来处理相应的数据.,如在玩家选择游戏级别的时候,程序会根据玩家选择的级别来调整蛇的速度. 2:输出 : 在该程序中,输出的数据有,玩家所得到的分数,蛇吃到的食物的个数,以及目前的最高得分.,当玩家所控制的蛇死亡后,要输出一个消息”GAME OVER”表示蛇的死亡,并且将蛇的生存状态改为false ,如果在玩家控制的蛇死亡后,并且玩家的得分已经超过了之前的最高分,则输出一个消息”恭喜你,创了新的记录”并且将该分记录为最高分. 以上是程序的主要的输出. 3:程序中的一些相关

7、操作的实现方法和算法 1:蛇的移动. 蛇的移动主要通过的改变蛇的坐标位置,然后通过重绘蛇的位置,这样就实现了蛇的移动. 具体的为:从构成蛇身的所有节点的最后一点开始,依次将前一个节点的坐标点赋值为后一个节点.这样就实现了蛇身的 移动,接下来是蛇头的移动.蛇头的移动要根据蛇的运动方向来 做出相应的移动.如果蛇是向右移动,则蛇头的Y坐标点不变,X 坐标点加上相应的移动步长. 如果蛇是想左移动,则蛇头的Y 坐标不变,X坐标点减去相应的步长. 如果蛇是向上移动的,则 蛇头的X坐标不变,Y坐标减去相应的移动步长,如果蛇是向下 移动的,则蛇头的X坐标不变,Y坐标点加上相应的步长. 这样就构成了整个蛇的坐标

8、点的变换,然后通过,重绘面板则实现了蛇的移动. 2:蛇吃食物 蛇吃食物是在蛇经过该食物时,并且蛇头的坐标位置和该 食物的坐标位置是一致的那么,将该食物的坐标点,添加到该 蛇的最后一位上.这样就实现了蛇吃食物并且蛇身加长. 四:程序的测试 该程序由于输入的数据几乎没有,所以在测试也相对比较简单,只要运行该程序,在执行程序的过程中发现错误,在程序完成的初期,该程序中的错误非常多,如在蛇运行的过程中,蛇移动的步长是程序所设定的步长的两倍,所以蛇在移动时的步长太大,无法吃到食物,.还有在蛇的移动正常时,但是蛇经过食物却不能够将食物”吃”掉.经过检查原来蛇的的坐标点和食物的坐标点不重合,相差几个单位,但是这几个单位是用眼睛看不出来的,所以对程序的代码进行了仔细的检查,才发现了这个错误. 在点击”开始按钮后程序并不能够执行,经过仔细的分析和检查,终于发现,原来程序对”开始”按钮没有进行事件监听.所以点击”开始”按钮后程序不知道该做什么事情,所以没有响应. 程序中的错误都是通过白盒和黑盒测试相结合的方法来进行测试,这样程序的错误才能够找的完全和查找方便. 五:程序运行效果图: 程序的界面: 当程序运行,点击开始按钮后的截面图: 当程序运行,蛇每吃到一个食物后,得分和个数都会增加. 用户可以调节蛇的运动速度. 当玩家点击了显示按钮后,将显示目前该游戏的最高分. 当玩家所控制的蛇死亡后图

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 策划方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁