騎士飛行棋V1.0.ppt_第1頁(yè)
騎士飛行棋V1.0.ppt_第2頁(yè)
騎士飛行棋V1.0.ppt_第3頁(yè)
騎士飛行棋V1.0.ppt_第4頁(yè)
騎士飛行棋V1.0.ppt_第5頁(yè)
已閱讀5頁(yè),還剩30頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、騎士飛行棋,問(wèn)題描述,開(kāi)發(fā)一款Java小游戲騎士飛行棋 游戲規(guī)則和傳統(tǒng)的飛行棋一樣,支持兩人對(duì)戰(zhàn) 采用100格小型游戲棋盤(pán) 游戲規(guī)則:對(duì)戰(zhàn)雙方輪流擲骰子控制自己的騎兵前進(jìn)或后退,在游戲棋盤(pán)上設(shè)置有關(guān)卡 普通 地雷 暫停 時(shí)空隧道 幸運(yùn)輪盤(pán)(提供兩種運(yùn)氣:交換位置和轟炸),問(wèn)題分析-2,根據(jù)需求分析對(duì)象 對(duì)戰(zhàn)地圖類(lèi)(Map) 功能:在控制臺(tái)顯示棋盤(pán),并顯示當(dāng)前玩家在棋盤(pán)中所處的位置 用戶(hù)類(lèi)(User) 功能:實(shí)現(xiàn)用戶(hù)名、用戶(hù)位置、用戶(hù)是走還是停三個(gè)屬性 游戲類(lèi)(Game) 功能:實(shí)現(xiàn)游戲初始化設(shè)置、展示游戲開(kāi)始界面以及角色設(shè)置、控制游戲進(jìn)度、實(shí)現(xiàn)游戲規(guī)則、以及游戲結(jié)束后結(jié)果評(píng)判 測(cè)試類(lèi)(Star

2、tGame) 功能:?jiǎn)?dòng)游戲,問(wèn)題分析-1,設(shè)計(jì)騎士飛行棋的棋盤(pán) 使用字符顯示棋盤(pán),前進(jìn)方向,起點(diǎn),終點(diǎn),幸運(yùn)輪盤(pán),地雷,時(shí)空隧道,暫停,普通,難點(diǎn)分析-1,實(shí)時(shí)動(dòng)態(tài)顯示對(duì)戰(zhàn)地圖 地圖信息以整型數(shù)據(jù)存儲(chǔ)在數(shù)組中,int map = new int100; /對(duì)戰(zhàn)地圖,普通,幸運(yùn)輪盤(pán),地雷,暫停,時(shí)空隧道,0,99,數(shù)組下標(biāo),第一階段結(jié)果演示,簡(jiǎn)單講解Map類(lèi)方法之間的調(diào)用關(guān)系,createMap(),showMap(),showLine1(),showLine2(),showRLine(),showLLine(),getGraph(),難點(diǎn)分析-2,實(shí)時(shí)動(dòng)態(tài)顯示對(duì)戰(zhàn)地圖 將對(duì)戰(zhàn)地圖劃分成4個(gè)部

3、分分別顯示 奇數(shù)行:順序輸出地圖數(shù)組中代號(hào)對(duì)應(yīng)圖像 右豎行:先輸出空格,再輸出數(shù)組中代號(hào)對(duì)應(yīng)圖像 偶數(shù)行:逆序輸出地圖數(shù)組中代號(hào)對(duì)應(yīng)圖像 左豎行,for(int i = end; i = start; i- ) /輸出數(shù)組中i位置處對(duì)應(yīng)圖像 ,for(int i = start; i = end; i+) /輸出數(shù)組中i位置處對(duì)應(yīng)圖像 ,第一階段結(jié)果演示,簡(jiǎn)單講解Game類(lèi)方法之間的調(diào)用關(guān)系,void init(),void start(),void init(),String setRole(int role),judge(),play(),showMap(int po1,int po2),

4、int throwShifter(User play),void getCurPos(User play, int step),難點(diǎn)分析-4,實(shí)現(xiàn)游戲規(guī)則 關(guān)鍵:當(dāng)移動(dòng)到某一點(diǎn)遇到關(guān)卡時(shí),怎么辦?前進(jìn)?后退? 停止?,switch(map.mapplay.pos) case 0: /普通格 if(對(duì)方在此格) /對(duì)方被炸回起點(diǎn) case 1: /幸運(yùn)輪盤(pán) /選擇和對(duì)方交換位置做交換 /選擇轟炸對(duì)方對(duì)方退6步 case 2: /地雷 /退后6步 case 3: /暫停鍵 /設(shè)置goAndStop為false,標(biāo)識(shí)下輪暫停 case 4: /時(shí)空隧道 /再前進(jìn)10步 ,難點(diǎn)分析-5,實(shí)現(xiàn)游戲角色并

5、開(kāi)始兩人對(duì)戰(zhàn) 顯示游戲界面 提示設(shè)置角色 開(kāi)始游戲,階段劃分,第一階段(15分鐘) 閱讀Map類(lèi)中已提供的代碼 第二階段(40分鐘) 完成Map類(lèi)兩個(gè)方法:生成對(duì)戰(zhàn)地圖、獲得地圖當(dāng)前位置的輸出圖像 第三階段(40分鐘) 完成并測(cè)試Map類(lèi):動(dòng)態(tài)顯示對(duì)戰(zhàn)地圖 第四階段(55分鐘) 編寫(xiě)游戲類(lèi):類(lèi)屬性、游戲初始化設(shè)置、游戲界面以及角色設(shè)置 第五階段(65分鐘) 完成游戲類(lèi):游戲控制、游戲規(guī)則 第六階段(25分鐘) 編寫(xiě)測(cè)試類(lèi):測(cè)試游戲,第一階段,第一階段(15分鐘) 利用Eclipse創(chuàng)建工程,項(xiàng)目所需包 導(dǎo)入Map.java文件到包中 閱讀Map類(lèi)已給出的代碼,明確方法之間的調(diào)用關(guān)系 要求學(xué)員自

6、己動(dòng)手完成,教員巡視,解答學(xué)員提出的問(wèn)題,階段檢查,教員發(fā)放項(xiàng)目案例相關(guān)文檔 針對(duì)第一階段抽查學(xué)員的操作結(jié)果 教員給出點(diǎn)評(píng),難點(diǎn)分析-3,實(shí)現(xiàn)游戲控制 兩個(gè)玩家輪流擲骰子,如果上輪走到暫停關(guān)卡,停擲一次,/顯示游戲開(kāi)始 while(player1.Pos 99 /設(shè)置下次狀態(tài) /玩家2 擲骰子 /顯示游戲結(jié)束并進(jìn)行評(píng)判,case 0: /走到普通格 if(play =play1 ,case 1: /幸運(yùn)輪盤(pán) System.out.println(n歡迎進(jìn)入幸運(yùn)輪盤(pán)); System.out.println( 請(qǐng)選擇一種運(yùn)氣:); System.out.println( 1. 交換位置 2. 轟

7、炸); System.out.println(=n); int choice = input.nextInt(); int temp; switch(choice) case 1: temp = play1.pos; play1.pos = play2.pos; play2.pos = temp; break; case 2: if(play=play1 ,case 2: /踩到地雷 if(play.pos6) play.pos = play.pos -6; /踩到地雷退6步 else play.pos=0; System.out.println(:-( + 踩到地雷,氣死了.); break

8、;,case 3: /下一次暫停一次 play.goAndStop = false; /設(shè)置下次暫停擲骰子 System.out.println(+_ 要停戰(zhàn)一局了。); break; case 4: /時(shí)空隧道 play.pos = play.pos + 10; /進(jìn)入時(shí)空隧道,加走10步 System.out.println(|-P + 進(jìn)入時(shí)空隧道, 真爽!); break;,第二階段,第二階段(40分鐘) 編寫(xiě)Map類(lèi)的方法createMap() 生成對(duì)戰(zhàn)地圖 編寫(xiě)Map類(lèi)的方法getGraph() 獲得地圖當(dāng)前位置的輸出圖像 要求學(xué)員自己動(dòng)手編寫(xiě),教員巡視,解答學(xué)員

9、提出的問(wèn)題,階段檢查,針對(duì)第二階段抽查學(xué)員的編碼結(jié)果 抽查學(xué)員編寫(xiě)的完整代碼,要求學(xué)員上臺(tái)講解 教員給出點(diǎn)評(píng)或集中演示難點(diǎn)部分,第二階段標(biāo)準(zhǔn)代碼演示,地圖類(lèi): Map.java,第三階段,第三階段(40分鐘) 閱讀Map類(lèi)getLine2() 編寫(xiě)Map類(lèi)getLine1():實(shí)現(xiàn)輸出地圖奇數(shù)行 閱讀Map類(lèi)getRLine() 編寫(xiě)Map類(lèi)getLLine():實(shí)現(xiàn)輸出地圖左豎行 測(cè)試Map類(lèi) 要求學(xué)員自己動(dòng)手編寫(xiě),教員巡視,解答學(xué)員提出的問(wèn)題,階段檢查,針對(duì)第三階段抽查學(xué)員的編碼結(jié)果 抽查學(xué)員編寫(xiě)的完整代碼,要求學(xué)員上臺(tái)講解 教員給出點(diǎn)評(píng)或集中演示難點(diǎn)部分,第三階段標(biāo)準(zhǔn)代碼演示,Map類(lèi):

10、Map.java 測(cè)試類(lèi):Test.java,第四階段,第四階段(55分鐘) 編寫(xiě)游戲類(lèi)(Game): 實(shí)現(xiàn)游戲初始化設(shè)置 實(shí)現(xiàn)游戲界面及角色設(shè)置 要求學(xué)員自己動(dòng)手編寫(xiě),教員巡視,解答學(xué)員提出的問(wèn)題,階段檢查,針對(duì)第四階段抽查學(xué)員的編碼結(jié)果 抽查學(xué)員編寫(xiě)的完整代碼,要求學(xué)員上臺(tái)講解,并演示運(yùn)行結(jié)果 教員給出點(diǎn)評(píng),第四階段標(biāo)準(zhǔn)代碼演示,Game: Game.java,第五階段,第五階段(65分鐘) 完成游戲類(lèi): 閱讀play()方法 編寫(xiě)游戲類(lèi)的擲骰子方法throwShifter() 補(bǔ)充代碼完成getCurPos()方法實(shí)現(xiàn)游戲規(guī)則 編寫(xiě)judge()方法評(píng)判游戲結(jié)果 要求學(xué)員自己動(dòng)手編寫(xiě),教員巡視,解答學(xué)員提出的問(wèn)題,階段檢查,針對(duì)第五階段抽查學(xué)員的編碼結(jié)果 抽查學(xué)員編寫(xiě)的完整代碼,要求學(xué)員上臺(tái)講解,并演示運(yùn)行結(jié)果 教員給出點(diǎn)評(píng),第五階段標(biāo)準(zhǔn)代碼演示,游戲類(lèi):Game.java,第六階段,第六階段(25分鐘) 編寫(xiě)測(cè)試類(lèi)StartGame:測(cè)試游戲運(yùn)行 要求學(xué)員自己動(dòng)手編寫(xiě),教員巡視,解答學(xué)員提出的問(wèn)題,階段檢查,針對(duì)第六階段抽查學(xué)員的編碼結(jié)果 抽查學(xué)員編寫(xiě)的完整代碼,要求學(xué)員上

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論