联系方式: 微信:biyebang QQ: 629001810
基于Java ME无线网络移动端的俄罗斯方块游戏的实现LW,源代码 本系统在Windows XP的操作系统下,以Java Micro EditionWireless Toolkit 2.1为开发工具,用中文版UltraEdit做为代码编辑器而实现的。在KToolBar开发包的DefaultColorPhone模拟器下进行调试。 4.2系统总体结构 系统开发的主要任务是俄罗斯方块游戏在无线移动端的实现。本系统的主要实现功能模块分为:难度选择模块、方块处理模块、游戏规则模块。 4.2.1难度选择模块 用户在title屏按键数字键选择0-9种游戏难度,进入相对应游戏关卡。 方块处理模块定义方块的7种状态,每种状态都是由四个小方块组合而成,如下: 游戏规则模块主要实现俄罗斯方块游戏基本规则。比如,积满一行后消减;能够快速直接的下落;记录游戏最高分;方块翻转;分数计算;随机生成方块,见下图: 中断处理是移动设备程序生命周期的重要组成特性,包括下图三种阶段: 系统实现 本系统由10个类组成并实现全部功能。项目名字为TetrisMidlet,其项目文件结构如下图: 在项目源文件中,src文件夹下为实现系统的源文件。建了两个包作为功能划分,分别为:ui包和model包。 ui包里包含以下类: InfoBox.java 用于显示数字的信息框 TitleBox.java 显示title屏,包含当前高分提示选择一个难度 NextPieceBox.java 显示下一个激活方块 TetrisCanvas.java 处理程序的所有UI DisplayBox.java 在屏幕上显示Box 其结构图如下: 在DisplayBox.java中方法paint()实现了title屏的显示,其代码如下: 其中,TOP_VISIBLE_ROW为TetrisConstants下定义,Y坐标的从行0开始索引的位置,初始值为2。 BLOCK_EMPTY为TetrisConstants下定义的空方块,初始值为-1。 COLOR_BLACK为TetrisConstants下定义的预设RGB颜色,初始值为0x00000000。 COLOR_WHITE为TetrisConstants下定义的预设RGB颜色,初始值为0x00ffffff。
目录
2 游戏系统分析设计
4.1系统解决方案
4.2.1 方块处理模块
4.2.1 游戏规则模块
4.3 游戏中断处理流程
5 系统实现与测试
5.1 系统源文件结构
5.2 难度选择模块
5.2.1 难度选择模块结构
public final void paint(Graphics g) {
g.setColor(this.bgColor);
g.fillRect(x, y, width, height); // box的背景
g.setColor(this.fgColor);
g.drawRect(x, y, width, height); // 边框
this.paintBoxContents(g);}
下面是TerisCanvas.java中绘制方块paintBlock()方法的实现代码:
private void paintBlock(int x, int y, int blockType, Graphics g) {
int blockX = this.boardX + (this.blockSize * x);
int blockY=this.boardY+(this.blockSize* (y - TetrisConstants.TOP_VISIBLE_ROW));
if(TetrisConstants.BLOCK_EMPTY != blockType) {
// 绘制下落时的阴影
g.setColor(TetrisConstants.COLOR_BLACK);
g.fillRect(blockX + 1, blockY + 1, this.blockSize - 1, this.blockSize - 1);
// 绘制一个实际的方块覆盖在阴影上
this.setColor(blockType, g);
g.fillRect(blockX, blockY, this.blockSize - 1, this.blockSize - 1);
} else {
//绘制颜色
g.setColor(TetrisConstants.COLOR_WHITE);
g.fillRect(blockX, blockY, this.blockSize, this.blockSize);}}
版权所有© 帮我毕业网 并保留所有权利