云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 俄罗斯方块论文

俄罗斯方块论文

  • 62 次阅读
  • 3 次下载
  • 2025/12/3 4:52:12

天津市大学软件学院软件工程专业2013届本科生

图5-9 图形模块是设计

其中图一表示为{0,0,0,0, 1,1,1,1 , 0,0,0,0, 0,0,0,0} 其中图二表示为{0,0,0,0, 0,1,1,0 , 0,1,1,0, 0,0,0,0} 其中图三表示为{0,0,0,0, 0,1,0,0 , 0,1,1,1, 0,0,0,0} 其中图四表示为{0,0,0,0, 0,1,0,1 , 0,1,1,0, 0,0,1,0} 方块的旋转是通过绘制4个方向的方块,在不同旋转角度显示不同方向的方块来完成的。所以程序要控制方块的旋转方向,只要控制显示哪副图就可以了。

本游戏是用一个三维数组int[][][] store = new int[][][];作为存储方块的数据结构来保存方块的28种状态的

数据存储模块包括游戏中关卡数据的存储和的分数据的存储。游戏每一次启动都将全部删除上次启动时所产生的数据,重新进行新的数据存储。后台运行时重新进入游戏不算做重启游戏,故数据不会重置。

工具类模块将自身的静态成员或者方法提供给游戏中的其他类使用。

25

天津市大学软件学院软件工程专业2013届本科生

第六章 游戏中各个类中实现的功能

由于在本次游戏的开发中本人对代码的注释比较详尽,故对各个类所实现的功能在代码中都有较详细的注释。

(1)游戏的左、右、下的移动功能和上的变形功能的实现; 由TlieView和TetrisView类来实现代码功能的类: 右移功能实现

public boolean moveRightOnCourt(Court court) {

Log.i(\

for (int i = 0; i < 4; i++) {

for (int j = 0; j < 4; j++) {

if (mTile[i][j] != 0) {

if ( !court.isSpace(mOffsetX + i + 1, mOffsetY + j) ) {

}

左移功能实现

public boolean moveLeftOnCourt(Court court) {

int i,j;

for (i = 0; i < 4; i++) { }

26

}

}

}

}

return false;

++mOffsetX; return true;

for (j = 0; j < 4; j++) { }

if (mTile[i][j] != 0) {

if (!court.isSpace(mOffsetX + i - 1, mOffsetY + j)) { }

}

return false;

天津市大学软件学院软件工程专业2013届本科生

}

mOffsetX--; return true;

下移功能实现

public boolean moveDownOnCourt(Court court) {

int i,j;

for (i = 0; i < 4; i++) {

for (j = 0; j < 4; j++) {

if (mTile[i][j] != 0) {

if(!court.isSpace(mOffsetX+i,mOffsetY+j+1)||isUnderBaseline(mOffsetY+j+1) ){

}

变化功能实现

public boolean rotateOnCourt(Court court) {

tempShape = mShape; if (tempShape % 4 > 0) { }

for (int i = 0; i < 4; i++) {

for (int j = 0; j < 4; j++) {

tempTile[i][j]=

27

}

}

}

}

return false;

mOffsetY++; return true;

int tempX = 0, tempY = 0; int tempShape;

int[][] tempTile = new int[4][4];

tempShape--; tempShape += 3;

} else {

天津市大学软件学院软件工程专业2013届本科生

TileStore.store[tempShape][i][];

if( court.availableForTile(tempTile,tempX,tempY) ) { }

else if (court.availableForTile(tempTile,tempX-1,tempY) )

if (canTurn) {

mShape = tempShape; mOffsetX = tempX; mOffsetY = tempY;

28

}

}

tempX = mOffsetX; tempY = mOffsetY; boolean canTurn = false;

canTurn = true;

{ { { { }

canTurn = true; tempX += 2; canTurn = true; tempX++; canTurn =true; tempX -=2; canTurn = true; tempX--;

}else if(court.availableForTile(tempTile,tempX-2,tempY) )

}else if(court.availableForTile(tempTile,tempX+1,tempY) )

}else if(court.availableForTile(tempTile,tempX+2,tempY) )

搜索更多关于: 俄罗斯方块论文 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
本文作者:...

共分享92篇相关文档

文档简介:

天津市大学软件学院软件工程专业2013届本科生 图5-9 图形模块是设计 其中图一表示为{0,0,0,0, 1,1,1,1 , 0,0,0,0, 0,0,0,0} 其中图二表示为{0,0,0,0, 0,1,1,0 , 0,1,1,0, 0,0,0,0} 其中图三表示为{0,0,0,0, 0,1,0,0 , 0,1,1,1, 0,0,0,0} 其中图四表示为{0,0,0,0, 0,1,0,1 , 0,1,1,0, 0,0,1,0} 方块的旋转是通过绘制4个方向的方块,在不同旋转角度显示不同方向的方块来完成的。所以程序要控制方块的旋转方向,只要控制显示哪副图就可以了。 本游戏是用一个三维数组int[][][] store = new int[][][];作为存储方块的数据结构来保存方块的28种状态的

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com