欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    贪吃蛇设计说明书Word文档下载推荐.docx

    • 资源ID:8012744       资源大小:1.24MB        全文页数:41页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    贪吃蛇设计说明书Word文档下载推荐.docx

    1、2. 基本要求1. 要求利用面向对象的方法以及C#程序设计语言来完成该系统的设计;2. 要求在设计的过程中,建立清晰的类的层次;3. 在系统中建立相关的类,每个类中都要有各自的属性和方法;4. 程序运行结果正确,操作方面,界面美观,逻辑层次清楚,程序结构合理,文档规范清晰。3. 主要功能该系统具备以下功能:控制蛇运动方向: 用键盘上的、控制蛇的运动方向。 当蛇向一个方向运动时,它的反向键被锁定。 不能通过连续按住某个方向键而加快蛇的运动。 若在游戏中,蛇头碰了墙或是自己的身体,则游戏结束。蛇吃食物: 蛇每吃一个食物增长一节,并且得分加10分,总共为100节。 蛇每增长10节游戏上升一个级别。

    2、游戏结束: 如果在游戏过程中,蛇头碰墙或是碰到了自己的身体,则游戏结束。 如果在游戏过程中,用户选择退出游戏,则提醒用户游戏正在进行,是否要退出。 选择退出,则游戏结束。 选择取消,则游戏继续。 如果玩家成功过关,则游戏结束。 在上述任何一种情况下,系统都会询问用户:是否保存游戏成绩? 选择确定,如果姓名为空,则默认以“匿名玩家”记录。 选择取消,则不记录。开始:开始游戏暂停:暂停游戏退出:退出游戏速度:玩家可以通过:选项-速度 打开窗口。 系统默认的方式是变速游戏。 玩家可以自行选择变速游戏或是均速游戏。 变速游戏:速度分1-10个级别。 并且根据关卡的高低决定速度的快慢。 均速游戏:用户可

    3、以自行选择所要速度的快慢。 1表示最慢,10表示最快。音乐:当打开游戏界面时,音乐会自动播放,默认的音乐是:Remeber。 若玩家要修改或关闭音乐,可以通过:音乐 或是 F5快捷键 打开窗口。 若玩家不想播放音乐,请点击关闭。 若玩家要播放选中的音乐,请点击确定。界面:玩家可以根据爱好选择想要的图片,总共有8张背景图片供选择。 玩家选择图片后,可以在对话框的右边预览到图片。 点击确定则显示选中的图片,点击取消则显示原先图片。 当游戏开始后,此功能键不能用。查看记录:关于-查看记录 或 F6快捷键 打开窗口。 窗口中显示了以往玩家的前三名成绩。游戏说明:游戏说明 或 F7快捷键 打开窗口。 窗

    4、口中显示了本游戏的说明。游戏的快捷键: 开始:F2 暂停:F3 退出:F4 音乐:F5 查看记录:F6 游戏说明:F74. 设计方法及涉及知识点4.1 设计方法因为界面的需要,在程序中有很多窗口:frmStart:游戏刚开始的窗口frmGame:在frmStart窗口中选择“进入游戏”后打开的窗口frmSpeed:用户选择速度时打开的窗口frmMusic:用户选择音乐时打开的窗口frmFace:用户选择界面时打开的窗口frmScores:用户查看记录时打开的窗口frmAboutGame:用户选择游戏说明时打开的窗口frmMessage:当游戏进行时,用户终止游戏出现的窗口frmGameOver

    5、:在蛇撞墙或是撞到自己身体是打开的窗口frmGameSuccess:用户成功结束游戏时打开的窗口frmSave:游戏开始后,游戏结束打开的窗口此外,还创建了其他类:Food类和Snake类4.2 涉及知识点此程序涉及的知识点有:函数的重载线程的运用文件的打开、读写和保存窗口的创建,控件、容器、菜单和工具栏和组建的使用5系统开发的目的1. 通过开发该自动取款机系统,加强我们对所习的C#知识的理解掌握,理解并且学会使用面向对象的设计思想去设计程序。2. 考察我们的实践动手能力,独立思考能力,自主学习能力,还有通过一系列方法寻求帮助的能力等。3. 通过巩固以往的知识也为后续的课程打下良好的基础。第二

    6、章 系统分析1. 分析问题和定义类,给出类的定义和联系玩家打开游戏,首先进入主页面(frmStart窗口),主页面有三个按钮:进入游戏、退出游戏和关于游戏进入游戏:打开frmStart窗口frmStart窗口:工具栏分为游戏、选项和关于游戏:开始(F2)、暂停或继续(F3)、退出(F4)游戏开始 暂停或继续:游戏暂停或继续游戏还没开始:回到主界面 游戏已经开始:打开frmMessage窗口: 选择确定:打开frmSave窗口:选择确定:保存后回到主界面选择取消:不保存且回到主界面 选择取消:游戏继续选项:速度、音乐(F5)、背景 速度:打开frmSpeed窗口,玩家选择变速游戏或是均速游戏(此

    7、项还要选择速度)打开frmMusic窗口,玩家选择是否播放音乐以及播放的歌曲 背景:打开frmFace窗口,玩家选择游戏界面的背景图片关于:查看记录(F6)、游戏说明(F7)打开frmScores窗口打开frmAboutGame窗口退出游戏:程序结束关于游戏:若在游戏过程中:蛇头碰墙或自己身体:打开frmGameOver窗口: 玩家过关:打开frmGameSuccess窗口:打开frmSave窗口之后回到主页面此外frmGame中还调用了Snake和Food类,用来画蛇和食物。2. 系统开发平台的选择此系统是基于Microsoft Visual Studio 2005 开发环境开发的。3. 程

    8、序设计语言的选择此系统的设计语言采用面向对象的程序设计语言Microsoft Visual C# 2.0。4. 操作平台硬件条件:Intel PII CPU、256 RAM、20G硬盘以上的PC机软件条件:Windows 98以上操作系统第三章 总体设计1. 系统的结构图(总图)系统用例图:系统类图:系统流程图:2. 函数模块说明frmStart:public partial class frmStart : Form frmGame game; frmAboutGame aboutGame; public frmStart() InitializeComponent(); private v

    9、oid btnGoToGame_Click(object sender, EventArgs e) game = new frmGame(); frmGame.start = true; game.Show(); private void btnCancel_Click(object sender, EventArgs e) Application.Exit(); private void btnAboutGame_Click(object sender, EventArgs e) aboutGame = new frmAboutGame(); aboutGame.Show(); frmGam

    10、e:public partial class frmGame : DllImport(winmm.dll ) public static extern uint mciSendString(string lpstrCommand, string lpstrReturnString, uint uReturnLength, uint hWndCallback); /用于播放音乐 frmMusic music; frmSpeed gameSpeed; frmFace face; frmScores scores; frmGameOver gameOver; frmMessage showMessa

    11、ge; frmGameSuccess gameSuccess; /定义窗口对象 Snake snake = new Snake(); Food food = new Food(); /定义类对象 Graphics g; Graphics g1; /定义画布对象 Bitmap img; TextureBrush tb; /定义画图要用的的对象 int max = 100; int speed = 1; int hurdles = 1; string pictureName= 真实风景1.bmp; bool changeSpeed = true; bool picture = false; pub

    12、lic static bool start = true; public bool live;/判断蛇是否活着 public static int score = 0; /定义变量 public frmGame() live = false; timer1.Enabled = false; timer1.Interval = 100; if (start = true) Snake.snakeDirection = Snake.snakePreDirection = 2; private void palMid_Paint(object sender, PaintEventArgs e) g

    13、= pnlOut.CreateGraphics(); g1 = pnlIn.CreateGraphics(); img = new Bitmap(红墙.bmp); tb = new TextureBrush(img); g1.FillRectangle(tb, 0, 0, 544, 443); img = new Bitmap(pictureName); g.FillRectangle(tb, 0, 0, 500, 400); food.makeFood(g); snake.draw(g); mciSendString(close temp_alias , null, 0, 0);open R

    14、emember.mp3 alias temp_alias/不能修改,否则无法播放 mciSendString(play temp_alias repeat private void timer1_Tick(object sender, EventArgs e) gameOver = new frmGameOver(); gameSuccess = new frmGameSuccess(); if (picture = false)/表示刚才没有调过界面,如果没有此判断,则调了界面后会自动开始游戏 if (timer1.Enabled = true) live=snake.move(g); if

    15、 (changeSpeed = true)/如果是变速游戏 speed = snake.number / 10 + 1;/速度 hurdles = snake.number / 10 + 1;/级别 score = (snake.number - 1) * 10;/分数 timer1.Interval = 1000 - (hurdles - 1) * 100; else/速度不变的情况 timer1.Interval = 1000 - (speed - 1) * 100; lblScore2.Text = (snake.number - 1) * 10).ToString(); lblHurd

    16、les2.Text = (snake.number / 10 + 1).ToString(); lblSpeed2.Text = speed.ToString(); if (live = false)/蛇死了,撞了墙或是撞了自己的尾巴/时间停止 gameOver.ShowDialog(); this.Close(); else if (snake.number = max) gameSuccess.ShowDialog(); else/蛇向前运动 palMid.Invalidate(); palMid.Update(); protected override bool ProcessCmdKe

    17、y(ref Message msg, Keys keyData) /重载基类方法ProcessCmdKey才能使用方向键 switch (keyData) case Keys.Up: if ( Snake .snakePreDirection != 3) Snake.snakeDirection = 1; break; case Keys.Right: if (Snake.snakePreDirection != 4) Snake.snakeDirection = 2; case Keys.Down:= 1) Snake.snakeDirection = 3; case Keys.Left:=

    18、 2) Snake.snakeDirection = 4;= Snake.snakeDirection) snake.move(g); Snake.snakePreDirection = Snake.snakeDirection; case Keys.F2: if (开始ToolStripMenuItem.Enabled =true ) 开始ToolStripMenuItem.PerformClick(); case Keys.F3: 暂停ToolStripMenuItem.PerformClick(); case Keys .F4 : 退出ToolStripMenuItem.PerformC

    19、lick(); case Keys .F5: 音乐ToolStripMenuItem.PerformClick(); case Keys.F6 : 查看记录ToolStripMenuItem.PerformClick(); case Keys .F7 : 游戏说明ToolStripMenuItem.PerformClick(); return true; private void 开始ToolStripMenuItem_Click(object sender, EventArgs e) live = true; start = false; timer1.Enabled = true; pic

    20、ture = false;/使能够调用Timer1_Tick 暂停ToolStripMenuItem.Enabled = true; 开始ToolStripMenuItem.Enabled = false;/点击开始按钮后,开始、速度、界面按钮为不可用 速度ToolStripMenuItem.Enabled = false; 界面ToolStripMenuItem.Enabled = false; private void 暂停ToolStripMenuItem_Click(object sender, EventArgs e) if (timer1 .Enabled =true ) 暂停To

    21、olStripMenuItem.Text = 继续 else暂停 private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) showMessage = new frmMessage(); if (live = true)/游戏已经开始了 showMessage.ShowDialog(); showMessage .Close (); if (showMessage.getResult() private void 速度ToolStripMenuItem_Click(object sender, EventArgs e)

    22、 gameSpeed = new frmSpeed(); gameSpeed.ShowDialog(); speed = gameSpeed.speed; changeSpeed = gameSpeed.changeSpeed; private void 音乐ToolStripMenuItem_Click(object sender, EventArgs e)/根据玩家选择播放音乐 music = new frmMusic(); string path= music.ShowDialog(); string musicName = music.getMusicName(); if (music

    23、Name != ) musicName = music.getMusicName(); path = +musicName+ mciSendString(path, null, 0, 0); private void 界面ToolStripMenuItem_Click(object sender, EventArgs e)/玩家可以自己选择图片 face = new frmFace(); face.ShowDialog(); pictureName = face.name; picture = true;/保证不调用Timer1_Tick private void 查看记录ToolStripMenuItem_Click(object sender, EventArgs e) scores = new frmScores(); scores.ShowDialog(); private void 游戏说明ToolStripMenuItem_Click(object sender, EventArgs e)


    注意事项

    本文(贪吃蛇设计说明书Word文档下载推荐.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开