




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、超級(jí)瑪麗詳細(xì)設(shè)計(jì)文檔超級(jí)瑪麗 JAVA 小游戲詳細(xì)設(shè)計(jì)目錄1.導(dǎo)言錯(cuò)誤 ! 未定義書簽。1.1 編寫目的錯(cuò)誤 ! 未定義書簽。1.2 項(xiàng)目范圍錯(cuò)誤 ! 未定義書簽。1.3 參考資料錯(cuò)誤 ! 未定義書簽。1.4 縮寫說明錯(cuò)誤 ! 未定義書簽。1.5 術(shù)語(yǔ)定義錯(cuò)誤 ! 未定義書簽。2.功能需求錯(cuò)誤 ! 未定義書簽。2.1 界面設(shè)計(jì)技術(shù)錯(cuò)誤 ! 未定義書簽。2.2 游戲功能劃分錯(cuò)誤 ! 未定義書簽。2.3 功能劃分的架構(gòu)圖錯(cuò)誤 ! 未定義書簽。2.4 具體的功能模塊錯(cuò)誤 ! 未定義書簽。2.5 功能描述錯(cuò)誤 ! 未定義書簽。2.6 程序的總體架構(gòu)錯(cuò)誤 ! 未定義書簽。2.7 程序的三層結(jié)構(gòu)圖63.面
2、向?qū)ο笤O(shè)計(jì)73.1 主要類圖73.2 各個(gè)模塊的方法或類名類表示83.3 地圖繪制中的坐標(biāo)說明84.程序的詳細(xì)設(shè)計(jì)94.1 主要人物瑪麗的實(shí)現(xiàn)94.2 核心類92分離。業(yè)務(wù)邏輯層。主要是游戲的人物和敵人的動(dòng)作,碰撞的判斷,這個(gè)與表現(xiàn)層無關(guān),需要表示層調(diào)用定義好的接口與邏輯層的通信數(shù)據(jù)持久層。保存游戲中的數(shù)據(jù),載入游戲中需要的資源,與程序邏輯層無關(guān),用 XML 文檔存儲(chǔ)數(shù)據(jù)2.7 程序的三層結(jié)構(gòu)圖表現(xiàn)層(繪制屏邏輯層(程序的數(shù)據(jù)持久層(數(shù)63.面向?qū)ο笤O(shè)計(jì)3.1 主要類圖73.2 各個(gè)模塊的方法或類名類表示3.3 地圖繪制中的坐標(biāo)說明84.程序的詳細(xì)設(shè)計(jì)部分源代碼如下:4.1 主要人物瑪麗的實(shí)現(xiàn)
3、packageimportpublicclassMarioimplementsRunnable 坐標(biāo)privateintx ;privateinty ;定義一個(gè)場(chǎng)景對(duì)象來保存 mario 當(dāng)前所處的場(chǎng)景對(duì)象privateBackGroundbg ;加入線程privateThreadt = null;移動(dòng)速度privateintxmove =0;privateintymove =0;狀態(tài)privateStringstatus;顯示的圖片privateBufferedImageshowImage;生命數(shù)和分?jǐn)?shù)privateintlife;privateintscore;當(dāng)前移動(dòng)中顯示的圖片數(shù)pri
4、vateintmoving=0;privateintupTime=0;標(biāo)記 mario 是否死亡privatebooleanisDead= false;標(biāo)記玩家是否完成了全部的游戲privatebooleanisClear=false;publicMario(intx,inty)this. x =x;this. y =y;初始化 Mario 圖片this. showImage=StaticValue.allMarioImage.get(0);this. score=0;9this. life=3;t =new Thread(this);this. status= right-standing;
5、t .start();publicvoidleftMove()改變速度this. xmove =-30;改變狀態(tài)如果當(dāng)前已經(jīng)是跳躍狀態(tài),應(yīng)該保留原有狀態(tài),不應(yīng)該改變狀態(tài)if( this. status.indexOf(jumping)!=-1)this. status= left-jumping;elsethis. status= left-moving;publicvoidrightMove()this. xmove =30;如果當(dāng)前已經(jīng)是跳躍狀態(tài),應(yīng)該保留原有狀態(tài),不應(yīng)該改變狀態(tài)if( this. status.indexOf(jumping)!=-1)this. status= righ
6、t-jumping;elsethis. status= right-moving;publicvoidleftStop()this. xmove =0;如果當(dāng)前已經(jīng)是跳躍狀態(tài),應(yīng)該保留原有狀態(tài),不應(yīng)該改變狀態(tài)if( this. status.indexOf(jumping)!=-1)this. status= left-jumping;elsethis. status= left-standing;publicvoidrightStop()this. xmove =0;如果當(dāng)前已經(jīng)是跳躍狀態(tài),應(yīng)該保留原有狀態(tài),不應(yīng)該改變狀態(tài)if( this. status.indexOf(jumping)!=
7、-1)this. status= right-jumping;else10this. status= right-standing;publicvoidjump()if( this. status.indexOf(jumping)=-1)if( this. status.indexOf(left)!=-1)this. status=left-jumping;elsethis. status=right-jumping;ymove =-30;upTime=6;publicvoiddown()if( this. status.indexOf(left)!=-1)this. status= left
8、-jumping;elsethis. status= right-jumping;ymove =30;/mario的死亡方法publicvoiddead()this. life-;if( this. life=0)this. showImage=StaticValue.mariodeadImage;this. isDead= true; elsethis. bg .reset();this. x =0;this. y =480;publicintgetX() returnx ;publicintgetY() returny ;publicvoidsetX(intx) this. x = x;1
9、1publicvoidsetY(inty) this. y = y;publicBufferedImage getShowImage() returnshowImage;publicvoidrun() TODO Auto-generated method stubwhile( true)if( this. bg .isFlag()&this. x =508)如果為最后一個(gè)場(chǎng)景,同時(shí)mario 的坐標(biāo)到達(dá)了 508 ,則游戲結(jié)束自動(dòng)控制游戲結(jié)束的移動(dòng)this. bg .setOver(true);if( this. bg .isDown()降旗后, mario 開始向城門移動(dòng)this. stat
10、us= right-moving;if( this. x 568)/mario只向右移動(dòng)this. x +=30; elseif( this. y 762)游戲結(jié)束,已經(jīng)完成了全部的場(chǎng)景this. isClear= true; elseif( this. y =420)this. y =420;this. status= right-standing; else 判斷當(dāng)前 mario 是否與障礙物碰撞定義標(biāo)記12booleancanLeft=true;booleancanRight=true;定義一個(gè) mario 當(dāng)前是否處于障礙物上的標(biāo)記booleanonLand=false;for( in
11、ti=0;ithis. y &ob.getY()-50this. y &ob.getY()-50this. x &ob.getX()-600)if(ob.getY()=this. y -60&(ob.getX()+50this. x &ob.getX()-50this.x )對(duì)于磚塊處理if(ob.getType()=0)將該磚塊從場(chǎng)景中移除this. bg .getAllObstruction().remove(ob);將被移除的磚塊保存到一個(gè)集合中this. bg .getRemovedObstruction().add(ob);將分?jǐn)?shù)加 10this. score+=10;13對(duì)于問號(hào)的
12、處理和對(duì)于隱藏的磚塊的處理if(ob.getType()=4|ob.getType()=3)ob.setType(2);ob.setImage();this. score+=50;upTime=0;加入 mario 對(duì)敵人的判斷for( inti=0;ithis. x )&(e.getX()-50this.y &e.getY()-60this. x &e.getX()-50600)this.dead();if(canLeft=true&xmove 0)改變坐標(biāo)x += xmove ;if( x 0)x =0;定義一個(gè)圖片取得的初始索引值inttemp=0;判斷 mario 是否面向左if( t
13、his. status.indexOf(left)!=-1)temp+=5;/判斷 mario是否移動(dòng)if( this. status.indexOf(moving)!=-1)temp+=this. moving;moving+;if( moving=4)moving=0;if( this. status.indexOf(jumping)!=-1)temp+=4;15改變顯示圖片this. showImage=StaticValue.allMarioImage.get(temp);tryThread.sleep(100);catch(InterruptedException e)e.printStackTrace();if( this. score=500)this. life+;this. score=0;publicvoidsetBg(BackGround bg) this. bg = bg;publicbooleanisDe
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【假期提升】五升六語(yǔ)文暑假作業(yè)(六)-人教部編版(含答案含解析)
- 2024廣東省中考英語(yǔ)真題含答案
- 采購(gòu)與售后分包合同(2篇)
- 行政崗干貨知識(shí)培訓(xùn)課件
- 腋下切口知識(shí)培訓(xùn)課件
- 產(chǎn)品創(chuàng)新表-產(chǎn)品創(chuàng)新項(xiàng)目統(tǒng)計(jì)
- 經(jīng)典童話小紅帽作文與賞析
- 企業(yè)內(nèi)部培訓(xùn)體系搭建與實(shí)施預(yù)案
- 金融服務(wù)產(chǎn)品介紹與評(píng)估表
- 生態(tài)學(xué)環(huán)境保護(hù)試題及答案集合
- 電梯采購(gòu)合同范本
- 2025年官方二手房交易協(xié)議
- 【道法】做自信的人課件 2024-2025學(xué)年統(tǒng)編版道德與法治七年級(jí)下冊(cè)
- 高一英語(yǔ)完形填空專項(xiàng)訓(xùn)練100(附答案)及解析
- 設(shè)計(jì)報(bào)告001模擬通信系統(tǒng)的SIMULINK建模仿真
- 橫河氧量變送器標(biāo)定及檢修
- 沉降觀測(cè)常用表格
- 建設(shè)工程規(guī)劃放線、驗(yàn)線申請(qǐng)表
- 績(jī)效考核 五金廠績(jī)效考核
- 金合極思打板與放碼系統(tǒng)幫助目錄
- 勵(lì)磁系統(tǒng)檢修規(guī)程
評(píng)論
0/150
提交評(píng)論