扫雷游戏报告.docx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
扫雷游戏报告

《扫雷游戏》程序设计报告院 系 中兴电信学院专 业 计算机科学与技术班 级 7B1431 小组成员强建敏 张伟 田志杰 赵立一、开发环境Intel?Pentium?2及以上的处理器,32M以上内存,20M以上硬盘空间。Microsoft?WindowsTM22000或XP以上操作系统。800×600或以上的屏幕分辨率microsoft visual studio 2010二、系统功能游戏共由两个类组成主界面对话框类:主要负责主界面、菜单及各个窗口类对象的创建和调用等处理。扫雷窗口类:主要负责接收玩家鼠标输入的打开格子位置、格子变换、花费时间及地雷格子的显示等处理。三、系统设计扫雷格子模块功能设计地雷格子的处理是扫雷游戏的核心内容,包括如下几个部分。(1)地雷铺设模块。游戏中的地雷个数可以根据玩家设定。地雷分布是调用随机数发生函数生成随机数。利用随机数去除最大行数或者最大列数,得到放置地雷行列坐标。然后分别防止地雷到不同的行和列的格子中去。(2)自动打开周围不是地雷的格子。在游戏中,当玩家单击的格子周围没有地雷格子时,就需要程序自动地把周围的格子自动打开来提高玩家的效率。以上的实现,由如下代码实现。public void LoadGame() {int x = Convert.ToInt16(cbX.Text);//行坐标int y = Convert.ToInt16(cbY.Text);//纵坐标intmine_count = Convert.ToInt16(cbMinecount.Text);//地雷个数mines = new ListMine(); mines = CreateMines(x, y, mine_count);//生成随机地雷集合intbtnx = plMines.Location.X + 5;intbtny = 5;for (int i = 0; i x; i++) {for (int j = 0; j y; j++) { Button btn = CreateButton(btnx, btny);btn.Tag = j + , + i;plMines.Controls.Add(btn);btnx += 40; }btnx = plMines.Location.X + 5;btny += 40;Application.DoEvents(); } }玩家输入模块功能设计在扫雷游戏中,用的最多的就是鼠标的输入。而鼠标输入又分为鼠标左键单击和右键单击两种处理类型。1. 鼠标左键的处理要实现鼠标左键的处理,需要如下几个步骤。(1)接收玩家在界面上的鼠标左键输入信息。(2)对当前鼠标的坐标进行判断。(3)当在按钮区时,调用控制按钮的处理函数。(4)当在地雷区时,如果当前游戏的状态是等待输入或者正在运行时,就得到当前选中的格子指针;反之,不进行响应。(5)在得到格子指针后,对选中格子的状态进行判断。如果是正常的格子,即未被打开过的格子,就转到格子处理函数;如果不是不是能够的格子,则不进行响应。2. 鼠标右键的处理要实现鼠标右键的处理,需要如下几个步骤。(1)接收玩家在界面上的鼠标右键输入信息。(2)对当前鼠标的坐标进行判断。(3)当在地雷区时,如果当前游戏的状态是等待输入或者正在运行时,就得到当前选中的格子指针;反之,不进行响应。(4)根据当前格子的状态进行变化。其变化规则为:如果是正常状态,则变成标记(★)状态;如果是标记状态,则变成未知(?)状态;如果是未知状态,则变成正常状态。voidbtnMine_MouseUp(object sender, MouseEventArgs e) {if (e.Button.ToString().ToUpper() == RIGHT) { Button btn = (Button)sender;if (btn.Text == ) {btn.Text = ★;btn.BackColor = Color.YellowGreen; } else if (btn.Text == ★) {btn.Text = ?;btn.BackColor = Color.Salmon; } else if (bt

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档