专业综合实践课程设计报告

上传人:第*** 文档编号:32820139 上传时间:2018-02-12 格式:DOC 页数:14 大小:274.50KB
返回 下载 相关 举报
专业综合实践课程设计报告_第1页
第1页 / 共14页
专业综合实践课程设计报告_第2页
第2页 / 共14页
专业综合实践课程设计报告_第3页
第3页 / 共14页
专业综合实践课程设计报告_第4页
第4页 / 共14页
专业综合实践课程设计报告_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《专业综合实践课程设计报告》由会员分享,可在线阅读,更多相关《专业综合实践课程设计报告(14页珍藏版)》请在金锄头文库上搜索。

1、目录一 项目名称及说明 .11.1 项目名称: .11.2 项目说明: .11.3 调试环境 .1二 设计方案 .22.1 设计流程 .22.2 设计思想 .2三 程序详细设计说明 .33.1 游戏开始前速度选择 .33.2 随机指定蛇,食物,围墙的数组 .43.3 根据数组画出界面 .53.4 获取按键事件 .63.5 蛇移动时的处理 .73.6 蛇吃食物的处理 .93.7 蛇撞墙的处理 .93.8 游戏主窗体载入时事件函数 .103.9 计时器触发的事件 .10四 程序运行界面 .114.1 选择级别界面 .114.2 游戏界面 .114.3 游戏结束界面 .124.4 帮助界面 .12五

2、 结束语 .12五 参考文献 .13专业综合实践课程设计1一 项目名称及说明1.1 项目名称:基于.NET 窗体编程的贪吃蛇小游戏1.2 项目说明:本项目实现的贪吃蛇小游戏以供用户进行娱乐。用户在游戏开始前可自行选择游戏速度。进入游戏后边框内会随机出现若干个绿色的食物和红色的围墙,用户通过“上下左右”键可控制蛇的移动方向吃绿色食物,同时需要避免蛇头撞到红色围墙或者边框。如果蛇头碰到绿色食物则说明食物被吃,食物在框内消失,蛇头碰到围墙或者边框则游戏失败。当食物全部吃光后进入下一关,下一关有更多的食物和围墙。按 z 键可加速按 x 键可减速。1.3 调试环境Windows XP 系统以及 visu

3、al studio 2008专业综合实践课程设计2二 设计方案2.1 设计流程开始选择游戏级别游戏开始是否熟悉游戏查看游戏帮助在边框内随机产生食物和墙根据键盘获取蛇移动方向或者加速减速蛇开始移动蛇头是否与食物重合将该点食物在数组中删除并将分数加 1蛇头是否与墙或者边框重合游戏结束 , 显示分数YNYNYN2.2 设计思想用一个小矩形表示蛇身的一节,蛇头用黑色表示。定义三个数组分别存放蛇,食物还有围墙的像素点。利用定时器 timer 不断触发窗体内的事件,用背景色清理窗体,重新专业综合实践课程设计3画出蛇,食物,围墙以达到蛇移动的效果。每次触发时都要坚持存放蛇的数组是否与食物的数组或者围墙的数组

4、相重合,如果与食物数组相重合则取得食物数组中该点并将分散加1,如果与围墙数组相重合则调用 end()函数结束游戏。此外如果用户按键则触发按键的函数,如果按键为方向键且与当前蛇前进方向不一样则改变蛇的方向与按键一致,如果按了 z,x 键则改变计时器 timer 的时间间隔缩短或增长,按了空格键则暂停。三 程序详细设计说明3.1 游戏开始前速度选择说明:选择速度越快,timer 计时器的间隔时间越短private void ok_Click(object sender,EventArgs e)snake.Speed=300/this.speed.Value;if(this.speed.Value=

5、4)snake.Speed=45;if(this.speed.Value=5)snake.Speed=10;this.Close();private void sp_vc(object sender,EventArgs e)switch(this.speed.Value)case 1:this.l1.Text=速度: 慢;break;case 2:this.l1.Text=速度: 中;break;case 3:this.l1.Text=速度: 快;break;case 4:this.l1.Text=速度: 很快;break;case 5:this.l1.Text=速度: 死亡速度;break;

6、专业综合实践课程设计43.2 随机指定蛇,食物,围墙的数组说明:在指定数组时考虑了游戏刚开始和游戏过关后两种情况public void reset()/随机指定墙和点的位置this.walls = new ArrayList();this.nuts = new ArrayList();Random ran = new Random();this.headc = Color.Black;/设置蛇身颜色为绿色this.bodyc = Color.Green;this.direction = Way.right;/开始时if (this.cart.Count 3)for (int i = 2 - t

7、his.cart.Count; i = 37 & a 20)this.timer.Interval -= 20;/使用x键减速if (a = (int)Keys.X)this.timer.Interval += 20;if (a = (int)Keys.Escape)this.Close();专业综合实践课程设计73.5 蛇移动时的处理public void move()int o = this.cart.Count - 1;for (int i = 0; i = this.district.Width | head.Y = this.district.Height - 1)this.end();return;switch (this.direction)case Way.right:this.carto = new Point(head.X

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

当前位置:首页 > 建筑/环境 > 工程造价

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号