品牌 | 其他 | 语言 | JAVA | 数据库 | MySql | 布局 | PC |
大小 | 70 MB | 规格 | 整站源码 | 授权 | 免授权 | 源文件 | 完全开源 |
项目简介:
Swing API 是一组可扩展的 GUI 组件,用来创建基于 JAVA 的前端/ GUI 应用程序。它是建立在 AWT API 之上,并且作为 AWT API 的替代者,因为它的几乎每一个控件都对应 AWT 控件。 Swing 组件遵循模型 - 视图 - 控制器架构来满足下面的准则。一个单一的 API 足够支持多种外观和风格;API 是模拟驱动的,这样最高层级的 API 不需要有数据;API 是使用 Java Bean 模式的,这样 Builder Tools 和 IDE 可以为开发者提供更好的服务来使用它。
俄罗斯方块游戏开发代码相对来说不是特别复杂,本论文基于Java编程语言,采用Java语言中常用的Swing组件。Swing是Java中的图形用户界面(GUI)工具包,是Java基础类的一部分,包括了文本框,分隔窗格,按钮,表等GUI器件,使用纯Java写成,开发人员可以用少量的代码就可以写出Swing各式各样的灵活丰富的功能和模块化组件来创建漂亮优美的用户界面。Java Swing组件中包括以下几个常用的类:JFrame 是屏幕上的图形对象,可以有最大化、最小化、关闭等基本操作,是Java的GUI程序设计的基本思路;JPanel 能够用来嵌套,对窗体中有相同逻辑功能的组件进行组合,能够加到JFrame窗体中,是Swing中的面板容器类。 JLabel 对象是用来显示文本、图像或同时显示二者并且可以设置其中的一些属性;JTextField是一个用来编辑单行文本的运行组件;JButton是一个用来创建按钮的类。除此之外,Java中的Swing组件中还包含有许多功能的类,可以简单的来创建一些优美漂亮的图形界面。
整个游戏系统会随机产生7种由四个小方块组成的不同形状的方块,经过旋转后得到28种状态,如果增加游戏难度,会增加六种不同形状的方块形状,同样经过旋转后增加24种状态。方块按一定的速度自由下落,玩家通过键盘上的上下左右按键控制方块的左右移动和旋转,将方块落下后放在合适的位置。当方块落下后,如果方块落下后有一整行被方块填满,那么该一整行消去。当一行被消去时,玩家得分增加10分,当得分达到100分后,玩家等级增加一级,速度加快一级,难度加大。如果当方块落下后整个游戏画布界面被占满,则方块不再下落,游戏宣告失败。游戏具体的功能需求有如下几个:
▪ 游戏界面需求:游戏的良好的界面会让玩家眼前一亮,更加能充分的感受到游戏带来的娱乐性,放松性。本游戏的默认背景色是深绿色,游戏主界面画面自定义为自己的所喜欢的图片,并可以更改,主界面方块默认用橘黄色,预显方块颜色默认为淡紫色。背景色、前景色对比鲜明,以达到让玩家眼前一亮的感觉,并能在游戏达到高等级状态,方块下落速度渐高的情况下使玩家能够清楚的分辨出下落方块的形状,增加游戏的刺激性。
▪ 游戏形状需求:用数组作为存储方块52种状态的数据结构,即初级等级长条形、Z字形、反Z形、田字形、7字形、反7形、T字型一共7种形状的向4个方向的旋转变形,和中级等级的三种方块12种不同的状态,高级等级的三种方块12种不同的状态。各个方块可以实现按逆时针的旋转方式旋转,并且方块能否旋转需要用条件加以判断,如果旋转后可能发生越界,则不能旋转,需要调整位置来保证他可以旋转。
▪ 键盘处理事件需求:当方块下落时,玩家可以通过键盘上的方向键:上键实现旋转,下键实现加速下落,左键实现左移,右键实现右移,和空格键实现一键下落,字母P键实现暂停,字母C键实现继续等一系列的操作。
▪ 鼠标处理事件需求:通过鼠标,可以点击控制面板中的菜单按钮和帮助按钮,选择菜单栏的菜单项,可以实现游戏的开局,选择游戏等级,更改游戏中方块的颜色显示,游戏主界面背景色和前景色的显示,更改游戏背景图片,方块下落速度,是否播放游戏中的声音等一系列的功能。
▪ 显示需求:本游戏程序的显示需求是要求当方块落下后填满一整行,则该行消除,其余剩下的未填满的行自动逐次向下移动,消去一行右界面得分增加十分,当分数增加到100分时,等级增加一等级。当方块落下叠加到主界面的全部所有行时,方块不再下落,游戏结束,主界面提示“Game Over”字样。
Swing特点主要有:轻量级、丰富的控件、高级自定义、可插拔的外观和风格。
1>运行程序,点击右侧控制面板内的“开始”或“控制”菜单内的“开始”按钮开始游戏。
2>使用上、下、左、右键和空格键,P键,C键控制方块的变形、下落、向左和向右移动和一键迅速下落,暂停,继续。
3>方块满行消除,分数自动增加,等级自动增加一级。
4>等级增加、方块下落速度增加,按右侧控制面板或“游戏”菜单内的“初级”“中级”,“高级”按钮来手动改变游戏难易程度。也可点击“方块颜色”菜单内的选项,更改方块颜色等,也可以通过“自定义”菜单内的选项,来更改游戏的一些属性。
5>按键盘键字母P键可以控制游戏暂停,然后按子母键C键可以控制游戏继续上次游戏。按“结束游戏”按钮,游戏会彻底停止正在进行的当局游戏,再按“开始”或“控制”菜单内的“重新开始”会开始新游戏。
6>当方块占满整个窗口,不能再有新方块下落时,游戏会弹出“Game Over”的对话框提示游戏结束。
功能介绍:
俄罗斯方块项目,基本功能包括:游戏主界面显示模块、方块及数据显示模块、方块移动控制模块、游戏界面颜色控制模块、游戏进度、等级控制模块等。本项目结构如下:
(1)游戏主界面显示模块:
显示游戏和帮助两个菜单;
游戏使用功能键盘,得分 等级;
(2)画布、方块显示模块:
可以根据自己的需求来自己动手更改背景图片,在方块下落过程中,根据颜色的变化识别下落的方块。
(3)背景画布模块设计:
游戏用继承自JPanel的GameCanvas类控制背景画布的显示,用rows代表画布的行数,cols代表画布的列数,行数和列数决定着画布拥有方格的数目;
(4)方块移动、旋转模块
通过更改横坐标或纵坐标,然后重新绘制方块实现方块移动、旋转
项目截图: