一、概述
1、用C#实现该设计的方法
首先应该了解设计要求,然后按照功能设计出实际模块,每个模块都要完成特定的功能,要实现模块间的高内聚,低耦合。设计模块是一个相当重要的环节,模块的数量不宜太多,也不宜太少,要是每个模块都能比较简单的转换成流程图。模块设计完成后,就该给每个模块绘制流程图。流程图要尽可能的简单且容易理解,多使用中文,补一些过长的代码,增加理解难度。此外,流程图应容易转换成代码。
根据流程图编写好代码后在WindowsXP操作系统,VS.NET2008开发环境下进行运行测试,检查错误,最终设计出可行的程序。
2、贪吃蛇游戏说明
游戏操作要尽可能的简单,界面要尽可能的美观。
编写程序实现贪吃蛇游戏,贪吃蛇游戏是一个深受人们喜欢的游戏:一条蛇在密闭的围墙
内,在围墙内随机出现一个食物,通过键盘上的四个光标键控制蛇向上下左右四个方向移动,蛇头撞到食物,则表示食物被吃掉,这时蛇的身体长一节,同时计10分;接着又出现食物,等待被蛇吃掉,如果蛇在移动过程中,撞到墙壁、障碍物或身体交叉(蛇头撞到自己的身体),则游戏结束。游戏结束时输出相应得分。
具体要求有以下几点:
(1)对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理;
(2)系统设计要实用,采用模块化程序设计方法,编程简练、可用,功能全面;
(3)说明书、流程图要清楚;
二、实验目的及设计要求
1、实验目的贪吃蛇的编程代码
.NET课程设计是教学实践环节中一项重要内容,进行此课程设计旨在掌握基础知识的基础
上,进一步加深对VC#.NET技术的理解和掌握;
提高和加强学生的计算机应用及软件开发能力,使学生具备初级程序员的基本素质;
培养学生独立分析问题、解决问题、查阅资料以及自学能力,以适应信息管理行业日新月异的发展形势;
本次课程设计是以学生独立思考解决问题为主,教师指导为辅,结合上机操作,完成指定的任务,做出设计报告。
2、实验要求
利用Microsoft Visual Studio 2008 平台设计制作一个贪吃蛇小游戏,要求如下:
(1)能够记录游戏成绩(计分按照每吃一块食物增加20累计)
(2)可以暂停/继续游戏(通过按钮实现)
(3)蛇的身体能够随着吃到食物的数量逐渐变长
(4)可以自己添加障碍物,要求设计成红墙壁
(5)积分每增加50分要求蛇相应的加快速度
(6)要求在游戏的过程中添加背景音乐和随机
三、课程设计具体实现
1、概要设计
1.1、设计思想
程序关键在于表示蛇的图形及蛇的移动。用一个小矩形快表示蛇的一节身体,身体每长一节,增加一个矩形块,蛇头(绿)用三节表示。移动时必须从蛇头开始,所以蛇不可以向相反的方向移动,如果不按任意键,蛇自行在当前方向右前移,但按下有效方向键后,蛇头朝该方向移动,一步移动一节身体,所以按下有效方向键后,先确定蛇头的位置,而后蛇的身体随蛇头移动,图形的实现是从蛇头新位置开始画出蛇,这时,由于未清屏的原因,原来的蛇的位置和新的位置差一个单位,所以看起来蛇多一节身体,所以将蛇的最后
节用背景覆盖。食物的出现与消失也是画矩形块和覆盖矩形块。为了便于理解,定义两个结构体:食物与蛇,同时还定义了一个随意的墙。然后利用图形驱动,,制作美观的游戏界面,通过随机函数产生随机的食物,控制游戏过程食物的出现。定义键盘操作控制游戏过程蛇的移动方向,画出边界,并判断游戏是否结束,统计游戏过程中蛇吃的食物数量,计算并输出游戏成绩。
1.2、主模块实现
1.snake的设计模块
2. Form 的设计模块
1.3、主函数流程图
2、详细设计
2.1、设计思想
首先进入VS2008打开文件新建一个项目,点击windows窗体应用程序,名字设为Snakes 。进入Form的设计界面,首先我们都知道游戏最基本的功能有开始,暂停,继续,退出,所以首先要先加4个button键来控制游戏,再加一个TextBox文本框来显示成绩。在窗体中加入Panel来实现贪吃蛇的运动空间,设置有一个游戏的界面运动空间。之后就要定义一个sakes类,来实现蛇的一些属性与方法,首先明白这个游戏实现的是贪吃蛇吃食物,所以还需要定义食物,食物被吃后要实现食物的重建。玩游戏时还需要有控制键的设置,这一模块可以选用Switch语句来实现。实现基本的功能后要注意怎样的情况会造成蛇的死亡,可以想到的有越界线,咬到自己都会死亡。随着思想的成熟,觉得只吃食物好像太简单,所以在这个贪吃蛇游戏的基础上又设置了一些障碍,加了几堵墙,还设置了随机的,这样游戏就更有意思了,加上以前玩俄罗斯方块的一些感觉,还设置了游戏的不断加速的模块。
2.2、具体模块实现:
1、snake 属性定义
2、Form 属性定义
3、创建蛇的模块
创建蛇的模块和创建障碍物的思路想法是一致的,都是通过label实现:
4、创建食物模块
创建食物模块和创建随机思路是一致的,都是在一定范围内随机出现。
通过坐标点的方法来实现食物,食物是随机出现的,而且一旦被吃掉就会立刻创建新的食物。而且还需要判断食物出现的地方时是否与墙壁重合。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论