電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>C語言|源代碼>使用Java進(jìn)行坦克大戰(zhàn)游戲軟件程序設(shè)計的資料合集免費(fèi)下載

使用Java進(jìn)行坦克大戰(zhàn)游戲軟件程序設(shè)計的資料合集免費(fèi)下載

2018-12-13 | doc | 0.18 MB | 次下載 | 免費(fèi)

資料介紹

  隨著網(wǎng)絡(luò)時代的到來及發(fā)展,游戲產(chǎn)業(yè)方興未艾,出現(xiàn)了前所未有的繁榮?!柏澇陨摺?、“俄羅斯方塊”這些簡單的游戲曾為一代接一代的游戲玩家所熟悉。并且隨著網(wǎng)絡(luò)通信技術(shù)的迅速發(fā)展,更加有趣、更為生動的游戲?qū)映霾桓F。由于Java技術(shù)的不斷發(fā)展,Java良好的跨平臺特性在移動平臺的開發(fā)中顯示出了巨大的威力。Java語言面向?qū)ο蟮膬?yōu)勢也使得開發(fā)游戲變得非常容易,同時eclipse平臺的優(yōu)越性也給了這類游戲程序的設(shè)計帶來了很多的優(yōu)點(diǎn)和方便。本論文主要介紹了坦克大戰(zhàn)游戲的設(shè)計思路和實現(xiàn)過程。這種設(shè)計主要是利用函數(shù)對背景的所有物體進(jìn)行繪圖,然后利用線程以及***監(jiān)聽機(jī)制對物體進(jìn)行控制,例如坦克,從而實現(xiàn)各種功能,最后就可以構(gòu)成一個活生生的坦克大戰(zhàn)游戲了。

  Java功能在移動設(shè)備上的實現(xiàn),Java應(yīng)用程序產(chǎn)生的服務(wù)逐漸體現(xiàn)出其影響力,對豐富人們的生活內(nèi)容、提供快捷的資訊起著不可忽視的作用。本論文著眼于java語言的優(yōu)點(diǎn),開發(fā)一款可可供娛樂的游戲程序——坦克大戰(zhàn)。

  1. 坦克大戰(zhàn)是一個可大可小的游戲,想法靈活可以編寫出很多功能,所以需要對程序的要求量應(yīng)該是巨大的,但是其代碼利用率很高,因此實際編寫時也不需要太多的絞盡腦汁,可以利用各模塊程序的相近性靈活運(yùn)用。一個實時運(yùn)行的最終作品,每秒都會運(yùn)行成千上萬行程序,繪圖***、鍵盤***都會以極高的頻率在后臺等待響應(yīng),若有絲毫的差別都將很容易導(dǎo)致程序在運(yùn)行不久后可能出現(xiàn)嚴(yán)重錯誤,甚至死循環(huán)。因此,其邏輯設(shè)計應(yīng)當(dāng)相當(dāng)嚴(yán)謹(jǐn),需將所有可能發(fā)生的***及意外情況考慮在設(shè)計中。

  2. 游戲中為了美觀,適用性強(qiáng)以及操作的簡便性,我們主要利用draw函數(shù)畫出矩形,圓及線構(gòu)成一輛***,同時畫出子彈,敵方坦克可以直接引用之前畫出的坦克,這樣畫圖的問題就基本解決了。

  3. 己方坦克的運(yùn)行可以通過鍵盤響應(yīng)***控制,但敵方則因為是自動運(yùn)行,就需要有一定其一定的智能性;同時,出現(xiàn)在屏幕上的敵方可能會有較多的數(shù)量,這需要為每個敵方開辟一個線程以便能讓其獨(dú)立運(yùn)行。Java的多線程能力為實現(xiàn)這樣的游戲提供了可能。敵人坦克的運(yùn)行算法也需要進(jìn)行適當(dāng)?shù)脑O(shè)置,以免游戲過于簡單,單調(diào)。

  4. 對于雙方坦克發(fā)出的子彈的控制也需要對其跟蹤控制,子彈也需要處在獨(dú)立的線程中。敵方子彈僅需要掃描用戶坦克,而用戶坦克需要在每一步掃描所有的敵方坦克。這需要對所有的對象有較好的控制。另外,子彈在運(yùn)行過程中也需要實時掃描是否碰撞到了相關(guān)障礙物或屏幕邊界。同時為了游戲的公平性,己方坦克發(fā)出的子彈數(shù)量必須控制,不能一下發(fā)出太多顆。

  5. 對于敵我雙方的坦克在運(yùn)動的過程中也需要考慮會不會發(fā)生碰撞也就是重疊狀況體,也要考慮坦克碰到邊緣時不能繼續(xù)前進(jìn),以免跑出有效范圍,每前進(jìn)一步都需要將所有的周圍環(huán)境進(jìn)行嚴(yán)格的控制。

  6. 游戲的結(jié)束、開始、動態(tài)畫面等信息是構(gòu)成一個完美程序必不可少的環(huán)節(jié)。良好的用戶界面更是吸引用戶的硬實力,為此必須要加入坦克爆炸的效果圖以及游戲進(jìn)行時的音效。

  7. 用戶運(yùn)行游戲時需要有分?jǐn)?shù)記錄的可能。如何采用合理的記分標(biāo)準(zhǔn),需要進(jìn)行適當(dāng)?shù)脑O(shè)計。記錄分?jǐn)?shù)的存儲方式也需要有較好的解決方案,可以利用IO流編程來實現(xiàn)將數(shù)據(jù)存入電腦硬盤中的某個文件中。

  本程序采用面向?qū)ο蟮脑O(shè)計模式,對游戲中的所有物體賦予對象的概念和屬性。運(yùn)行程序后允許用戶選擇執(zhí)行選項菜單,在開始游戲后將先對背景的所有物體進(jìn)行繪圖。在主程序運(yùn)行的線程中,畫面刷新將以一定的頻率采用雙緩沖技術(shù)對屏幕重繪,實時反映整個游戲的進(jìn)行狀態(tài)。用戶控制的坦克運(yùn)行在主線程中,敵方坦克將在游戲開始時逐漸新增線程,每增加一個敵方坦克對象就新增加一條線程,一旦線程數(shù)滿到最大值(本程序暫設(shè)置為20),就不允許敵人再繼續(xù)出現(xiàn)。用戶坦克自誕生之時起將擁有5發(fā)子彈的權(quán)利,子彈雖然開在單獨(dú)的線程中,但運(yùn)行結(jié)束后(比如撞到相關(guān)物體或敵方坦克時)并不結(jié)束子彈對象,只是將其線程終止。用戶再次發(fā)射子彈時只是將終止的線程再次激活。在屏幕重繪的主程序中,將在每次的循環(huán)中判斷若干***。如:用戶坦克的生命是否為0,敵方坦克數(shù)是否已經(jīng)為零,屏幕上的坦克數(shù)量是否少于仍剩下的坦克數(shù)量等。以便程序進(jìn)入相關(guān)的分支執(zhí)行相關(guān)的反應(yīng)代碼,結(jié)束游戲或統(tǒng)計分?jǐn)?shù)等。主程序流程如圖所示:

  Java界曾流行這樣一句話:不懂線程就不要說自己會Java,可見線程對Java的重要性是多么的大。那么線程的作用有哪些呢,最為典型的就是你在網(wǎng)絡(luò)上放一個服務(wù)端,一個客戶端訪問時,就會新建一個線程處理這個客戶端的事務(wù),這樣的話只要不斷新建線程就可以處理多個用戶的請求了。當(dāng)然我們的這個坦克大戰(zhàn)游戲的實現(xiàn)肯定離不開線程,例如己方坦克是必須要會移動的,那么敵人坦克也要移動,子彈呢?當(dāng)然也要會移動,等等…。那么這么多的功能要實現(xiàn)就要用到線程了。
?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1SMD LED選型手冊 貼片燈珠
  2. 5.47 MB   |  4次下載  |  免費(fèi)
  3. 2明緯S-50-24開關(guān)電源電路圖.pdf
  4. 0.10 MB   |  2次下載  |  5 積分
  5. 3基本半導(dǎo)體產(chǎn)品在Sic逆變焊機(jī)中的應(yīng)用
  6. 7.27 MB   |  2次下載  |  免費(fèi)
  7. 4加密芯片的一種破解方法和對應(yīng)加密方案改進(jìn)設(shè)計
  8. 0.29 MB   |  1次下載  |  免費(fèi)
  9. 5多功能MPU芯片GC9005數(shù)據(jù)手冊
  10. 2.67 MB   |  1次下載  |  免費(fèi)
  11. 6基本半導(dǎo)體產(chǎn)品在125kW工商業(yè)儲能PCS中的應(yīng)用
  12. 10.74 MB   |  1次下載  |  免費(fèi)
  13. 7MOSFET參數(shù)解讀
  14. 1.59 MB   |  1次下載  |  2 積分
  15. 8550W充電機(jī)原理圖
  16. 0.13 MB   |  1次下載  |  6 積分

本月

  1. 1使用單片機(jī)實現(xiàn)七人表決器的程序和仿真資料免費(fèi)下載
  2. 2.96 MB   |  44次下載  |  免費(fèi)
  3. 2美的電磁爐維修手冊大全
  4. 1.56 MB   |  16次下載  |  5 積分
  5. 33314A函數(shù)發(fā)生器維修手冊
  6. 16.30 MB   |  13次下載  |  免費(fèi)
  7. 4STM32F101x8/STM32F101xB手冊
  8. 1.69 MB   |  8次下載  |  1 積分
  9. 5感應(yīng)筆電路圖
  10. 0.06 MB   |  8次下載  |  免費(fèi)
  11. 6使用TL431設(shè)計電源
  12. 0.67 MB   |  7次下載  |  免費(fèi)
  13. 7不對稱半橋(AHB)反激變換器的分析與設(shè)計
  14. 0.68 MB   |  6次下載  |  1 積分
  15. 8LZC3106G高性能諧振控制器中文手冊
  16. 1.29 MB   |  5次下載  |  1 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935119次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
  4. 1.48MB  |  420062次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233084次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191367次下載  |  10 積分
  9. 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183335次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81581次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73807次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65987次下載  |  10 積分