扫雷小游戏课程设计
- 格式:docx
- 大小:342.70 KB
- 文档页数:19
课程设计报告课程名称:面向对象程序设计C++设计题目:扫雷小游戏专业:计算机科学与技术姓名:学号:指导教师:李晓虹2016 年 1 月 6日目录一、系统需求分析 (2)1.1功能需求分析 (2)1.2 运行环境需求 (2)1.3硬件需求 (2)1.4基本素材需求 (3)二、总体设计 (3)三、详细设计 (3)3.1 具体要求如下: (3)3.2游戏流程 (4)四、系统调试 (4)五、结果分析 (5)六、总结 (5)一、系统需求分析随着现在生活节奏的加快,人们在工作学习之余需要一个轻松娱乐的放松环境。
因此我编写此软件的目的,一方面作为初学者来了解C++环境下的小程序开发,另一方面使用户能在娱乐休闲的同时拓展思维能力。
1.1功能需求分析功能简介随机布雷可以由电脑进行随机布雷自定义雷的数量可以由用户自定义雷的数量计时有计时装置,可以自开始扫雷后自动记时难度级别选项各个级别的难度对应雷的数量的不同游戏结束提示在游戏结束时会出现提示对话框,并停止计时自定义雷的数量界面自定义雷的数量界面程序主界面游戏运行的界面1.2 运行环境需求基本操作系统:win7,win XP1.3硬件需求a.处理器型号:奔腾III及同等型号以上处理器b.内存容量:512MB以上内存(可运行数据库管理系统)c.外存容量:5G以上硬盘空间d.联机或脱机:脱机e.输入及输出设备的型号和数量:鼠标、彩色显示器1.4基本素材需求二、总体设计扫雷是单人计算机游戏。
游戏的用户界面由小方格组成的战场构成。
当游戏开始时,计算机将固定的地雷数随机的放到战场的方格。
此游戏还允许玩家指定战场中的地雷数。
参考Windows 操作系统提供的扫雷游戏,改进扫雷游戏程序,增加以下功能:在主界面中添加一个菜单栏,菜单栏中包括游戏和帮助两个菜单,其中游戏菜单中设置初级、中级、高级、自定义、声音、扫雷英雄榜这几个菜单项,帮助菜单中设置游戏规则和制作人员两个菜单项。
背景说明:a.软件名称:扫雷b.用户:所有扫雷游戏爱好者三、详细设计3.1 具体要求如下:(1)扫雷游戏分为初级、中级和高级三个级别。
《扫雷》教案一、活动目标:1. 帮助幼儿认识数字和数字大小。
2. 培养幼儿的观察力和逻辑思维能力。
3. 提高幼儿合作与沟通能力。
二、活动准备:1. 游戏地点:教室内或室外均可。
2. 游戏材料:数字方块、扫雷地图、红、黄、蓝色小旗子。
三、活动流程:1. 简单介绍扫雷游戏的规则和目标。
2. 将数字方块随机放置在教室内或室外的地面上,以模拟扫雷地图。
3. 幼儿分成若干小组,每组一人担任“拆弹专家”。
4. 拆弹专家负责翻开数字方块,同时告知数字大小,并确保其他小组成员的安全。
5. 根据数字大小,其他小组成员决定是否在该处放置红、黄、蓝色小旗子,代表着“危险”、“迟疑”和“安全”。
6. 游戏继续进行,直到所有数字方块都被翻开并贴上旗子。
7. 小组成员讨论并总结各个位置的数字大小和旗子的摆放情况,最终确定哪些位置存在雷区。
四、活动评估:1. 观察幼儿在游戏中的表现,包括观察力、逻辑思维能力、合作与沟通能力。
2. 记录幼儿在游戏中的表现,包括发现雷区的次数、正确摆放旗子的次数等。
五、活动延伸:1. 在游戏结束后,可组织小组成员共同探讨游戏中出现的问题和解决方法,从而培养幼儿的思考能力和团队合作能力。
2. 可以引导幼儿思考类似于扫雷游戏的实际应用,比如在日常生活中如何遵守交通规则、安全用电等。
六、活动总结:1. 通过《扫雷》游戏的开展,幼儿不仅加深了对数字的认知,还培养了观察力、逻辑思维能力和合作与沟通能力。
2. 该游戏既能够锻炼小组成员的思考和解决问题能力,又能增进小组成员之间的团队合作感和责任感,是一项非常有益的幼儿园数字游戏教学活动。
七、活动反思:在《扫雷》游戏的进行过程中,我们发现了一些问题和可以改进的地方。
有些幼儿在游戏中表现出了过于急躁的情绪,导致在观察数字方块和决定放置旗子的位置时出现了错误。
这提示我们在今后的游戏中,需要加强对幼儿情绪管理和耐心培养的指导。
部分幼儿在游戏中缺乏有效的沟通和合作,导致小组间协作不够紧密,有些重要的信息无法及时传达。
体育课扫雷游戏教案设计一、教学目标。
1. 知识与技能,学生能够掌握扫雷游戏的基本规则和技巧,能够在游戏中灵活应用身体协调能力和反应能力。
2. 情感态度,培养学生团队合作意识,培养学生对体育运动的兴趣和热爱。
3. 个性发展,通过游戏锻炼学生的意志品质和身体素质,促进学生的全面发展。
二、教学重点。
1. 掌握扫雷游戏的基本规则和技巧。
2. 培养学生的团队合作意识和身体协调能力。
三、教学难点。
1. 学生在游戏中如何快速做出反应。
2. 学生如何在游戏中与队友配合。
四、教学过程。
1. 热身活动。
在开始扫雷游戏之前,首先进行一些热身活动,如慢跑、拉伸运动等,以准备好身体。
2. 游戏规则介绍。
介绍扫雷游戏的基本规则和技巧,包括游戏场地的大小和布置,游戏的基本玩法等。
3. 游戏练习。
分组进行扫雷游戏的练习,让学生在实际操作中掌握游戏的技巧和规则。
4. 游戏实施。
将学生分成若干小组,进行扫雷游戏比赛。
在游戏过程中,老师可以适时给予指导和帮助。
5. 游戏总结。
游戏结束后,老师和学生一起总结游戏过程中出现的问题和不足,以及学生在游戏中的表现和收获。
六、教学反思。
扫雷游戏是一项能够锻炼学生身体素质和团队合作能力的体育活动。
在教学过程中,老师需要注重引导学生在游戏中培养团队合作意识,培养学生对体育运动的兴趣和热爱。
同时,老师还需要关注学生在游戏中的表现和收获,及时给予肯定和指导,帮助学生不断提高自己的身体素质和团队合作能力。
通过扫雷游戏的教学,可以有效促进学生的全面发展,培养学生健康的体育意识和积极的体育态度。
扫雷小游戏c 课程设计一、课程目标知识目标:1. 学生理解并能运用基本的计算机编程知识,掌握扫雷游戏的规则和逻辑。
2. 学生掌握C语言的基本语法,如变量声明、循环结构和条件判断等。
3. 学生了解二维数组的使用,并能将其应用于扫雷游戏的地图表示。
技能目标:1. 学生能够运用C语言编写简单的扫雷游戏程序,实现游戏的基本功能,如地雷布置、翻开格子、标记旗帜等。
2. 学生通过编程实践,培养解决问题的能力和逻辑思维能力。
3. 学生掌握调试和优化程序的方法,提高程序质量和运行效率。
情感态度价值观目标:1. 学生培养对计算机编程的兴趣和热情,激发自主学习编程的动力。
2. 学生通过团队合作开发游戏,学会沟通与协作,培养团队精神和集体荣誉感。
3. 学生在编程过程中,体验克服困难的喜悦,增强自信心和毅力,培养积极向上的学习态度。
课程性质:本课程为信息技术学科,结合C语言编程知识,设计具有趣味性和挑战性的扫雷游戏,旨在提高学生的编程技能和逻辑思维能力。
学生特点:学生处于初中年级,对计算机编程有一定的基础,好奇心强,喜欢探索和挑战。
教学要求:教师需注重引导和启发,鼓励学生动手实践,关注学生的个别差异,提供有针对性的指导,确保学生在课程中取得实际的学习成果。
通过课程学习,使学生将理论知识与实际应用相结合,提高综合运用能力。
二、教学内容1. C语言基础语法复习:变量声明与赋值、数据类型、运算符、循环结构(for、while)、条件判断(if-else)。
相关教材章节:第一章至第三章。
2. 二维数组的应用:数组声明、初始化、访问元素,应用二维数组表示扫雷游戏地图。
相关教材章节:第四章数组部分。
3. 函数的定义与调用:编写功能函数,如布置地雷、翻开格子、判断输赢等,理解模块化编程思想。
相关教材章节:第五章函数部分。
4. 随机数的生成与应用:使用rand()函数生成随机数,布置随机地雷。
相关教材章节:第七章随机数部分。
5. 游戏逻辑与算法:设计扫雷游戏的算法,实现翻开无雷格子、标记旗帜等功能。
拓展课扫雷课程设计一、教学目标本课程的学习目标主要包括知识目标、技能目标和情感态度价值观目标。
知识目标要求学生掌握扫雷的基本原理和方法,了解扫雷的历史和现状,提高对扫雷问题的认识水平。
技能目标要求学生能够运用所学的扫雷知识和方法,解决实际中的扫雷问题,提高解决问题的能力。
情感态度价值观目标要求学生在学习过程中,增强对生命的尊重和爱护,增强对和平的珍视和追求,形成积极向上的情感态度和价值观。
二、教学内容教学内容主要包括扫雷的基本原理、扫雷的方法、扫雷的历史和现状以及扫雷问题的解决。
首先,通过讲解和案例分析,使学生了解扫雷的基本原理和方法,掌握扫雷的基本技能。
其次,通过历史和现状的介绍,使学生了解扫雷问题的严重性和复杂性,提高学生对扫雷问题的认识水平。
最后,通过实际案例的分析和解决,使学生能够运用所学的知识和方法,解决实际中的扫雷问题。
三、教学方法在教学过程中,将采用讲授法、讨论法、案例分析法和实验法等多种教学方法。
讲授法用于扫雷基本原理和方法的讲解,使学生能够系统地了解和掌握扫雷知识。
讨论法用于扫雷问题的讨论,激发学生的思考和主动性,提高学生的解决问题的能力。
案例分析法用于扫雷案例的分析和解决,使学生能够运用所学的知识和方法,解决实际中的扫雷问题。
实验法用于扫雷设备的操作和实验,使学生能够亲自体验和了解扫雷的过程和方法。
四、教学资源教学资源包括教材、参考书、多媒体资料和实验设备等。
教材和参考书用于提供扫雷的基本知识和方法,多媒体资料用于提供扫雷的历史和现状的图片和视频,实验设备用于提供扫雷的实验操作的机会。
这些教学资源将帮助学生更好地了解和掌握扫雷知识,提高学生的扫雷能力。
五、教学评估本课程的评估方式包括平时表现、作业和考试等。
平时表现主要评估学生在课堂上的参与程度、提问和回答问题的表现。
作业主要评估学生的扫雷知识和方法的掌握程度。
考试主要评估学生对扫雷知识和方法的全面理解和掌握。
这些评估方式将客观、公正地全面反映学生的学习成果。
安卓扫雷游戏课程设计一、课程目标知识目标:1. 学生能理解并掌握安卓开发基本知识,包括界面设计、事件处理和逻辑控制。
2. 学生能运用所学的安卓开发技能,独立完成一个扫雷游戏的编写。
3. 学生了解并掌握扫雷游戏的规则和算法实现。
技能目标:1. 学生能运用安卓开发工具(如Android Studio)进行游戏设计和开发。
2. 学生通过实践,培养解决问题、调试程序的能力。
3. 学生能够进行团队合作,共同完成项目任务。
情感态度价值观目标:1. 学生培养对编程的兴趣,增强学习信息技术的自信心。
2. 学生通过扫雷游戏项目,认识到编程在现实生活中的应用价值,激发创新意识。
3. 学生在团队合作中,学会沟通与协作,培养集体荣誉感和责任感。
课程性质:本课程为信息技术课程,结合实际操作,培养学生的编程能力和团队协作能力。
学生特点:学生为初中年级,具备一定的信息技术基础,对游戏开发有浓厚兴趣。
教学要求:结合学生特点,以实践操作为主,注重培养学生的动手能力和团队协作精神。
将课程目标分解为具体的学习成果,以便于教学设计和评估。
二、教学内容1. 安卓开发基础- 界面设计:Activity、布局(LinearLayout、RelativeLayout)、控件(Button、TextView等)。
- 事件处理:setOnClickListener、触摸事件。
- 逻辑控制:条件语句(if-else)、循环语句(for、while)。
2. 扫雷游戏规则与算法- 扫雷游戏规则介绍:游戏目标、地雷分布、计分方式等。
- 算法实现:递归算法、随机数生成。
3. 游戏开发实践- 创建项目:使用Android Studio创建新项目,配置游戏界面。
- 编写代码:完成游戏逻辑、界面交互、地雷生成等功能。
- 调试与优化:测试游戏功能,修复bug,提高游戏体验。
4. 团队合作与项目评估- 团队合作:分配任务,协同开发,共同完成项目。
- 项目评估:评估标准,包括功能完整性、界面美观、代码规范等。
扫雷游戏c 课程设计一、教学目标本课程旨在通过扫雷游戏C的学习,让学生掌握基本的计算机编程技能,培养逻辑思维和解决问题的能力。
具体目标如下:知识目标:使学生了解扫雷游戏的规则和原理,学习C语言的基本语法和编程方法。
技能目标:培养学生使用C语言编写程序的能力,学会调试和优化程序。
情感态度价值观目标:培养学生对计算机科学的兴趣,增强自信心,培养团队协作和沟通能力。
二、教学内容本课程的教学内容主要包括扫雷游戏的规则介绍、C语言的基本语法和编程方法。
具体安排如下:第1-2课时:扫雷游戏的规则介绍和原理分析。
第3-4课时:C语言的基本语法和编程方法。
第5-6课时:扫雷游戏的编程实践。
第7-8课时:程序调试和优化。
第9-10课时:团队协作完成扫雷游戏的编程任务。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法、实验法等。
具体方法如下:第1-2课时:采用讲授法介绍扫雷游戏的规则和原理。
第3-4课时:采用案例分析法讲解C语言的基本语法和编程方法。
第5-6课时:采用实验法让学生动手编写扫雷游戏的程序。
第7-8课时:采用讨论法分析程序的调试和优化方法。
第9-10课时:采用团队协作法完成扫雷游戏的编程任务。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备以下教学资源:教材:《C语言程序设计》。
参考书:《C语言编程实例教程》。
多媒体资料:扫雷游戏的教学视频。
实验设备:计算机、网络设备等。
五、教学评估本课程的评估方式将包括平时表现、作业和考试等,以全面客观地反映学生的学习成果。
具体评估方式如下:平时表现:通过观察学生在课堂上的参与度、提问和回答问题的情况,以及小组合作的表现来评估学生的学习态度和理解程度。
作业:布置与课程内容相关的编程作业,要求学生在规定时间内完成,并根据作业的质量给予评分。
考试:安排一次期末考试,测试学生对C语言编程知识的掌握程度,包括理论知识和编程实践。
高中数学扫雷游戏教案大全
一、教学目标:
1.了解数学扫雷游戏的规则和操作方法;
2.培养学生逻辑推理能力和数学计算能力;
3.培养学生团队合作和沟通交流能力。
二、教学准备:
1.数学扫雷游戏软件或在线游戏链接;
2.黑板、彩色粉笔、计算器等教学工具。
三、教学步骤:
1.介绍数学扫雷游戏的规则和操作方法,包括如何揭开方块、如何标记雷区等;
2.分组进行游戏,每组选择一名队长,其他队员帮助队长分析并提供建议;
3.让学生运用数学知识和逻辑推理来破解难题,找出雷的位置;
4.每组按照规定时间内找出雷的数量来评选最终胜利组;
5.总结游戏过程中的经验教训,让学生反思并提出建议,以便改进下一次游戏。
四、教学反馈:
1.收集学生的游戏反馈意见,包括喜好程度、困难程度、规则设置等方面;
2.鼓励学生提出改进建议,以便更好地开展下一次数学扫雷游戏教学活动。
五、课后延伸:
1.让学生尝试编写自己的数学扫雷游戏规则和算法;
2.鼓励学生在家中继续练习数学扫雷游戏,提高计算能力和逻辑推理能力。
通过以上教学活动,学生将能更好地理解数学概念,并提高数学计算能力和逻辑推理能力,同时培养团队合作和沟通交流能力。
愿我们的教学活动能够给学生带来更多的乐趣和收获!。
扫雷游戏活动策划书3篇篇一扫雷游戏活动策划书一、活动主题“扫雷大作战,挑战你的智慧极限!”二、活动目的1. 提供一个娱乐和放松的活动,让参与者在游戏中享受乐趣。
2. 锻炼参与者的思维能力、逻辑推理和注意力。
3. 促进团队合作和社交互动,增强参与者之间的交流与沟通。
三、活动时间和地点1. 时间:[具体日期]2. 地点:[详细地址]四、参与人员1. 个人赛:欢迎所有对扫雷游戏感兴趣的个人参加。
2. 团队赛:以团队为单位报名,每队人数为[具体人数]。
五、活动内容1. 个人赛参与者在规定时间内尽可能地找出所有地雷。
系统会根据完成时间和找出的地雷数量进行排名。
2. 团队赛团队成员通过合作,共同找出所有地雷。
可以设置一些团队任务,如在规定时间内完成游戏或找出特定数量的地雷等。
团队的成绩将根据完成时间和团队成员找出的地雷数量综合计算。
六、活动规则1. 游戏区域大小为[具体大小]。
2. 地雷分布在游戏区域中,参与者需要通过方块来判断是否有地雷。
3. 到地雷则游戏结束,未到地雷则显示周围数字,数字表示周围 8 个方块中地雷的数量。
4. 参与者可以通过推理和猜测来找出地雷,但不能误触地雷。
5. 个人赛和团队赛分别设立一、二、三等奖,根据比赛成绩颁发奖品。
七、活动流程1. 活动开场主持人介绍活动背景、目的和规则。
宣布活动开始。
2. 比赛环节个人赛和团队赛同时进行,根据比赛时间和成绩进行排名。
期间可以设置休息时间,让参与者放松调整。
3. 颁奖环节根据比赛排名,颁发一、二、三等奖。
主持人宣布活动结束。
八、注意事项1. 参与者需遵守活动规则,不得使用任何外部工具或作弊行为。
2. 组织者需确保游戏区域的安全,避免参与者发生意外。
3. 活动期间,工作人员要维护好现场秩序,确保活动的顺利进行。
九、活动预算1. 奖品费用:[具体金额]2. 道具费用:[具体金额]3. 其他费用:[具体金额]十、活动宣传1. 在社交媒体平台上发布活动信息,吸引更多人参与。
课时:1课时年级:大学教学目标:1. 通过扫雷体育游戏,锻炼学生的反应速度和团队协作能力。
2. 培养学生面对挑战时的勇气和信心。
3. 提高学生的沟通能力和策略思维能力。
教学重点:1. 扫雷游戏规则的讲解与示范。
2. 团队协作在游戏中的应用。
教学难点:1. 学生在游戏中的策略运用。
2. 学生在游戏过程中的心理调节。
教学准备:1. 扫雷游戏道具(如:雷区地图、手雷、雷区指示牌等)。
2. 游戏场地布置。
3. 背景音乐。
教学过程:一、导入1. 教师简要介绍扫雷游戏的历史背景和规则。
2. 学生自由讨论,分享自己对扫雷游戏的了解和看法。
二、游戏规则讲解1. 教师详细讲解扫雷游戏的基本规则,包括雷区地图、手雷、雷区指示牌等。
2. 学生提问,教师解答。
三、游戏示范1. 教师示范如何进行扫雷游戏,包括寻找雷区、排除雷区、躲避雷区等。
2. 学生观看,了解游戏过程。
四、分组与比赛1. 学生分成若干小组,每组人数不限。
2. 各小组进行扫雷游戏比赛,时间限定为15分钟。
3. 教师监督比赛过程,确保游戏公平、公正。
五、游戏分析与总结1. 教师邀请各小组代表分享游戏过程中的经验和教训。
2. 学生讨论如何提高团队协作能力和策略思维能力。
3. 教师总结游戏过程中的亮点和不足,强调团队协作的重要性。
六、课后作业1. 学生撰写一篇关于扫雷游戏的心得体会。
2. 学生与同学交流游戏过程中的收获和感悟。
教学评价:1. 观察学生在游戏过程中的表现,如团队协作、策略运用、心理调节等。
2. 评价学生课后作业的质量,如心得体会的深度和广度。
教学反思:1. 教师根据学生在游戏过程中的表现,调整教学策略,提高教学质量。
2. 教师关注学生在游戏过程中的心理需求,提供适当的指导和支持。
西安科技大学软件工程课程设计报告题目:扫雷游戏开发班级:计科0901班学号: xxxxxxxxxxxx姓名: xxxxxxx电话:xxxxxxxxxxxxx2012年7月目录1 绪论 (3)1.1 选题目的及意义 (3)1.2 系统概述 (3)2 可行性研究报告 (4)3 需求规格说明书 (5)4 总体设计说明书 (6)5详细设计说明书 (7)6 系统实现 (16)6.1 开发环境 (16)6.2 关键技术 (16)6.3 运行结果 (16)7测试分析报告 (17)8心得体会 (19)参考文献1.绪论1.1选题目的及意义随着现在生活节奏的加快,人们在工作学习之余需要一个轻松娱乐的放松环境。
因此我编写此软件的目的,一方面作为初学者来了解java环境下的小程序开发,另一方面使用户能在娱乐休闲的同时拓展思维能力。
扫雷是单人计算机游戏。
游戏的用户界面由小方格组成的战场构成。
当游戏开始时,计算机将固定的地雷数随机的放到战场的方格。
此游戏还允许玩家指定战场中的地雷数。
参考Windows 操作系统提供的扫雷游戏,改进扫雷游戏程序,增加以下功能:在主界面中添加一个菜单栏,菜单栏中包括游戏和帮助两个菜单,其中游戏菜单中设置初级、中级、高级、自定义、声音、扫雷英雄榜这几个菜单项,帮助菜单中设置游戏规则和制作人员两个菜单项。
背景说明:a.软件名称:扫雷b.用户:所有扫雷游戏爱好者1.2 系统概述1.2.1扫雷游戏的基本要求Windows 2000/XP系统提供的扫雷游戏是一个很有趣的游戏。
本章的课程设计使用Java语言编写一个与其类似的扫雷游戏。
具体要求如下:(1) 扫雷游戏分为初级、中级和高级三个级别。
单击游戏菜单可以选择“初级”、“中级”和“高级”。
(2) 选择级别后将出现相应级别的扫雷区域,这时用户使用鼠标左键单击‘“开始”便启动计时器。
(3) 用户要揭开某个方块,可左键单击它。
若所揭方块下有雷,用户便输了这一局,若所揭方块下无雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。
(4) 如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。
用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。
(5)当用户点中雷时,将有“你输了”的提示出现,胜利时,将有“你赢了”的提示出现。
1.2.2 需实现的主要功能用户可以自定义级别并且可以任意输入雷数;具有计时功能,即显示用户完成移动盘子所花费的时间。
2 可行性研究报告2.1 技术可行性分析本程序是java平台下的windows应用程序,总体规模较小适合个人单独完成。
开发人员是和软件专业相关的学生,有软件开发方面的基础,有能力完成该程序的设计及开发工作。
2.2 时间和资源可行性分析(1)本程序按预定计划进行,有足够的时间完成(2)预算中的人员可全天候的进行软件开发工作(3)按照课程设计时间及安排,计划如下:a.课程设计之前:查阅资料,确定题目;b. 搜集资料,调研分析。
c.系统分析与设计。
d.系统实现/测试。
e.整理文档,成果验收,提交设计报告。
所以有充分的时间进行软件开发工作,所以硬件方面的资源可得到满足。
2.3软件要实现的功能及可行性详情见需求分析3.1需求分析3.1.1功能需求:3.1.2运行环境需求:基于J2SE平台的SDK1.6版本jdk1.6.0_31的java程序开发环境3.2硬件需求:a.处理器型号:奔腾III及同等型号以上处理器b.内存容量:512MB以上内存(可运行数据库管理系统)c.外存容量:5G以上硬盘空间d.联机或脱机:脱机e.输入及输出设备的型号和数量:鼠标、彩色显示器3.3软件需求:编译程序:jdk1.6.0_313.4控制需求:使用全鼠标控制在设计扫雷游戏时,需要编写9个Java源文件:MineGame.java、MineArea.java、Block.java、BlockView.java、LayMines.Java、ShowRecord.java、voiceShow.java、userDefine.java、ruleShow扫雷游戏除了需要编写上述java 源文件所给出的类外,还需要Java 系统提供的一些重要的类,如File、JButton、和Jlabel等类。
扫雷游戏所用到的一些重要的类以及之间的组合关系如下图所示:图4-1 类之间的组合关系5.1MineGame类5.1.1 UML类图MineGame类是javax.swing 包中Jframe的一人子类,并实现了ActionListener接中,标明该类的主要成员变量和方法的UML图如下图所示:图5-1-1 MineGame类的UML图以下是UML图中有关数据和方法的详细说明。
1)成员变量· bar和fileMenu提供菜单操作,单击游戏菜单中的选项为“初级”“中级”“高级”“自定义”“背景声音”“退出”“游戏规则”等·MineArea 是扫雷区域,提供有关扫雷的主要功能。
·userdefine负责用户自定义功能·VoiceShow 负责背景音乐功能·ruleshow负责显示游戏规则功能2)·MineGame()是构造方法,负责完成窗口的主要功能·actionPerformed(ActionEvent)方法是MineGame类实现的ActionLister接口中的方法,该方法负责执行菜单发出的有关命令。
用户选择菜单项可以触发ActionEvent事件,导致actionPerformed(ActionEvent)方法执行相应的操作,例如将mineAreaw创建的雷区设置为初级,中级,高级等。
·Main(String[])方法是程序的入口方法5.2 MineArea5.2.1 效果图:图5-2-1 MineArea创建的扫雷区域效果图5.2.2 UML图MineArea类是javax.swing包中JPanel容器的子类,实现了ActionListener和MouserListener接口,所创建的对象:mineArea是MineGame类中最重要的成员之一,作为一个容器添加到MineGame窗口的中心。
标明MineArea类的主要成员变量、方法以及和MineGame类之间组合关系的UML图如下所示:图5-2-2 MineGame类之间组合关系的UML图以下是UML图中有关数据和方法的详细说明。
·Block是Block类型的数组,用来确定雷区有多少需进行扫雷的方块。
·blockView是Blockview类型的数组,负责为block数组中的Block对象提供视图。
·Lay是LayMines类型的对象,负责设置block数组中的哪些方块是雷或不是雷。
·reStart是一个按钮对象,用户单击它重新开始游戏。
·time是计时器对象,负责计算用户的用时。
2)方法·initMineArea(int,int,int,int)方法可根据参数提供的数据设置雷区的宽度,高度,雷的数目以及雷区的级别。
·actionPerformed(ActionEvent)是MIneArea类实现ActionListener接口中的方法。
当用户单击blockView中的某个方块时,actionPerformed(ActionEvent)方法负责执行有关算法,例如,当用鼠标左键单击方块上的按钮后,若该方块下有雷,actionPerformed (ActionEvent)方法将使用户输掉本局,若该方块下又雷,actionPerformed(ActionEvent)方法将显示BlockView对象中的标签,该标签上是一个数字,该数字代表当前方块的周围的8个方块中总共有多少颗雷·show()方法是一个递归方法。
actionPerformed(ActionEvent)方法执行时将调用show 方法进行扫雷。
·mousePress(MouseEvent)方法是MineArea类实现的MouseListener接口中的方法,当用户按下鼠标右键时,mousePress(MouseEvent)方法负责让方块上显示一个探雷标记。
·inquireWin()方法用来判断用户是否扫雷成功,如果成功该方法负责让record对话框可见。
所谓扫雷成功是指不仅找到了全部的雷而且用时最少。
5.3 Block类5.3.1.效果图Block对象负责封装雷区中方块中的数据以及对这些数据的操作,外观效果由Blockview负责提供(见后面的BlockView)。
5.3.2UML图Block类创建的对象是数组block的单元的对象。
Block型数组block是MineArea类的重要成员之一。
标明Block类的主要成员变量和方法以及和MineArea类之间的组合关系的UML图如下图所示:图5-3-1 Block类的UML图以下是UML图中有关数据的方法的详细说明。
·name是方块上的名字。
·aroundMineNumber是方块周围雷的数目。
·mineIcon是方块上雷的图标。
·sMine用来表示方块是否是雷。
·isMark用来表示方块是否被标记。
·isOpen用来表示方块是否被挖开。
2)方法·setAroundMineNumber(int)方法用来设置aroundMineNumber的值。
·getAroundMineNumber()方法用来获取aroundMineNumber的值。
5.4 BlockView类5.4.1效果图BlockView创建的对象负责为Block对象提供视图,以便用户通过该视图与Block对象交互。
BlockView对象使用一个标签和按钮为Block对象提供视图,标签和按钮按着卡片布局层叠在一起,默认状态按钮遮挡住标签。
当用户单击按钮后,如果Block对象时雷,BlockView对象中的标签显示的事雷的图标;如果Block对象不是雷,标签显示的是周围雷的总数。
效果如下图所示:图5-4-1 BlockView对象5.4.2. UML图BlockView类是javax。
swing包中JPanel类的一个子类,创建的对象是数组blockView 的单元中的对象。
BlockView型数组BlockView是MineArea类的重要成员之一。
标明BlockView类的主要成员变量和方法以及和MineArea类之间的组合关系的UML图如下图所示:图5-4-2 MineArea类的UML图以下是UML图中有关数据的方法的详细说明。