小游戲俄羅斯方塊代碼JAVA_第1頁(yè)
小游戲俄羅斯方塊代碼JAVA_第2頁(yè)
小游戲俄羅斯方塊代碼JAVA_第3頁(yè)
小游戲俄羅斯方塊代碼JAVA_第4頁(yè)
小游戲俄羅斯方塊代碼JAVA_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、東西絕對(duì)不多說(shuō),直接看!看了拷貝就懂了!,直接可以拷貝下面的東西,然后記得把那個(gè)BLOCK的名字改成你自己的類名,這個(gè)很關(guān)鍵哦,不然是錯(cuò)的可別怪我,呵呵import java.awt.*;importimportjavax.swi ng.*;import java.applet.*;import .*;import java.lang.*;import java.io.*;public class Blockexte ndsJPa nelimpleme ntsActi on Liste ner,KeyListe ner/應(yīng)該是繼承JPanelstaticButt onbut =new Butt

2、 on 6;staticButt onn oStop=new Butt on(取消暫?!?;staticLabelscoreLab=new Label(分?jǐn)?shù):);staticLabelin foLab=new Label( 提示:);staticLabelspeedLab=new Label(級(jí)數(shù):);staticLabelscoreTex=new Label(0);staticLabelin foTex=new Label( );staticLabelspeedTex=new Label(1);staticJFramejf = new JFrame();staticMyTimertimerJ

3、staticImageIc onicon= new ImageIc on(resource/Block.jpgstaticJMe nuBarmb =new JMe nuBar();staticJMe numenuO =new JMenu(游戲);staticJMe numenu1 =new JMenu(幫助);staticJMen uItemmi0 =new JMe nultem(新游戲);staticJMen uItemmi1 =new JMe nultem(退出“);staticJMen uItemmi1_0=new JMe nultem(關(guān)于);staticJDialogdlg_1Jst

4、aticJTextAreadlg_1_text= new JTextArea();staticintstartSig n=0;/游戲開(kāi)始標(biāo)志0未開(kāi)始1開(kāi)始2暫停staticStri ngbutLab =開(kāi)始游戲“,重新開(kāi)始“,降低級(jí)數(shù),游戲暫停,“退出游戲;staticintgame_body=newint1910;staticintgame_sig n_x=newint4;/用于記錄4個(gè)方格的水平位置staticintgame sign y=newint:/用于記錄4個(gè)方格的垂直位置staticboolea ndow nSig n= false;/是否落下staticintblockNumb

5、er=1;/磚塊的編號(hào)staticintgameScore=0;/游戲分?jǐn)?shù)staticintspeedMark=1;publicstaticvoid mai n(Stri ng args),“提高級(jí)數(shù)Block myBlock =new Block();mb.add( menuO ); mb.add( menul ); menuO .add( miO );menuO .add( mil );menu1 .add( mi1_O );jf .setJMenuBar(mb);myBlock.i ni t();jf .add(myBlock);jf .setSize(565,501);.setResi

6、zable( false ); .setTitle( 俄羅斯方塊); .setIconlmage( icon .getlmage();public void in it() setLayout(for ( intscoreLab .setBou nds(320,15,30,20);scoreTex .setBou nds(360,15,160,20);scoreTex .setBackgrou nd(Color.white);speedLab .setBou nds(320,45,30,20);speedTex .setBou nds(360,45,160,20);speedTex .setB

7、ackgrou nd(Color.white);but 1.setEnabled(false );but 4.setEnabled(false );in foLab.setBou nds(320,75,30,20);in foTex.setBou nds(360,75,160,20);jfjfjfjftimer.setLocati on (200,100);.show();new MyTimer(myBlock););/啟動(dòng)線程timertimer.setDaem on( true .start();timer.susp en d();jfn ull );i = 0;i 6;i+)buti=n

8、ew Butt on(butLab i);add(butbutbut i);i.addActi on Liste ner(i.addKeyListe ner(this );this );buti.setBou nds(360,(240 + 30 * i),160,25);add(add(scoreLabscoreTex););add(add(add(speedLabspeedTex infoLab);););add(add(in foTexscoreLab););in foTex.setBackgrou nd(Color.whiteno Stop.setBou nds(360,360,160,

9、25);no Stop.addActi on Liste ner(this );no Stop.addKeyListe ner(this );mi0 .addActionListener(this );mi1 .addActi on Liste ner(this );mi1_0.addActi on Liste ner(this );n um_csh_game();ran d_block();public void acti on Performed(Acti on Eve nt e)if (e.getSource()=startSig n= 1;in foTex .setText(but 0

10、.setEnabled(but 1.setEnabled(but4.setEnabled( timer .resume。;if (e.getSource()=startSig n= 0;gameScore = 0; timer .suspend();n um_csh_restart();repa in t();ran d_block();scoreTex .setText(in foTex .setText(but 0.setEnabled(but 1.setEnabled(but 4.setEnabled(if (e.getSource()=in foTex .setText( speedM

11、ark-;if ( speedMark = 9)speedMark = 9;in foTex.setText(已經(jīng)是最高級(jí)數(shù)!);this .remove( but infoTex .setText( timer.suspe nd();if (e.getSource()=this .remove(noStop );jf .dispose。;if (e.getSource()=io.close();Stri ng str =dlg_1_textnew Stri ng(a);.setText(str);catch (Excepti on g)dlg_1_text .setEditable(dlg_

12、1 .pack();dlg_1 .setResizable( false );speedTex .setText(speedMark);if (e.getSource()=this .add( n oStopbut 4)/游戲暫停);dlg_1try new JDialog(jf ,關(guān)于);FileI nputStream io =路徑byte a=io.read(a);new FileI nputStream(resource/gua nyu.txt);/得到new byte io.available();dlg_1 .add( dlg_1_text);4);游戲暫停!);noStop )

13、/取消暫停this .add( but 4); infoTex .setText( timer .resume();if (e.getSource()=繼續(xù)游戲!);but 5|e.getSource()=mi1 ) /退岀游戲mi1_0 ) /退岀游戲false );dlg_1 .setSize(200, 120);dlg_1 .setLocatio n(400, 240);dlg 1 .show();public void rand_block()/隨機(jī)產(chǎn)生磚塊int num;case1: block1();blockNumber=1;breakcase2: block2();blockN

14、umber=2;breakcase3: block3();blockNumber=3;breakcase4: block4();blockNumber=4;breakcase5: block5();blockNumber=5;breakcase6: block6();blockNumber=6;breakcase7: block7();blockNumber=7;breakpublic voidcha nge_body(intdin gwei();num = ( int )(Math.blockNumber = num;(blockNumberrandom () * 6) +1;/產(chǎn)生06之間

15、的隨機(jī)數(shù)switchblockNumber)/改變磚塊狀態(tài)if (blockNumber = 1&dow nSig nfalse)/變換長(zhǎng)條2種情況if ( game_sign_y0=著的game_sig n_y1&game_sig n_y3=16)/說(shuō)明長(zhǎng)條是橫if ( game_body game_sign_y 001!=2& game_bodyn um_csh_gameigame_sign_y3 + 2game_sig n_x3 - 2 != 2)();game_bodygame_sign_y0 - 1game_sig n_x0 + 1 = 1;game_body

16、game_sign_y1game. _sign_x 1=1;game_bodygame_sign_y2 + 1game_sig n_x2 - 1 = 1;game_bodygame_sign_y3 + 2game_sig n_x3 - 2 = 1;infoTex.setText(游戲進(jìn)行中!);repa in t();if ( game_sign_x0 = game_sign_x=1& game_sig n_x31 game_sign_xif ( game_body game_sign_y02& game_body game_sign_y 3 - 2+game_sig n_x1

17、 game_sign_x 0-13 + 2 != 2)!=in um_csh_game();game_body game_sign_y0 + 1game_sig n_x0 - 1 = 1;if ( game_bodygame_sign_y 0+2 game_sign_x0!=game_bodygame_bodygame_sign_ygame_sign_y12 - 1game_sig n_x1=1;game_sig n_x2 + 1 = 1;game_bodygame_sign_y3 - 2infoTex.setText( 游戲進(jìn)行中!repai nt();game_sig n_x3 + 2 =

18、 1;);if (blockNumber = 3&dow nSig nfalse )/變換轉(zhuǎn)彎1有4種情況game_sig n_x2 & game_sig n_y 2=if ( game_body game_sign_y 0game_sig n_y3&game_sig n_x0 = 1)+1 game_sign_x 0- 12& game_body game_sign_y 2 - 1game_sig n_x2 + 1 != 2&game_bodygame_sign_y3 - 2game_sign_xn um_csh_game();3 != 2)game_

19、body game_sign_y 0 + 1game_sig n_x0 - 1=1;game_body game_sign_y 1game_sign_x1=1;game_body game_sign_y 2 - 1game_sig n_x2 + 1=:1;game_body game_sign_y3 - 2game_sig n_x3 = 1;infoTex.setText(游戲進(jìn)行中!);repa in t();if (game_sign_y 1=game_sig n_y2&game_sig n_y2game_sig n_y3& game_sig n_x 0=game_sig

20、n_x3&game_sig n_y1 = 17)if (game_sign_x0game_sig n_x1& game_sign_x0!=if ( game_bodygame_sign_y 0game_sig n_x022& game_body game_sign_y12& game_body game_sign_y1 game_sign_x11!=!=3 - 1game_sig n_x 3 - 1 != 2)n um_csh_game();game_bodygame_sign_y0game_bodygame_sign_y1 + 1game_bodygame_s

21、ign_y2game_bodygame_sign_y3 - 1infoTex.setText(游戲進(jìn)行中);game_sig n_x 0 - 2 = 1;game_sig n_x1 + 1 = 1;game_sig n_x2 = 1;3- 1 = 1;game_sig n_xrepain t();if (game_sign_xgame_sig n_x3 &1 = game_sig n_y0=game_sig n_xgame_sig n_y2& game_sign_x1& game_sign_x13 = 8)if ( game_bodygame_sign_y 0+2 ga

22、me_sign_x0!=1;3 - 1n um_csh_game();repain t();repain t();2& game_body game_sign_y3 game_sign_x 3 + 2 != 2)2& game_body game_sign_y2& game_body game_sign_y11 game_sign_x11!=game_bodygame_sign_y0 + 2game_sig n_x0 = 1;game_bodygame_sign_y1 +1game_sig n_x1 - 1=game_bodygame_sign_y2game_sig n

23、_x 2=1;game_bodygame_sign_y3-1game_sig n_x3 + 1=infoTex.setText(游戲進(jìn)行中!);1;1;game_sig n_x3 +1 != 2)if (game_sign_ygame_sig n_y2 &0 = game_sig n_x0=game_sig n_ygame_sig n_x1& game_sign_y 13)if ( game_bodygame_sign_y 01 game_sign_x 01!=2& game_body game_sign_y 2 -1 game_sign_y 3game_sign_x3

24、 +game_sig n_x2 != 2)2- 1 != 2&game_bodyn um_csh_game();game_bodygame_sign_y0 + 1game_bodygame_sign_y1game_bodygame_sign_y2 - 1game_bodygame_sign_y3infoTex.setText(游戲進(jìn)行中g(shù)ame_sig n_x0 + 1 = 1;if (blockNumber = 4&if (game_sign_xdow nSig nfalse )/變換轉(zhuǎn)彎2有4種情況0game_sig n_x1& game_sign_x0game_s

25、ig n_x3 &game_sig n_y1=game_sig n_y2& game_sign_x3 = 2)2!=2& game_body game_sign_y22& game_body game_sign_y1game_sig n_x21!=3 - 2game_sig n_x 3 != 2)n um_csh_game();game_bodygame_sign_y0game_sig n_x 0 - 2 = 1;game_bodygame_sign_y1game_sig n_x 1 = 1;game_bodygame_sign_y2 - 1game_sig n

26、_x2 - 1=game_bodygame_sign_y3 - 2game_sig n_x 3 = 1;infoTex.setText(游戲進(jìn)行中!);1;repain t();if (game_sign_y0game_sig n_y1& game_sign_y0game_sig n_y2 &if ( game_bodygame_sig n_xgame_sign_y2& game_body game_sign_y2& game_body game_sign_y11=0game_sig n_x3& game_sign_y0 = 2)1 game_sign_

27、x 0game_sig n_x121!=!=3 - 1game_sig n_x3 +1 != 2)n um_csh_game();game_bodygame_sign_y0 + 1game_bodygame_sign_y1game_bodygame_sign_y2game_bodygame_sign_y3 - 1infoTex.setText(游戲進(jìn)行中);game_sig n_x0 - 1 = 1;game_sig n_x 1 - 2 = 1;game_sig n_x2 = 1;3 + 1 = 1;game_sig n_xrepain t();if (game_sign_y1game_sig

28、 n_y2& game_sign_y2game_sig n_y3 &if ( game_bodygame_sig n_x0=game_sign_y 02& game_body game_sign_y12& game_body game_sign_ygame_sig n_x1& game_sign_y0 = 2)if ( game_body game_sign_y0 game_sign_x 022& game_body game_sign_y2& game_body game_sign_y21game_sig n_x2-1!=!=3 - 1

29、game_sig n_x3 +1 != 2)n um_csh_game();game_bodygame_sign_y0game_sig n_x 0 - 2 = 1;game_bodygame_sign_y1game_sig n_x 1 = 1;game_bodygame_sign_y2 - 1game_sig n_x2 - 1=game_bodygame_sign_y3 - 1game_sig n_x3 + 1=infoTex.setText(游戲進(jìn)行中!);repa in t();1;2!=+12!=1;if ( game_sign_y 0 = game_sign_y 1& game

30、_sign_y2& game_body game_sign_y3 + 1 game_sig n_x 3 - 1 != 2)game_sig n_x 3 - 1 != 2)repain t();n um_csh_game();game_bodygame_sign_y0game_sig n_x0 +2=1;game_bodygame_sign_y1 - 1game_sig n_x1 + 1=game_bodygame_sign_y2game_sig n_x 2=:1;game_bodygame_sign_y3 - 1game_sig n_x3 -1=infoTex.setText(游戲進(jìn)行

31、中!”);1;1;3 = 17)if ( game_body game_sign_y02& game_body game_sign_y 1game_sig n_x01 game_sign_x1!=n um_csh_game();game_bodygame_sign_y0game_sign_x 0 + 2 = 1;game_bodygame_bodygame_sign_ygame_sign_y1 +21 game_sig n_x 1 + 1 = 1; game_sig n_x2 = 1;game_sign_yinfoTex.setText( 游戲進(jìn)行中!);repa in t();gam

32、e_body3 + 1game_sig n_x 3 - 1 = 1;if (blockNumber = 7&dow nSig nfalse )/變換兩層磚塊2的2種情況if ( game_sign_x 0=if ( game_body game_sign_y0game_sign_x0game_sig n_x1& game_sign_x0 = 16)2!=2& game_body game_sign_y12& game_body game_sign_y1 game_sign_x11!=3 - 12!=+12!=1;2& game_body game_sig

33、n_y2 + 1game_sig n_x2 +n um_csh_game();game_bodygame_sign_y0 +1game_sig n_x0 - 1=game_bodygame_sign_y1game_sig n_x1- -2 = 1;game_bodygame_sign_y2 +1game_sig n_x2 + 1=1;if ( game_sign_y 0 =game_sign_yif ( game_body game_sign_y2& game_body game_sign_y1&01game_sig n_xgame_sig n_y2 = 17)1 game_s

34、ign_x 01 -1!=1 != 2)game_body game_sign_y3game_sig n_x 3 = 1;infoTex.setText(游戲進(jìn)行中!);repa in t();public voidnum_csh_game()/數(shù)組清零for (int i = 0;i 19;i+)for ( int j = 0;j 10;j+)if ( game_body ij = 2)game_body ij = 2;elsegame_body ij = 0;public void num_csh_restart()/重新開(kāi)始時(shí)數(shù)組清零for (int i = 0;i 19;i+)for

35、( int j = 0;j 10;j+)game_body ij = 0;publicvoidkeyTyped(KeyEve nt e)publicvoidkeyPressed(KeyEve nt e)if (e.getKeyCode() = KeyEvent. this.dow n();if (e.getKeyCode() = KeyEvent. thiseft();if (e.getKeyCode() = KeyEvent.VK_DOWN&startSignVK_LEFT &startSignVK_RIGHT &startSign=1)/處理下鍵=1)/處理左鍵=1

36、)/處理右鍵game_body game_sign_y3game_sig n_x 3 = 1;this .right();if (e.getKeyCode() = KeyEvent.this .cha nge_body(blockNumber );if ( startSign = 0)2)sig n = 1;in foTex.setText( 游戲未開(kāi)始或已結(jié)束!);publicpublicvoidvoidkeyReleased(KeyEve nt e) paint(Graphics g)g.setColor(Color.g.fill3DRect(0,0,300,450,black );tru

37、e );for ( int i = 0;i 19;i+)for (int j = 0;j 10;j+)if ( game_body ij = 1)g.setColor(Color.blue );g.fill3DRect(30*j,30*(i-4),30,30,true );if ( game_body ij = 2)g.setColor(Color.magenta );g.fill3DRect(30*j,30*(i-4),30,30,true );public void left() /向左移動(dòng)int sig n = 0;di ngwei();for (int k = 0;k 4;k+)if

38、( game_sign_x k = 0|game_bodygame_sign_ykgame_sig n_xk - 1=VK_UP &startSign=1)/處理上鍵轉(zhuǎn)換if (sign = 0&downSignfalse )n um_csh_game();for (int k = 0;k 4;k+)game_body game_sign_y kgame_sign_xk - 1 = 1;infoTex.setText( 向左移動(dòng)!);repa in t();public void right() /向右移動(dòng)int sig n = 0;di ngwei();for (int k

39、= 0;k 4;k+)if ( game_sign_xk = 9| game_body game_sign_yk game_sign_x k + 1=2)sign = 1;if (sign = 0&downSign= false )n um_csh_game();for (int k = 0;k 4;k+)game_body game_sign_y kgame_sign_xk + 1 = 1;infoTex.setText( 向右移動(dòng)!);repa in t();public void down()/下落int sig n = 0;di ngwei();for (int k = 0;k

40、 4;k+)if ( game_sign_yk= 18| game_body game_sign_y k+ 1 game_sign_x k2)sign = 1;dow nSig n = true ;cha ngeColor();can celDW();getScore();if (game_over() =false )ran d_block();repa in t();if (sign = 0)n um_csh_game();for ( int k = 0;k 4;k+)game_body game_sign_yk + 1game_sign_:infoTex .setText( 游戲進(jìn)行中!);repa in t();public boolean game_over() /判斷游戲是否結(jié)束intsig n=0;for (int i = 0;i 10;i+)if ( game_body 4i = 2)sign = 1;if (sign = 1)infoTex.setText( 游戲結(jié)束!);cha ngeColor();repai nt();startSig n = 0;timer .suspe nd();return true ;elsereturnfalse ;publicvoidgetSc

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論