📄 cube.java
字号:
package russion;/** * <p>Title: RussionCube</p> * <p>Description: TheClassicGame</p> * <p>Copyright: Copyright (c) 2002</p> * <p>Company: Cqu</p> * @author Ghostliang * @version 1.0 */import java.awt.*;public class Cube{ private int startRow,startCol; private Position[] blocks = new Position[4]; private int blockSize; private int style; private Color backGround; private int total; public static Color[] colors = {Color.red,Color.orange,Color.gray,Color.green, Color.blue,Color.pink,Color.magenta,Color.white}; public Cube(int startRow,int startCol,int blockSize,int style,Color[] colors) { this.startRow = startRow; this.startCol = startCol; this.blockSize = blockSize; this.style = style; this.colors = colors; backGround = colors[style]; switch(style) { //line case 0: this.total = 4; blocks[0] = new Position(1,0); blocks[1] = new Position(1,1); blocks[2] = new Position(1,2); blocks[3] = new Position(1,3); break; //square case 1: this.total = 2; blocks[0] = new Position(0,0); blocks[1] = new Position(0,1); blocks[2] = new Position(1,0); blocks[3] = new Position(1,1); break; //7 case 2: this.total = 3; blocks[0] = new Position(1,0); blocks[1] = new Position(1,1); blocks[2] = new Position(1,2); blocks[3] = new Position(0,2); break; //turn 7 case 3: this.total = 3; blocks[0] = new Position(1,0); blocks[1] = new Position(1,1); blocks[2] = new Position(1,2); blocks[3] = new Position(0,0); break; //s case 4: this.total = 3; blocks[0] = new Position(0,1); blocks[1] = new Position(0,2); blocks[2] = new Position(1,0); blocks[3] = new Position(1,1); break; //turn s case 5: this.total = 3; blocks[0] = new Position(0,0); blocks[1] = new Position(0,1); blocks[2] = new Position(1,1); blocks[3] = new Position(1,2); break; //T case 6: this.total = 3; blocks[0] = new Position(1,0); blocks[1] = new Position(1,1); blocks[2] = new Position(1,2); blocks[3] = new Position(0,1); break; } } public void setStartRowCol(int row,int col) { this.startRow = row; this.startCol = col; } public int getStartRow() { return startRow; } public int getStartCol() { return startCol; } public void setBackGround(Color color) { this.backGround = color; } public Color getBackGround() { return this.backGround; } public void setBlockSize(int newSize) { this.blockSize = newSize; } public int getBlockSize() { return blockSize; } public int getTotal() { return total; } public Position getBlock(int i) { return blocks[i]; } public void goLeft() { startCol--; } public void goRight() { startCol++; } public void goDown() { startRow++; } public void translate() { for(int i = 0;i < 4;i++) blocks[i] = new Position(blocks[i].getColumn(),total - blocks[i].getRow() - 1); } public void paint(Graphics g) { for(int i = 0;i < 4;i++) { g.setColor(backGround); g.fillRect(blocks[i].getColumn() * blockSize + 1,blocks[i].getRow() * blockSize + 1,blockSize - 1,blockSize - 1); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -