衡阳派盒市场营销有限公司

您好,歡迎來(lái)電子發(fā)燒友網(wǎng)! ,新用戶(hù)?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>java源碼下載>

俄羅斯方塊——java源代碼提供

大小:278 人氣: 2010-02-10 需要積分:0
而無(wú)返還的空間

用戶(hù)級(jí)別:注冊(cè)會(huì)員

貢獻(xiàn)文章:

貢獻(xiàn)資料:

俄羅斯方塊——java源代碼提供

?
import java.awt.*;
import java.awt.event.*;
//俄羅斯方塊類(lèi)
public class ERS_Block extends Frame{
public static boolean isPlay=false;
public static int level=1,score=0;
public static TextField scoreField,levelField;

public static MyTimer timer;
GameCanvas gameScr;

public static void main(String[] argus){
ERS_Block ers = new ERS_Block("俄羅斯方塊游戲 V1.0 Author:Vincent");
WindowListener win_listener = new WinListener();
ers.addWindowListener(win_listener);
}

//俄羅斯方塊類(lèi)的構(gòu)造方法
ERS_Block(String title){
super(title);

setSize(600,480);
setLayout(new GridLayout(1,2));

gameScr = new GameCanvas();
gameScr.addKeyListener(gameScr);

timer = new MyTimer(gameScr);
timer.setDaemon(true);
timer.start();
timer.suspend();

add(gameScr);

Panel rightScr = new Panel();
rightScr.setLayout(new GridLayout(2,1,0,30));
rightScr.setSize(120,500);
add(rightScr);

//右邊信息窗體的布局
MyPanel infoScr = new MyPanel();
infoScr.setLayout(new GridLayout(4,1,0,5));
infoScr.setSize(120,300);
rightScr.add(infoScr);

//定義標(biāo)簽和初始值
Label scorep = new Label("分?jǐn)?shù):",Label.LEFT);
Label levelp = new Label("級(jí)數(shù):",Label.LEFT);
scoreField = new TextField(8);
levelField = new TextField(8);
scoreField.setEditable(false);
levelField.setEditable(false);
infoScr.add(scorep);
infoScr.add(scoreField);
infoScr.add(levelp);
infoScr.add(levelField);
scorep.setSize(new Dimension(20,60));
scoreField.setSize(new Dimension(20,60));
levelp.setSize(new Dimension(20,60));
levelField.setSize(new Dimension(20,60));
scoreField.setText("0");
levelField.setText("1");

//右邊控制按鈕窗體的布局
MyPanel controlScr = new MyPanel();
controlScr.setLayout(new GridLayout(5,1,0,5));
rightScr.add(controlScr);

//定義按鈕play
Button play_b = new Button("開(kāi)始游戲");
play_b.setSize(new Dimension(50,200));
play_b.addActionListener(new Command(Command.button_play,gameScr));

//定義按鈕Level UP
Button level_up_b = new Button("提高級(jí)數(shù)");
level_up_b.setSize(new Dimension(50,200));
level_up_b.addActionListener(new Command(Command.button_levelup,gameScr));

//定義按鈕Level Down
Button level_down_b =new Button("降低級(jí)數(shù)");
level_down_b.setSize(new Dimension(50,200));
level_down_b.addActionListener(new Command(Command.button_leveldown,gameScr));

//定義按鈕Level Pause
Button pause_b =new Button("游戲暫停");
pause_b.setSize(new Dimension(50,200));
pause_b.addActionListener(new Command(Command.button_pause,gameScr));

//定義按鈕Quit
Button quit_b = new Button("退出游戲");
quit_b.setSize(new Dimension(50,200));
quit_b.addActionListener(new Command(Command.button_quit,gameScr));

controlScr.add(play_b);
controlScr.add(level_up_b);
controlScr.add(level_down_b);
controlScr.add(pause_b);
controlScr.add(quit_b);
setVisible(true);
gameScr.requestFocus();
}
}

//重寫(xiě)MyPanel類(lèi),使Panel的四周留空間
class MyPanel extends Panel{
public Insets getInsets(){
return new Insets(30,50,30,50);
}
}

//游戲畫(huà)布類(lèi)
class GameCanvas extends Canvas implements KeyListener{
final int unitSize = 30; //小方塊邊長(zhǎng)
int rowNum; //正方格的行數(shù)
int columnNum; //正方格的列數(shù)
int maxAllowRowNum; //允許有多少行未削
int blockInitRow; //新出現(xiàn)塊的起始行坐標(biāo)
int blockInitCol; //新出現(xiàn)塊的起始列坐標(biāo)
int [][] scrArr; //屏幕數(shù)組
Block b; //對(duì)方快的引用

//畫(huà)布類(lèi)的構(gòu)造方法
GameCanvas(){
rowNum = 15;
columnNum = 10;
maxAllowRowNum = rowNum - 2;
b = new Block(this);
blockInitRow = rowNum - 1;
blockInitCol = columnNum/2 - 2;
scrArr = new int [32][32];
}

//初始化屏幕,并將屏幕數(shù)組清零的方法
void initScr(){
for(int i=0;ifor (int j=0; jscrArr[j]=0;
b.reset();
repaint();
}

//重新刷新畫(huà)布方法
public void paint(Graphics g){
for(int i = 0; i < rowNum; i++)
for(int j = 0; j < columnNum; j++)
drawUnit(i,j,scrArr[j]);

非常好我支持^.^

(0) 0%

不好我反對(duì)

(3) 100%

      發(fā)表評(píng)論

      用戶(hù)評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?
      百家乐如何计牌| 真人版百家乐官网试玩| 顶级赌场官方安卓版手机下载| 百家乐咨询网址| 百家乐官网出千赌具| 君豪棋牌怎么样| 百家乐游戏解码器| 百家乐官网技巧平注常赢法| 百家乐官网在线怎么玩| 博彩旅游业| 百家乐网络娱乐场开户注册| 真人百家乐官网| 百家乐官网棋牌作弊器| 九龙城区| 大发888游戏平台| 闲和庄百家乐娱乐场| 百家乐官网庄闲统计数| 永利百家乐官网游戏| 大发888常见断续| 环球百家乐的玩法技巧和规则| 百家乐现金平台排名| 百家乐官网游戏免费下| 澳门百家乐官网下路写法| 百家乐官网试玩网站| 太阳城娱乐城网址| 大发888备用网址大发娱乐城| 百家乐网站可信吗| 百家乐注册送彩金平台| 百家乐官网娱乐城备用网址| 打百家乐官网如何赢分| 吴忠市| 兰考县| 百家乐官网正网开户| 青岛市| 百家乐官网哪家有优惠| 彩会百家乐官网游戏| 修文县| 百家乐官网线上游戏| 百家乐官网路单破解器| 澳门百家乐官网棋牌游戏| 百家乐官网筹码免运费|