小游戏俄罗斯方块代码JAVAWord下载.docx

上传人:b****3 文档编号:17790001 上传时间:2022-12-10 格式:DOCX 页数:27 大小:19.37KB
下载 相关 举报
小游戏俄罗斯方块代码JAVAWord下载.docx_第1页
第1页 / 共27页
小游戏俄罗斯方块代码JAVAWord下载.docx_第2页
第2页 / 共27页
小游戏俄罗斯方块代码JAVAWord下载.docx_第3页
第3页 / 共27页
小游戏俄罗斯方块代码JAVAWord下载.docx_第4页
第4页 / 共27页
小游戏俄罗斯方块代码JAVAWord下载.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

小游戏俄罗斯方块代码JAVAWord下载.docx

《小游戏俄罗斯方块代码JAVAWord下载.docx》由会员分享,可在线阅读,更多相关《小游戏俄罗斯方块代码JAVAWord下载.docx(27页珍藏版)》请在冰豆网上搜索。

小游戏俄罗斯方块代码JAVAWord下载.docx

1"

staticJFramejf=newJFrame();

staticMyTimertimer;

staticImageIconicon=newImageIcon("

resource/Block.jpg"

staticJMenuBarmb=newJMenuBar();

staticJMenumenu0=newJMenu("

游戏"

staticJMenumenu1=newJMenu("

帮助"

staticJMenuItemmi0=newJMenuItem("

新游戏"

staticJMenuItemmi1=newJMenuItem("

退出"

staticJMenuItemmi1_0=newJMenuItem("

关于"

staticJDialogdlg_1;

staticJTextAreadlg_1_text=newJTextArea();

staticintstartSign=0;

//游戏开始标志0未开始1开始2暂停

staticStringbutLab[]={"

开始游戏"

"

重新开始"

降低级数"

提高级数"

游戏暂停"

退出游戏"

};

staticintgame_body[][]=newint[19][10];

staticintgame_sign_x[]=newint[4];

//用于记录4个方格的水平位置

staticintgame_sign_y[]=newint[4];

//用于记录4个方格的垂直位置

staticbooleandownSign=false;

//是否落下

staticintblockNumber=1;

//砖块的编号

staticintgameScore=0;

//游戏分数

staticintspeedMark=1;

publicstaticvoidmain(Stringargs[])

BlockmyBlock=newBlock();

mb.add(menu0);

mb.add(menu1);

menu0.add(mi0);

menu0.add(mi1);

menu1.add(mi1_0);

jf.setJMenuBar(mb);

myBlock.init();

jf.add(myBlock);

jf.setSize(565,501);

jf.setResizable(false);

jf.setTitle("

俄罗斯方块"

jf.setIconImage(icon.getImage());

jf.setLocation(200,100);

jf.show();

timer=newMyTimer(myBlock);

//启动线程

timer.setDaemon(true);

timer.start();

timer.suspend();

}

publicvoidinit()

setLayout(null);

for(inti=0;

i<

6;

i++)

but[i]=newButton(butLab[i]);

add(but[i]);

but[i].addActionListener(this);

but[i].addKeyListener(this);

but[i].setBounds(360,(240+30*i),160,25);

add(scoreLab);

add(scoreTex);

add(speedLab);

add(speedTex);

add(infoLab);

add(infoTex);

scoreLab.setBounds(320,15,30,20);

scoreTex.setBounds(360,15,160,20);

scoreTex.setBackground(Color.white);

speedLab.setBounds(320,45,30,20);

speedTex.setBounds(360,45,160,20);

speedTex.setBackground(Color.white);

but[1].setEnabled(false);

but[4].setEnabled(false);

infoLab.setBounds(320,75,30,20);

infoTex.setBounds(360,75,160,20);

infoTex.setBackground(Color.white);

noStop.setBounds(360,360,160,25);

noStop.addActionListener(this);

noStop.addKeyListener(this);

mi0.addActionListener(this);

mi1.addActionListener(this);

mi1_0.addActionListener(this);

num_csh_game();

rand_block();

publicvoidactionPerformed(ActionEvente)

if(e.getSource()==but[0])//开始游戏

startSign=1;

infoTex.setText("

游戏已经开始!

but[0].setEnabled(false);

but[1].setEnabled(true);

but[4].setEnabled(true);

timer.resume();

if(e.getSource()==but[1]||e.getSource()==mi0)//重新开始游戏

startSign=0;

gameScore=0;

num_csh_restart();

repaint();

scoreTex.setText("

新游戏!

but[0].setEnabled(true);

if(e.getSource()==but[2])//降低级数

降低级数!

speedMark--;

if(speedMark<

=1)

speedMark=1;

已经是最低级数!

speedTex.setText(speedMark+"

if(e.getSource()==but[3])//提高级数

提高级数!

speedMark++;

if(speedMark>

=9)

speedMark=9;

已经是最高级数!

if(e.getSource()==but[4])//游戏暂停

this.add(noStop);

this.remove(but[4]);

游戏暂停!

if(e.getSource()==noStop)//取消暂停

this.remove(noStop);

this.add(but[4]);

继续游戏!

if(e.getSource()==but[5]||e.getSource()==mi1)//退出游戏

jf.dispose();

if(e.getSource()==mi1_0)//退出游戏

dlg_1=newJDialog(jf,"

try{

FileInputStreamio=newFileInputStream("

resource/guanyu.txt"

//得到路径

bytea[]=newbyte[io.available()];

io.read(a);

io.close();

Stringstr=newString(a);

dlg_1_text.setText(str);

catch(Exceptiong){}

dlg_1_text.setEditable(false);

dlg_1.add(dlg_1_text);

dlg_1.pack();

dlg_1.setResizable(false);

dlg_1.setSize(200,120);

dlg_1.setLocation(400,240);

dlg_1.show();

publicvoidrand_block()//随机产生砖块

intnum;

num=(int)(Math.random()*6)+1;

//产生0~6之间的随机数

blockNumber=num;

switch(blockNumber)

case1:

block1();

blockNumber=1;

break;

case2:

block2();

blockNumber=2;

case3:

block3();

blockNumber=3;

case4:

block4();

blockNumber=4;

case5:

block5();

blockNumber=5;

case6:

block6();

blockNumber=6;

case7:

block7();

blockNumber=7;

publicvoidchange_body(intblockNumber)//改变砖块状态

dingwei();

if(blockNumber==1&

&

downSign==false)//变换长条2种情况

if(game_sign_y[0]==game_sign_y[1]&

game_sign_y[3]<

=16)//说明长条是横着的

if(game_body[game_sign_y[0]-1][game_sign_x[0]+1]!

=2&

game_body[game_sign_y[3]+2][game_sign_x[3]-2]!

=2)

game_body[game_sign_y[0]-1][game_sign_x[0]+1]=1;

game_body[game_sign_y[1]][game_sign_x[1]]=1;

game_body[game_sign_y[2]+1][game_sign_x[2]-1]=1;

game_body[game_sign_y[3]+2][game_sign_x[3]-2]=1;

游戏进行中!

if(game_sign_x[0]==game_sign_x[1]&

game_sign_x[0]>

=1&

game_sign_x[3]<

=7)//说明长条是竖着的

if(game_body[game_sign_y[0]+1][game_sign_x[0]-1]!

game_body[game_sign_y[3]-2][game_sign_x[3]+2]!

game_body[game_sign_y[0]+1][game_sign_x[0]-1]=1;

game_body[game_sign_y[2]-1][game_sign_x[2]+1]=1;

game_body[game_sign_y[3]-2][game_sign_x[3]+2]=1;

if(blockNumber==3&

downSign==false)//变换转弯1有4种情况

game_sign_x[0]==game_sign_x[2]&

game_sign_y[2]==game_sign_y[3]&

game_body[game_sign_y[2]-1][game_sign_x[2]+1]!

game_body

[game_sign_y[3]-2][game_sign_x[3]]!

game_body[game_sign_y[3]-2][game_sign_x[3]]=1;

if(game_sign_y[1]==game_sign_y[2]&

game_sign_x[0]==game_sign_x[3]&

game_sign_y[1]<

=17)

if(game_body[game_sign_y[0]][game_sign_x[0]-2]!

game_body[game_sign_y[1]+1][game_sign_x[1]+1]!

game_body[game_sign_y

[3]-1][game_sign_x[3]-1]!

game_body[game_sign_y[0]][game_sign_x[0]-2]=1;

game_body[game_sign_y[1]+1][game_sign_x[1]+1]=1;

game_body[game_sign_y[2]][game_sign_x[2]]=1;

game_body[game_sign_y[3]-1][game_sign_x[3]-1]=1;

if(game_sign_x[1]==game_sign_x[2]&

game_sign_x[1]==game_sign_x[3]&

game_sign_y[0]==game_sign_y[1]&

=8)

if(game_body[game_sign_y[0]+2][game_sign_x[0]]!

game_body[game_sign_y[1]+1][game_sign_x[1]-1]!

[3]-1][game_sign_x[3]+1]!

game_body[game_sign_y[0]+2][game_sign_x[0]]=1;

game_body[game_sign_y[1]+1][game_sign_x[1]-1]=1;

game_body[game_sign_y[3]-1][game_sign_x[3]+1]=1;

game_sign_y[1]==game_sign_y[2]&

game_sign_x[0]==game_sign_x[3])

if(game_body[game_sign_y[0]+1][game_sign_x[0]+1]!

game_body[game_sign_y[2]-1][game_sign_x[2]-1]!

[game_sign_y[3]][game_sign_x[3]+2]!

game_body[game_sign_y[0]+1][game_sign_x[0]+1]=1;

game_body[game_sign_y[2]-1][game_sign_x[2]-1]=1;

game_body[game_sign_y[3]][game_sign_x[3]+2]=1;

if(blockNumber==4&

downSign==false)//变换转弯2有4种情况

=7)

[3]][game_sign_x[3]+2]!

game_sign_y[1]==game_sign_y[3]&

game_sign_x[0]==game_sign_x[2])

if(game_body[game_sign_y[1]][game_sign_x[1]+2]!

[3]-2][game_sign_x[3]]!

game_body[game_sign_y[0]][game_sign_x[0]]=1;

game_body[game_sign_y[1]][game_sign_x[1]+2]=1;

if(game_sign_x[0]==game_sign_x[2]&

game_sign_y[0]==game_sign_y[2]&

game_sign_y[0]<

=16)

[2]][game_sign_x[2]-2]!

game_body[game_sign_y[2]][game_sign_

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1