Java课程设计PPT-扫雷游戏

合集下载

JAVA课程设计扫雷含代码

JAVA课程设计扫雷含代码

0
随机生成:使用随 机数生成器生成地 图
地图大小:根据游 戏难度设置地图大 小
地雷分布:在地图 上随机分布地雷
标记地雷:在地图 上标记地雷位置, 方便玩家识别
雷区标记逻辑
初始化:创建雷区数组,设置初始状态 标记雷区:当玩家点击雷区时,标记为雷区 更新雷区:当玩家点击非雷区时,更新雷区状态 判断胜负:当所有非雷区都被标记时,游戏结束,判断胜负
游戏结束:当所有非雷方格都被点击,或者玩家踩到雷时,游戏结束
游戏界面设计
游戏界面分为两个部分:游戏区和菜单区 游戏区显示游戏地图和地雷位置 菜单区包括开始游戏、暂停游戏、重新开始、退出游戏等按钮 游戏界面采用简洁明了的设计风格,易于玩家操作和理解
游戏流程控制
初始化游戏:创建游戏界面,设置游戏参数 玩家输入:接收玩家输入的坐标,判断是否合法 游戏逻辑:根据玩家输入,更新游戏状态,判断是否触发雷 游戏结束:判断游戏是否结束,显示游戏结果 重新开始:提供重新开始游戏的选项,重新开始游戏流程
05
JAVA扫雷游戏代码实 现
游戏主程序代码实现
初始化游戏界面 生成随机雷区 玩家点击操作 判断输赢条件 游戏结束处理
游戏地图类代码实现
初始化地图,设置地雷位置 和状态
创建游戏地图类,定义地图 大小和地雷数量
实现地图显示,绘制地雷和 空白区域
实现地图更新,根据玩家操 作更新地雷状态和显示
游戏雷区类代码实现
感谢您的观看
汇报人:
兼容性:测试游戏在不同操作系统 和硬件配置下的兼容性
添加标题
添加标题
添加标题
添加标题
稳定性:测试游戏在长时间运行下 的稳定性
用户体验:测试游戏的易用性和用 户体验

java课程设计扫雷

java课程设计扫雷

java课程设计扫雷一、课程目标知识目标:1. 让学生掌握Java基础语法,包括变量声明、数据类型、运算符和流程控制语句;2. 培养学生运用面向对象编程思想,掌握类与对象的基本概念,以及继承、封装和多态等特性;3. 通过扫雷游戏的案例,让学生学会使用二维数组处理游戏逻辑。

技能目标:1. 培养学生运用所学知识独立编写程序的能力,实现扫雷游戏的主体功能;2. 提高学生分析问题、解决问题的能力,学会运用模块化思维进行编程;3. 培养学生团队协作意识,学会在项目中分工合作、共同完成项目。

情感态度价值观目标:1. 培养学生对编程的兴趣,激发学习热情,形成积极向上的学习态度;2. 培养学生面对困难敢于挑战、勇于克服的精神,增强自信心;3. 培养学生遵守编程规范,养成良好的编程习惯。

本课程针对高年级学生,在已有Java基础知识的基础上,通过设计扫雷游戏项目,使学生在实践中巩固和提高所学知识。

课程注重培养学生的编程技能、团队协作能力和解决实际问题的能力,同时关注学生的情感态度价值观培养,使学生在轻松愉快的氛围中学习编程。

课程目标具体、可衡量,为教学设计和评估提供明确方向。

二、教学内容1. Java基础语法复习:变量声明、数据类型、运算符、流程控制语句(包括条件语句、循环语句等);2. 面向对象编程:类与对象、构造方法、继承、封装、多态;3. 二维数组:声明、初始化、遍历、应用;4. 游戏设计原理:游戏循环、事件处理、界面设计;5. 扫雷游戏项目开发:需求分析、模块划分、编码实现、测试与优化。

教学内容参考教材相关章节,结合课程目标进行组织。

教学大纲安排如下:1. 复习Java基础语法(1课时);2. 面向对象编程知识讲解与练习(2课时);3. 二维数组知识讲解与练习(1课时);4. 游戏设计原理介绍(1课时);5. 扫雷游戏项目开发:需求分析、模块划分(1课时);6. 扫雷游戏项目开发:编码实现、测试与优化(3课时)。

Java 课程设计 扫雷

Java 课程设计 扫雷

自己写用Java写的扫雷游戏-----------做课程设计的可以参考一下。

运行界面截图:扫雷游戏主界面以下是游戏代码(共分三个文件即三个类:MySaoLei.java;Area.java 和ZiDingYi.java)://(1) MySaoLei.javapackage com.test;import java.awt.*;import javax.imageio.ImageIO;import javax.swing.*;import javax.swing.border.Border;import javax.swing.border.LineBorder;import java.awt.event.*;import java.io.File;import java.security.acl.Owner;import java.util.*;public class MySaoLei extends JFrame implements ActionListener,MouseListener{ //w表示横向可以放多少雷,h表示纵向可以放多少雷static int w=35,h=20;//设置雷的个数static int leisum=180;//用二维向量a[][]来存放雷Area a[][]=null;//win用于判断是否完成扫雷int win=0;Image image = null;JPanel jp=null;JPanel jp0=null;JMenuBar jmb;JMenu jm1,jm2;JMenuItem jm1_1,jm1_2,jm1_3,jm1_4,jm1_5,jm2_1; //主函数public static void main(String[] args) {// TODO Auto-generated method stubMySaoLei msl = new MySaoLei(w,h,leisum);}///////////////////////////////////////////////////构造函数public MySaoLei(int w,int h,int leisum){a=new Area[h][w];this.w=w;this.h=h;this.leisum=leisum;jmb=new JMenuBar();jm1=new JMenu("游戏(G)");jm1_1=new JMenuItem("初级");jm1_1.addActionListener(this);jm1_2=new JMenuItem("中级");jm1_2.addActionListener(this);jm1_3=new JMenuItem("高级");jm1_3.addActionListener(this);jm1_4=new JMenuItem("自定义");jm1_4.addActionListener(this);jm1_5=new JMenuItem("退出");jm1_5.addActionListener(this);jm1.add(jm1_1);jm1.add(jm1_2);jm1.add(jm1_3);jm1.add(jm1_4);jm1.add(jm1_5);jm2=new JMenu("帮助(H)");jm2_1=new JMenuItem("游戏规则"); jm2_1.addActionListener(this);jm2.add(jm2_1);jmb.add(jm1);jmb.add(jm2);//创建一个网格布局g1GridLayout gl=new GridLayout(h,w); gl.setHgap(1);gl.setVgap(1);jp=new JPanel();jp.setLayout(gl);//初始化雷区for(int i=0;i<h;i++){for(int j=0;j<w;j++){a[i][j]=new Area();a[i][j].addActionListener(this);a[i][j].addMouseListener(this);a[i][j].show(0);jp.add(a[i][j]);}}//添加每个按钮周围的按钮addAround();//设置雷int ii=0;int jj=0;for(int i=0;i<leisum;i++){ii=(int)(Math.random()*h);jj=(int)(Math.random()*w);a[ii][jj].isLei=1;a[ii][jj].Type=9;}//给每个按钮写上数据for(int i=0;i<h;i++){for(int j=0;j<w;j++){if(a[i][j].isLei==0){a[i][j].Type=getAroundsum(a[i][j]);}}}/////////////////////////////////////////////////////////////////////设置JFrametry{//image =ImageIO.read(new File("/me.jpg"));image=Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/me.jpg")) ;this.setIconImage(image);}catch(Exception e){e.printStackTrace();}this.setJMenuBar(jmb);this.add(jp);this.setSize(w*35+10,h*35);this.setLocation(10, 10);this.setTitle("韦德爱扫雷");this.setIconImage(image);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setVisible(true);}//为每个按钮添加周围的按钮的函数public void addAround(){for(int i=0;i<h;i++){for(int j=0;j<w;j++){a[i][j].around=new Vector<Area>();if(i>0 && j>0){//左上角a[i][j].around.add(a[i-1][j-1]);//System.out.println(i+" "+j+"左上角");}if(j>0){//上方a[i][j].around.add(a[i][j-1]);//System.out.println(i+" "+j+"上方");}if(i<h-1 && j>0){//右上角a[i][j].around.add(a[i+1][j-1]);//System.out.println(i+" "+j+"右上角");}if(i<h-1){//右边a[i][j].around.add(a[i+1][j]);//System.out.println(i+" "+j+"右边");}if(i<h-1 && j<w-1){//右下角a[i][j].around.add(a[i+1][j+1]);//System.out.println(i+" "+j+"右下角");}if(j<w-1){//下方a[i][j].around.add(a[i][j+1]);//System.out.println(i+" "+j+"下方");}if(i>0 && j<w-1){//左下角a[i][j].around.add(a[i-1][j+1]);//System.out.println(i+" "+j+"左下角");}if(i>0){//左边a[i][j].around.add(a[i-1][j]);//System.out.println(i+" "+j+"左边");}}}}//得到按钮周边雷的个数的函数public int getAroundsum(Area area){int sum=0;Area a=null;for(int i=0;i<area.around.size();i++){a=area.around.get(i);if(a.isLei==1)sum++;}return sum;}//自动挖开空白区域public void wakai(Area a){Area a2=null;for(int i=0;i<a.around.size();i++){a2=a.around.get(i);if(a2.show==0 && a2.Type!=0){a2.show(1);}if(a2.show==0 && a2.Type==0){a2.show(1);wakai(a2);}}}//判断是否完成扫雷的函数public void win(){//判断是否挖完win=0;for(int i=0;i<h;i++){for(int j=0;j<w;j++){if(a[i][j].isLei==1 && a[i][j].show!=2){win++;}}}if(win==0){for(int i=0;i<h;i++){for(int j=0;j<w;j++){if(a[i][j].isLei==0 && a[i][j].show==0)a[i][j].show(1);}}JOptionPane.showMessageDialog(this, "恭喜你!扫雷完成!");}}//菜单响应函数public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubif(e.getSource()==jm1_1){new MySaoLei(20,15,60);this.dispose();}if(e.getSource()==jm1_2){new MySaoLei(30,18,90);this.dispose();}if(e.getSource()==jm1_3){new MySaoLei(35,20,140);this.dispose();}if(e.getSource()==jm1_4){ZiDingYi zdy=new ZiDingYi(this,"自定义游戏等级",true);if(zdy.closeOwner)this.dispose();}if(e.getSource()==jm1_5){this.dispose();}if(e.getSource()==jm2_1){//System.out.println("点击了游戏规则");String message="游戏规则:\n每个小方块上都可能是雷、1~8的数字或者空白(空白表示0)。

JAVA课程设计扫雷

JAVA课程设计扫雷

J A V A课程设计扫雷(总21页) -CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除Java程序课程设计任务书1.设计内容及要求扫雷游戏的基本要求Windows 2000/XP系统提供的扫雷游戏是一个很有趣的游戏。

本章的课程设计使用Java语言编写一个与其类似的扫雷游戏。

具体要求如下:(1)选择级别后将出现相应级别的扫雷区域,这是用户使用鼠标左键单击雷区中任何一个方块便启动计时器。

(2)用户要揭开某个方块,可单击它。

若所揭方块下有雷,用户便输了这一局,若所揭方块下五雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。

(3) 如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。

用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。

(4)扫雷胜利后,显示游戏胜利。

(5) 用户可以右击空格,可以选择标记为“旗帜”、“问号”或者返回成空格。

计划进度1. 12月28日-- 12 月28日:搜集资料、查阅文献,确定选题2. 12月29日-- 12月29日:需求分析,系统设计,系统功能模块完善3. 12月30日-- 1月 1日:编程实现系统、系统测试与修改4. 1月2日-- 1月3日:课程设计报告撰写5. 1月7日-- 1月7日:课程设计报告答辩任务分工需实现的主要功能(1)用户点击笑脸实现复位操作。

调用repaint()和validate()函数对界面进行重置以及刷新操作(2)可以显示用户完全扫雷成功所花时间。

文本框TF记录扫雷成功所花的时间(3)在失败和胜利后跳出失败或胜利的文本框JoptionPane 该类用来调出对话框并提示胜利2.需求分析扫雷棋盘的布局设计系统的整体布局为:CardLayout布局, 采用了文本框、按钮、面板、框架…等组件,菜单主要有run按钮笑脸和哭脸,按钮的功能是重新开始新的游戏。

Java课程设计报告-扫雷小游戏

Java课程设计报告-扫雷小游戏

JAVA语言课程设计报告题目:扫雷小游戏设计者:专业班级:学号:指导教师:2011年12月12日计算机学院目录:1.设计内容及要求 (1)1.1.扫雷小游戏的基本要求 (1)1.2 需求实现的主要功能 (1)2.需求分析 (1)2.1 扫雷区域的布局设计 (1)2.2 雷区的设计 (1)2.3 音效的设计 (1)3.总体设计 (2)3.1总体功能图 (2)3.2游戏设计流程图 (2)4.主要功能设计 (3)4.1 雷区设计流程图 (3)4.2 音效设计流程图 (4)4.3 排行榜设计流程图 (5)5.代码实现 (6)5.1 类之间的关系图 (6)5.2 各界面图及代码: (6)5.2.1 游戏菜单界面 (6)5.2.2 游戏登录界面(初级、中级、高级) (8)5.2.3自定义扫雷界面 (15)6.扫雷总结 (18)7.参考文献 (18)1·设计内容及要求1.1·扫雷小游戏的基本要求扫雷小游戏主要采用Java语言编写,适合windows XP 以下的系统,以eclipse 为平台。

具体要求如下:<1>扫雷小游戏分为初级、中级和高级三个级别,扫雷排行榜保存着每个级别的最好成绩,即挖出全部的地雷并且用时最少。

单机游戏菜单选择“初级”、“中级”和“高级”。

<2>游戏默认的是初级级别,用户可以选择不同级别将出现对应级别的扫雷区域,单击扫雷区域任一方格以便启动计时器。

<3>用户选择某个方格,单击它就行。

若所选择的放阁下有雷,这一局就结束了,若所选择方格下无雷,则会显示一个数字,该数字代表方格周围8个方格中共有几颗雷。

<4>如果用户认为某个方格下有雷,单击右键可以在方格上标记一个用户认为是雷的图标(一个小旗子)。

<5>用户可以选择标记为疑问的方格,可以选择游戏菜单下的标记,或者双击右键所选方格显示(?)图标。

<6>扫雷完成后,程序弹出保存成绩的对话框,用户可以根据自身选择是否保存。

扫雷实训PPT

扫雷实训PPT
2、编程的进程肯定会遇到困难,我们充分利用 了互联网和书籍这些现有的资源,给了我们很大 的帮助。
3、要有团队合作精神,很感谢我的队友在这次 实训中给予我的帮助。
小组讲解完毕
谢谢大家!
雷剩余量的显示
• 使用一个变量记录雷的数量,每一次游戏开始对雷的数量进行初始化 ,之后没标记一个雷就对变量实行减一,当雷数为0时,游戏结束。
扫雷时间的记录
• 通过javax.swing.timer组件的使用,创建了一个计时器工具,用以记录 扫雷的时间,游戏开始时计时器初始化,并开始计时。游戏结束时, 计时器停止。
扫雷游戏系统功能描述
• 扫雷游戏是一款相当大众的小游戏,游戏目标是在最短的时间内根据点击格子 出现的数字找出所有非雷格子,同时避免踩雷。游戏区包括雷区、地雷计数器 (位于左上角,记录剩余地雷数)和计时器(位于右上角,记录游戏时间), 确定大小的矩形雷区中随机布置一定数量的地雷(初级为9*9个方块10个雷,中 级为16*16个方块40个雷,高级为16*30个方块99个雷),玩家需要尽快找出雷 区中的所有不是地雷的方块,而不许踩到地雷。游戏的基本操作包括左键单击 (Left Click)、右键单击(Right Click)两种。其中左键用于打开安全的格 子,推进游戏进度;右键用于标记地雷,以辅助判断。
扫雷实训项目任务列表
• 根据项目分析功能、分配功能代码负责人,制作项目进度计划 表
• 游戏等级设置,能够设置初级、中级、高级三种模式的扫雷 • 扫雷过程能够实现雷的剩余量显示 • 扫雷过程能够实现扫雷用时提示 • 成功完成扫雷,能够记录当前用户的扫雷时间 • 能够调取扫雷记录,显示扫雷用时排行榜 • 分析并制作讲解PPT • 写实训项目总结,整理项目文档
• 扫雷完成后的记录玩家信息与使用时间,并能够在排行榜中显示。通 过JOptionPane组件实现在游戏完成时弹出,并要求玩家输入姓名,并 调用以停止的计数器数据并保存起来。通过点击排行榜菜单可以调出 排行榜信息。

java_扫雷游戏课程设计报告(共5篇)

java_扫雷游戏课程设计报告(共5篇)

java_扫雷游戏课程设计报告(共5篇)第一篇:java_扫雷游戏课程设计报告一、设计任务与要求扫雷游戏的基本要求Windows 2000/XP系统提供的扫雷游戏是一个很有趣的游戏。

本章的课程设计使用Java语言编写一个与其类似的扫雷游戏。

具体要求如下:(1)扫雷游戏分为初级、中级和高级三个级别,扫雷英雄榜存储每个级别的最好成绩,即挖出全部的地雷且用时最少者。

单击游戏菜单可以选择“初级”、“中级”和“高级”或“查看英雄版”。

(2)选择级别后将出现相应级别的扫雷区域,这是用户使用鼠标左键单击雷区中任何一个方块便启动计时器。

(3)用户要揭开某个方块,可单击它。

若所揭方块下有泪,用户便输了这一局,若所揭方块下五雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。

(4)如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。

用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。

(5)扫雷胜利后(用时最少者),程序弹出保存成绩的对话框。

(6)用户可以选择标记疑问的方块,用可以勾选游戏菜单下的标记(或者用快捷键alt+G 然后M)即可,此时双击右键并可出现“?”标记。

另有颜色选项,当用户勾选此项时,游戏将以最低图像像素来显示。

(7)如果用户需要即使提示声,并可选中声音选项,此时将听到计时的卡塔声。

当用户点中雷时,将有爆炸声产生,胜利时,将有凯旋的旋律播放,此时企鹅出现欢悦表情。

二、需求分析1、扫雷游戏概述扫雷是一种具有迷惑性的对记忆和推理能力的简单测试,它是长久以来最受欢迎的Windows游戏之一。

游戏目标:找出空方块,同时避免触雷。

2、扫雷的操作方法游戏主区域由很多个方格组成。

使用鼠标随机点击一个方格,方格即被打开并显示出方格中的数字;方格中数字则表示其周围的8个方格隐藏了几颗雷;如果点开的格子为空白格,即其周围有0颗雷,则其周围格子自动打开。

《扫雷游戏制作》课件

《扫雷游戏制作》课件
扫雷游戏的发展经历了多个阶段,从最初简单的版本到现在的复杂版本,不断有新 的玩法和功能被加入。
游戏规则与玩法
扫雷游戏的目标是在尽可能短的时间 内找出所有隐藏的地雷,而不触碰到 任何地雷。
如果玩家打开的方块中包含地雷,则 游戏结束。玩家需要记录下所用的时 间、步数等信息,与其他玩家进行比 较。
游戏通常在一张网格地图上进行,玩 家需要通过点击或拖动鼠标来打开方 块,如果方块中没有地雷,则可以继 续打开相邻的方块。
测试与优化
完成编码后,需要进行测试和优 化,确保游戏运行稳定、性能良 好。
03
游戏设计要素
游戏画面设计
01
02
03
游戏画面风格
选择适合扫雷游戏风格的 画面风格,如简约、卡通 等,以提升游戏体验。
界面布局
合理规划游戏界面布局, 包括雷区、数字显示等, 确保玩家在游戏过程中能 够快速获取相关信息。
图形与动画效果
游戏状态管理
管理游戏状态,包括玩家状态、游戏进度等,确保游戏运行的稳定性和正确性 。
05
游戏测试与优化
游戏测试方法
单元测试
对游戏中的各个模块进行单独测 试,确保每个模块的功能正常。
集成测试
将各个模块组合在一起进行测试 ,确保模块之间的协调和兼容性

用户验收测试
邀请真实用户参与测试,从用户 的角度发现游戏存在的问题和改
《扫雷游戏制作》ppt课件
目 录
• 扫雷游戏简介 • 游戏开发基础 • 游戏设计要素 • 游戏编程实现 • 游戏测试与优化 • 游戏发布与运营
01
扫雷游戏简介
游戏起源与发展
扫雷游戏起源于20世纪70年代的美国,最初是为了训练计算机逻辑思维能力而设计 的。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

变量意义 返回后重新开始 每插一旗变量加一 判断是否赢
判断是否结束 是否有雷的标志 方块周围雷数 雷坐标 判断是否插旗
具体设计—类结构
MyPanel类——成员变量
变量类型 int int Int[] Int[]
名称 check check_x,check_y clicked clearFlag
变量意义 判断插旗是否正确 插旗错误点的坐标 判断是否点击过 判断是否已经清除 过
系统运行
图中为游戏初始界 面,界面下部显示炸弹 数、操作说明、重玩键。 点击REPLAY可重新开 始游戏
系统运行
图中为游戏中界面, 方块中显示的数字为以 此方格为中心的九宫格 的雷数,根据此数字可 以判断出未挖开的方块 是否有雷
系统运行
图中为游戏结束界 面,此时雷区为灰色, 不允许点击,界面下部 显示GameOver,雷区 中的红点表示导致游戏 结束的雷
具体设计—类结构
IndexPanel类——成员方法
方法名称 IndexPanel paint mousePressed mouseReleased
功能
备注
初始化参数
构造方法
绘出游戏界面
实现鼠标单击事件 接口方法
实现鼠标释放事件 接口方法
心得体会
心得体会
Java程序语言设计一种可以撰写跨平台应用软件的面 向对象的程序设计语言。在这次的课程设计中不仅检验了 我们所学习的知识,也学会了完成一件事情的方法和技巧。 在设计过程中,和同学们相互探讨,相互学习,相互监督。 学会了宽容,学会了理解,课程设计是我们专业课程知识 综合应用的实践训练,着是我们迈向社会,从事职业工 作、 一个必不少的过程.通过这次课程设计,明白除了日常的 理论学习,还要多实践,把所学的知识运用在真正的实践 上。而完成课程设计,不仅是对我们学习情况的检验,也 是对自己的一次考验。
开始界面通过paint函数在画布上定位画出,通过鼠标监 听事件实现功能
总体设计—系统结构
本系统共有3个JAVA源文件,1个图像文件 Index.java文件
该文件用于启动系统,生成MyPanel对象及IndexPanel 对象,含有main方法,游戏从该类开始执行 MyPanel.java文件
该文件用于对雷区做界面绘制及功能定义 IndexPanel.java
方法名称 MyPanel paint
mousePressed clear keyPressed
功能
备注
初始bombCount变量 构造方法
绘出雷区,初始化雷区,系统核心部分,
及定义雷区功能,包括 使用了窗口定位,
插旗、判断输赢等
绘画等技术
实现鼠标点击事件,挖 接口方法 开方块
清除点击处周围安全非 提示方块
实现键盘事件,插旗 接口方法
具体设计—类结构
IndexPanel类——成员变量
变量类型 long boolean boolean boolean
名称 serialVersionUID buAdd buDec buPlay
变量意义
增加雷按钮值 减少雷按钮值 玩游戏按钮值
总体设计
设计思路
具体设计
总体设计—设计原理
设计原理: 系统整体使用CardLayout布局,通过设置setVisible控
制窗口的转换。 雷区是在画布上以20为单位绘画出来的区域。雷区中每
个方块都顺序从0~17*24-1编号,布雷使用随机产生 0~17*24-1的随机数,在该编号为该随机数的方格上布雷。
JAVA程设计
——扫雷游戏
方琴、薛中意、刘莉虹、程子卿
系统简介 系统设计 心得体会
系统使用
系统简介
系统运行
系统使用
使用方法:打开游戏界面,选择雷数开始游戏, 游戏时点击鼠标左键挖雷,敲击键盘 空格键做标记雷,最后标记出所有雷, 且期间未挖到雷者获胜,否则失败
系统使用运行
图中为游戏开始界 面,可以自定雷数,点 击PLAY开始游戏,使用 淡蓝色背景、图片使系 统更加美观
该文件用于对开始界面进行绘制
具体设计—类结构
Index类——成员变量
变量类型 IndexPanel
名称 panel1
MyPanel
panel2
变量意义
开始界面对象,在 主类中生成
雷区界面对象,在 主类中生成
具体设计—类结构
Index类——成员方法
方法名称 main
功能
备注
启动整个系统,初始 化雷区及开始界面
具体设计—类结构
MyPanel类——成员变量
变量类型 int int int long int int[] int[] Int[] Int[]
名称 replay win gameWin serialVersionUID gameOver bombFlag count bomb_x,bomb_y hadFlag
相关文档
最新文档