項(xiàng)目坦克大戰(zhàn)設(shè)計(jì)報(bào)告_第1頁
項(xiàng)目坦克大戰(zhàn)設(shè)計(jì)報(bào)告_第2頁
項(xiàng)目坦克大戰(zhàn)設(shè)計(jì)報(bào)告_第3頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

1、JAVA 程序開發(fā)課程設(shè)計(jì)項(xiàng)目設(shè)計(jì)專業(yè): 軟件工程項(xiàng)目名稱:TankWa軟件班級(jí): 13軟工 1 班 姓名:毛晨光 學(xué)號(hào): 24一、需求分析:基本功能:1. 玩家控制的坦克能夠四處移動(dòng)并且打擊敵方坦克;2. 敵方坦克能夠隨機(jī)四處移動(dòng)并且打擊玩家控制的坦克;3. 玩家控制的坦克擁有血量,而敵方坦克沒有;4. 坦克受到攻擊時(shí)血條會(huì)縮短;5. 敵方坦克被消滅完之后,提示游戲勝利;6. 用戶方坦克被消滅后提示游戲結(jié)束; 特色功能:1. 坦克具有圖片,不單單只是個(gè)圈圈。2. 增加了血包功能,地圖上會(huì)隨機(jī)出現(xiàn)一個(gè)血包,我方坦克開過會(huì)增加 血量。二、系統(tǒng)設(shè)計(jì): 類:實(shí)現(xiàn)游戲界面地圖的初始化。 類:繪制和重繪

2、功能。: 監(jiān)聽用戶的鍵盤輸入。 類:實(shí)現(xiàn)坦克的初始化,繪制,移動(dòng),發(fā)射等功能。:實(shí)現(xiàn)敵方坦克的初始化,繪制,移動(dòng),發(fā)射等功能。 類:實(shí)現(xiàn)炮彈的初始化,繪制,移動(dòng),攻擊功能。 類:實(shí)現(xiàn)爆炸的初始化。 繪制功能, 爆炸效果由繪制半徑從小到大再到小 的圓實(shí)現(xiàn) 。類:包含枚舉。 類:用于實(shí)現(xiàn)血包的功能。三、功能實(shí)現(xiàn)。一繪制地圖功能:public class TankMap extends Frametart();public class Tank 方坦克的繪制方法public class En emyTa nk exte nds Tankpublic class Shell n tersects()n

3、 tersects()"hitta nks");(false);=false;Explor ex=new Explor(x-3,y-3,; return true;return true;五.爆炸類源代碼:public class Explor 舉方向源代碼package tank;機(jī)血包產(chǎn)生的方法public class Bloodpublic final int WIDTH=30,HEIGHT=30;public int x= newRan dom(). nextl nt(800),y=newRan dom(). nextl nt(600);Tan kM ap tm;p

4、ublic void draw(Graphics g)ImageIc on icon=new ImageIc on ("");Image tan kImage=();(ta nklmage,x,y, null);public boolean bloodb(Tank t) if&&().intersects()if()<=60)"blood up");()+40);else"blood up"); (100);return false;public Rectangle getRec() return new Rec

5、tangle,;四、總結(jié)。1. 如何解決地圖頻閃的問題用雙緩沖機(jī)制來畫出屏幕,雙緩沖機(jī)制是通過虛擬出一張圖片, 將屏幕畫在這張?zhí)摂M的圖片上,在將這張?zhí)摂M的圖片呈現(xiàn)在屏幕 上。2. 如何確定炮彈擊中坦克炮彈類和坦克類里都有一個(gè)getRec()方法來獲取炮彈和坦克的當(dāng)前位置,當(dāng)炮彈的getRec()與坦克的getRec()相交,則判 定炮彈擊中坦克。3. 如何限制坦克在地區(qū)上行駛,不會(huì)跑出規(guī)定的區(qū)域當(dāng)坦克移動(dòng)超出地圖大小,則立馬讓坦克返回到地圖邊緣加坦克 大小的位置。4. 如何自行設(shè)置發(fā)射炮彈的按鍵在坦克類中原本是監(jiān)聽f鍵,當(dāng)f鍵按下后發(fā)射炮彈,只需要修改 監(jiān)聽的鍵就可以改變發(fā)射炮彈的按鍵。5. 如何處理多個(gè)炮彈的產(chǎn)生、消失炮彈類有個(gè)方法isLive(),當(dāng)用戶按下f鍵或者地方坦克隨機(jī)數(shù) 達(dá)到要求是isLive ()為true,開始畫炮彈,即炮彈產(chǎn)生。當(dāng)炮彈 的getRec()與普通墻、金屬墻、坦克的 getRec()相交,或者 子彈移動(dòng)出地圖外,isLive ()為faise,則立馬從地圖上 remove 炮彈,即炮彈消失。五、軟件說明書首先打開eclip

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論