package type;
import java.awt.Color;
import java.util.ArrayList;
public class Cube {
ArrayList<int[][]> list=null;
Color cubeColor;
int cubeType;
int cubeLocationX=3;
int cubeLocationY=0;
int kindOfCube=0;//用于确定当前块的形状
int cubeLooking[][]=new int[4][2];//决定了方块的形状
public Cube(int cubeType,Color color){
cubeColor=color;
this.cubeType=cubeType;
switch(cubeType){
case 0:
list=cubeClass0();
cubeLooking=list.get(0);
break;
case 1:
list=cubeClass1();
cubeLooking=list.get(0);
break;
case 2:
list=cubeClass2();
cubeLooking=list.get(0);
break;
case 3:
list=cubeClass3();
cubeLooking=list.get(0);
break;
case 4:
list=cubeClass4();
cubeLooking=list.get(0);
break;
case 5:
list=cubeClass5();
cubeLooking=list.get(0);
break;
case 6:
list=cubeClass6();
cubeLooking=list.get(0);
break;
default:
break;
}
}
public void setX(int x){
cubeLocationX=x;
}
public void setY(int y){
cubeLocationY=y;
}
public Color getCubeColor(){
return cubeColor;
}
public int [][] getCube(){
return cubeLooking;
}
public int getCubeX(){
return cubeLocationX;
}
public int getCubeY(){
return cubeLocationY;
}
public int getCubeType(){
return cubeType;
}
private ArrayList<int[][]> cubeClass0(){//第一个变量是行数,第二个变量是列数。
// 所以加的时候是Height+行数width+列数
// ■ □ □
// ■ ■ □
// □ ■ □
ArrayList<int[][]> list = new ArrayList<int[][]>();
int[][] cube0={{0,0},{1,0},{1,1},{2,1}};
int[][] cube1={{0,1},{0,2},{1,0},{1,1}};
list.add(cube0);
list.add(cube1);
return list;
}
private ArrayList<int[][]> cubeClass1(){
// □ ■ □
// ■ ■ □
// ■ □ □
ArrayList<int[][]> list = new ArrayList<int[][]>();
int[][] cube0={{0,1},{1,0},{1,1},{2,0}};
int[][] cube1={{0,0},{0,1},{1,1},{1,2}};
list.add(cube0);
list.add(cube1);
return list;
}
private ArrayList<int[][]> cubeClass2(){
// ■ ■ □
// ■ ■ □
// □ □ □
ArrayList<int[][]> list=new ArrayList<int[][]>();
int[][] cube0={{0,0},{0,1},{1,0},{1,1}};
list.add(cube0);
return list;
}
private ArrayList<int[][]> cubeClass3(){
// □ ■ □
// ■ ■ ■
// □ □ □
ArrayList<int[][]> list=new ArrayList<int[][]>();
int[][] cube0={{0,1},{1,0},{1,1},{1,2}};
int[][] cube1={{0,1},{1,0},{1,1},{2,1}};
int[][] cube2={{0,0},{0,1},{0,2},{1,1}};
int[][] cube3={{0,1},{1,1},{1,2},{2,1}};
list.add(cube0);
list.add(cube1);
list.add(cube2);
list.add(cube3);
System.out.println("----------------");
System.out.println(list.get(0)[0][0]);
System.out.println(list.get(1)[0][0]);
System.out.println(list.get(2)[0][0]);
System.out.println(list.get(3)[0][0]);
System.out.println(list.get(0)[0][1]);
System.out.println(list.get(1)[0][1]);
System.out.println(list.get(2)[0][1]);
System.out.println(list.get(3)[0][1]);
System.out.println("----------------");
return list;
}
private ArrayList<int[][]> cubeClass4(){
// ■ ■ □
// ■ □ □
// ■ □ □
ArrayList<int[][]> list=new ArrayList<int[][]>();
int[][] cube0={{0,0},{0,1},{1,0},{2,0}};
int[][] cube1={{0,0},{1,0},{1,1},{1,2}};
int[][] cube2={{0,1},{1,1},{2,0},{2,1}};
int[][] cube3={{0,0},{0,1},{0,2},{1,2}};
list.add(cube0);
list.add(cube1);
list.add(cube2);
list.add(cube3);
return list;
}
private ArrayList<int[][]> cubeClass5(){
// ■ ■ □
// □ ■ □
// □ ■ □
ArrayList<int[][]> list=new ArrayList<int[][]>();
int[][] cube0={{0,0},{0,1},{1,1},{2,1}};
int[][] cube1={{0,0},{0,1},{0,2},{1,0}};
int[][] cube2={{0,0},{1,0},{2,0},{2,1}};
int[][] cube3={{0,2},{1,0},{1,1},{1,2}};
list.add(cube0);
list.add(cube1);
list.add(cube2);
list.add(cube3);
return list;
}
private ArrayList<int[][]> cubeClass6(){
// □ ■
// □ ■
// □ ■
// □ ■
ArrayList<int[][]> list=new ArrayList<int[][]>();
int[][] cube0={{0,1},{1,1},{2,1},{3,1}};
int[][] cube1={{1,0},{1,1},{1,2},{1,3}};
list.add(cube0);
list.add(cube1);
return list;
}
public int getKindOfCube(){
return kindOfCube;
}
public void next() {
// TODO Auto-generated method stub
++kindOfCube;
kindOfCube=kindOfCube%list.size();
cubeLooking=list.get(kindOfCube);
System.out.println("updated"+kindOfCube);
}
public int[][] getCubeStyle(){
return this.cubeLooking;
}
public void copyCubePosition(Cube cube){
this.cubeLocationX=cube.getCubeX();
this.cubeLocationY=cube.getCubeY();
}
public void setKindOfCube(int kindOfCube) {
// TODO Auto-generated method stub
this.kindOfCube=kindOfCube;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
java俄罗斯方块.rar (19个子文件)
eluosifangkuai
.project 390B
bin
type
Cube.class 5KB
panel
FallingPanel.class 4KB
ScorePanel.class 3KB
java.policy.applet 141B
method
Judgement.class 3KB
listener
FallingPanelListener.class 2KB
runable
FallManager.class 1KB
mainFrame
MainFrame.class 1KB
.settings
org.eclipse.jdt.core.prefs 629B
src
type
Cube.java 5KB
panel
ScorePanel.java 2KB
FallingPanel.java 3KB
method
Judgement.java 3KB
listener
FallingPanelListener.java 2KB
runable
FallManager.java 953B
mainFrame
MainFrame.java 1KB
.classpath 301B
俄罗斯方块.jar 23KB
共 19 条
- 1
资源评论
- kelvin_huang2012-12-24有源码不错,可以拿来好好的学习!
- d07281103392012-05-17虚拟机能直接运行的
Elta
- 粉丝: 70
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功