文档详情

《JAVA程序设计》实训报告俄罗斯方块.pdf

发布:2017-06-19约3.82万字共36页下载文档
文本预览下载声明
《Java程序设计》实训报告 —— 《俄罗斯方块》 一、实训任务及要求: 1.1、实训任务 1.运用Java实现小游戏的开发 2.了解Java开发项目的流程 3.掌握规划,设计,开发,测试的能力 1.2、实训要求 熟悉java的编程环境J2SDK,掌握Application 和Applet的程序结构,并 能熟练编写和调试两类程序。熟练使用各种常用类库。理解JDK 的事件处理机制, 掌握java.awt 、javax.swing,javax.swing.event中的GUI标准组件的用法, 学会合理运用布局策略、综合运用各种界面元素,编程构造满足应用需要的图形 工作界面。 二、需求分析: 1.课程设计的目的和意义 俄罗斯方块游戏是一个经典的小游戏,由于它简单有趣,因而得到了广泛的 流行,男女老幼都适合。而俄罗斯方块游戏的设计工作复杂且富有挑战性,它包 含的内容多,涉及的知识广泛,与图形界面联系较大,包括界面的显示与更新、 数据收集等,在设计的过程中,必将运用到各方面的知识,这对于visualbasi 语言设计者而言,是个很好的锻炼机会。 2.系统功能设计 1. 本系统主要设计以下几种功能 2. 1、游戏难度选择功能 3. 游戏难度选择界面设置在程序运行开始时,一共有九种难度供玩家选择,每 选一级难度,都会相应地显示出代表该难度的图片。开始时不设置任何默认 的难度,如果玩家不选难度直接按 “Enter”进入,将会弹出提示框,提示 其先选难度再进入。 4. 2、方块下落、变形功能 5. 在整个俄罗斯方块游戏中,方块的设计是核心。这里设计了一个方块类: Square( ),用来生成方块以及实现块的左移、右移、向下、变形、重画、 同步显示、初始化新块等。 6. 3、自动升级功能 7. 当分数累积到一定大小时,系统将自动为玩家提高难度。这里设置了每消除 10行方块,就增加一级难度。当难度增加的时候,方块会相应地改变颜色, 以作为对玩家的提示。 8. 4、游戏音乐功能 9. 游戏开始音乐就自动播放,游戏暂停与结束时音乐相应消除。 10.5、获取帮助功能 11.这里设置了一个类,用来显示帮助,按F1键就能弹出窗口,显示游戏规则。 3.系统功能设计分析 1. 俄罗斯方块游戏根据功能的不同,设置了如下12个类:Square, Command, GameArea,GameSetting,GameOver,Help, ImagePanel,JieMian,MyPanel, MyTimer, PlayMidi, WinListener,每个类的描述如下: 2.1、Square,方块类。这个类中定义了生成方块的方法,用二维数组int[][] pattern,存放7种方块的四种状态。在构造方法中以随机的形式生成方块,同 时提供了以下几种方法:reset(),leftTurn(),leftMove(),rightMove(), fallDown(),assertValid(intt,ints,introw,intcol),dispBlock(ints)。 分别实现方块的重画、翻转、左移、右移、下落、同步显示等功能。 2.2、Command,处理控制类。这是一个实现ActionListener接口的类,主要处 理点击按钮事件。类中定义了三个 int型变量:button_play,button_quit, button_pause,和一个boolean型的变量:pause_resume,并赋值。在GameArea 类中通过事件响应,在按钮执行方法中调用其值,使用switch语句,根据不同 按钮不同的值,来响应不同的事件。 2.3、GameArea,游戏界面类。GameArea继承了JFrame,是俄罗斯方块的主要游 戏界面。这个类定义了GameSetting 类的gameScr 对象和 ImagePanel类的 imagepanel对象作为游戏区域面板和控制区域面板。在游戏区域,主要是根据 相应格子的设置标志来显示相应的图形图片,这样就实现了俄罗斯方块的实时显 示。 2.4、GameSetting, 游戏画布类。这个类生成的对象将作为游戏界面的方块下落 区域,画布的设置为15行10列,当中的方格边长为30,类中还定义了一个二 维数组int [][]scrArr作为屏幕数组,表示每一个方格。游戏区域中每一个方 格是否存在游戏方块是由该方格的值来决定的,如果该方格的值为
显示全部
相似文档