【正文】
rdization of the optional packages including database 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 43 access, multimedia, Bluetooth, etc.. Java ME GAME 。 i((reProduceTankCount))。 if(() = 0) (false)。 i8。 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 31 } public void draw(Graphics g) { (x, y, w, h)。 } step 。 } } } 2)根據(jù)主戰(zhàn)坦克的方向和位置,打出子彈 增加對(duì) Ctrl 鍵的按鍵處理 , 根據(jù)“坦克打出一發(fā)子彈”這句話,來(lái)確定Tank 中的方法 fire,其返回值為 Missle, 根據(jù) Tank 方向和位置設(shè)定子彈的方向和位置并 new 出來(lái),然后返回( fire 方法的實(shí)現(xiàn)) 注意:掌握面向?qū)ο蟮乃季S方式來(lái)確定類應(yīng)該具有的方法 。 break。 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 23 public class Missile { public static final int XSPEED = 10。 break。 } Graphics gOffScreen = ()。 ()。 該類中的變量如表 39 所示。它標(biāo)識(shí)了子彈是屬于玩家的還是敵人的 ,這樣可以控制子彈再脫離坦克后的運(yùn)行狀 態(tài)中的行為 ,其中主要功能流程圖見圖 31 流程圖 當(dāng)擊中了需要做出反應(yīng)的物體時(shí) ,就分別采取措施 :擊中墻時(shí) ,子彈生命就結(jié)束 ,不再繼續(xù)畫 .如果沒有擊中物體 ,就繼續(xù)檢測(cè)是否擊中了坦克 ,這根據(jù)子彈的來(lái)源分為兩種情況 .當(dāng)來(lái)自玩家時(shí) ,檢測(cè)是否與敵人碰撞 ,發(fā)生碰撞時(shí) ,將敵人從List 中移走,并置為空,產(chǎn)生爆炸效果,敵人數(shù)量減少一位,敵人屏幕上數(shù)量減少一位。 3).我方的坦克的運(yùn)行可以通過鍵盤響應(yīng)事件控制,但敵方則因?yàn)槭亲詣?dòng)運(yùn)行,就需要有一定的智能性;同時(shí),出現(xiàn)在屏幕上的敵方可能性會(huì)有較多的數(shù)量,這需要為每個(gè)敵方開辟一個(gè)線程以便能讓其獨(dú)立運(yùn)行。由于 Eclipse 中的南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 7 每樣?xùn)|西都是插件,對(duì)于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)人員都具有同等的發(fā)揮場(chǎng)所。 2020年, Eclipse 選擇 OSGi 服務(wù)平臺(tái)規(guī)范為運(yùn)行時(shí)架構(gòu)。一個(gè) Java 類可以實(shí)行多個(gè)接口,但只能從一個(gè)父類繼承。字節(jié)代碼可以動(dòng)態(tài)地解釋為執(zhí)行應(yīng)用程序特定 CPU 的機(jī)器碼。 7) 中立性 Java 的設(shè)計(jì)目標(biāo)是要支持網(wǎng)絡(luò)應(yīng)用程序。 4) 分布式 Java 建立在擴(kuò)展 TCP/IP 網(wǎng)絡(luò)平臺(tái)上。多樣化則是增加游戲的任務(wù),游戲的耐玩性而在坦克大戰(zhàn)里增加更多的內(nèi)容加大其可玩性,比如:裝備,對(duì)戰(zhàn)方式,任務(wù)合作模式等等。 Eclipse 平臺(tái)模擬器開發(fā)調(diào)試。游戲附帶地圖編輯器,玩家可自行編輯地圖進(jìn)行游戲。類的封裝性、繼承性等有關(guān)對(duì)象的特性,使程序代碼只需一次編譯,然后通過上述特性反復(fù)利用。與 C++相比, Java 語(yǔ)言也提供重載函數(shù),不過它 重載的對(duì)象是函數(shù)而非變量或是運(yùn)算符。 程序運(yùn)行庫(kù)屬于系統(tǒng)的一部份,它定義了一些可移植的程序接口。 11) 動(dòng)態(tài)特性 就各方面而言, Java 是一種比 C 或 C++更具動(dòng)態(tài)特性的語(yǔ)言。 Image 類提供了一個(gè)建立背景的靜態(tài)方法 createImage(int width, int height),再利用 getGraphics()方法取得屬于這個(gè)背景的 Graphics 對(duì)象,所進(jìn)行的繪圖操作都會(huì)作用在背景上,等到全部的繪圖操作完成后,再調(diào)用 drawImage()方法將背景的數(shù)據(jù)復(fù)制到實(shí)際顯示的屏幕上。目前由 IBM牽頭,圍繞著 Eclipse 項(xiàng)目已經(jīng)發(fā)展成為了一個(gè)龐大的 Eclipse 聯(lián)盟,有 150 多家軟件公司參與到 Eclipse 項(xiàng)目中,其中包括 Borland、 Rational Software、 Red Hat 及 Sybase 等。 Eclipse 項(xiàng)目生產(chǎn)的軟件以 GPL 發(fā)布,第三方組件有各自自身的許可協(xié)議。坦克能向八個(gè)方向發(fā)射子彈,子彈擊中坦克產(chǎn)生爆炸,玩家坦克還能發(fā)射同時(shí)向八個(gè)方向發(fā)射集束炸彈。擊斃敵人坦克。 (new WindowAdapter() { public void windowClosing(WindowEvent e) { (0)。 try { (100)。 case : y = 5。 case : bD = true。 move()。 case D: y += YSPEED。 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 29 圖 414 添加多輛坦克 private static Random r = new Random()。 public Wall(int x, int y, int w, int h, TankClient tc) { = x。 return true。 ().intersects(()) amp。 int w = WIDTH * life/100 。 感謝答辯組對(duì)本畢業(yè)設(shè)計(jì)的考核,如果可以得到專家的認(rèn)可將對(duì)我的學(xué)習(xí)和工作 給予極大的鼓勵(lì)。 Alt 不符合按Ctrl 鍵 打炮彈 符合 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 37 坦克打炮彈 功能測(cè)試圖 圖 51打擊炮彈 測(cè)試 圖 52打擊炮彈測(cè)試 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 38 結(jié) 論 幾乎每一個(gè)計(jì)算機(jī)程序都會(huì)有這樣那樣的不足,尤其是未經(jīng)過精心維護(hù)的非商業(yè)軟件。 } 血塊與加入圖片 1)添加“血塊” 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 34 添加 blood 類 ; 添加必要的方法 ; 讓 blood 對(duì)象固定軌跡運(yùn)動(dòng) , 并在一定時(shí)間后消失 。 return m。 () amp。 return m。 = tc。 break。 } public void draw(Graphics g) { Color c = ()。 case : 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 22 bU = true。 } 5)讓坦克聽從我們的指揮 添加鍵盤監(jiān)聽類 KeyMonitor, TankClient 添加鍵盤監(jiān)聽器 , 針對(duì)不 同的鍵改變坦克位置 ,與重畫線程結(jié)合產(chǎn)生不同方向運(yùn)動(dòng)。按鍵重畫不能解決子彈自動(dòng)飛行的問 題。 import .*。 表 33 Missile 類中成員變量表 成員變量描述 變量類型 名稱 子彈在 X 方向上的速度 int XSPEED 子彈在 Y 方向上的速度 int YSPEED 子彈的高度 int HEIGHT 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 13 該類中包括 hitTank( ), Islive( )二個(gè)方法,其功能表如表 34 表 34 Missile 類中方法表 方法名 功能 備注 hitTank(Tank t) 實(shí)現(xiàn)子彈撞坦克的功 能 無(wú)備注 Islive() 實(shí)現(xiàn)判斷子彈是否活著的功能 無(wú)備注 坦克模塊 該模塊由 文件實(shí)現(xiàn) , 創(chuàng)建坦克,打子彈, 打多 發(fā)子彈。 5).雙方坦克在前進(jìn)時(shí)也考慮到是否碰撞到相關(guān)物體或?qū)Ψ教箍?,以免重疊運(yùn)行,造成許多物理上不可能的情況,缺乏真實(shí)感。 Eclipse Platform 允許工具建造者獨(dú)立開發(fā)與他人工具無(wú)縫集成的工具從而無(wú)須分辨一個(gè)工具功能在哪里結(jié)束,而另一個(gè)工具功能在哪里開始。 Eclipse 的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持使得 Eclipse 擁有其他功能相對(duì)固定的 IDE 軟件很難具有的靈活性。程序只能在 paint()函數(shù)中使用Graphics 繪制, GameCanvas 可調(diào)用 getGraphics()函數(shù)直接繪制在緩沖區(qū)上,可以在任何時(shí)間請(qǐng)求傳輸?shù)角芭_(tái)。將這些概念融合到語(yǔ)言中之后,它們就變得更容易使用且更為健壯。 結(jié)構(gòu)中立性是確保程序可移植的最重要部份,不過除此之外還需很多必須南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 4 配合的條件和 C 與 C++不同的是, Java 規(guī)范中并無(wú)任何與機(jī)器結(jié) 構(gòu)相依存的陳述存在。并且 Java 還提供了 Null 指針檢測(cè)、數(shù)組邊界檢測(cè)、異常出口、Byte code 校驗(yàn)等功能。 2) 安全性 Java 的編程類似 C++,學(xué)習(xí)過 C++的讀者將很快掌握 Java 的精髓。 關(guān)鍵詞 游戲 Java 坦克 智能 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) 畢業(yè)設(shè)計(jì)說明書(論文)外文摘要 Title Java Tank War Game Development Abstract J2SE is a kind of fast developing technology implemented on various devices especially the rapid development of information technology, puter use has bee more popular, the practical application of this paper to introduce the design and implementation of the game Battle City .It transports the classical product to puter, offering corresponding software for such more popular hardware platform. Eclipse platform simulator. The player’s tank is controlled by keyboard respo nse events, while the enemy’s tank is operated automatically and is of intelligence. Having been streamlined and optimized, the game system can run fluently and attract the players. This paper describes the history of Battle City, java related technologies and the procedures of structural analysis and the realization of specific functions. Game programming environment in . Its main features are: to move around. capable of firing bullets against enemy. the enemy can move. to simulate the explosion. to create an obstacle. to increase the life Key words game, Java, tank, Smart 南京工程學(xué)院畢業(yè)設(shè)計(jì)說明書(論文) i 目 錄 前言 .............................................................1 第一章 系統(tǒng)開發(fā)環(huán)境介紹 ..........................................2 開發(fā)環(huán)境 ...................................................2 JAVA語(yǔ)言的特點(diǎn) ..............................................2 關(guān)于 ECLIPSE .................................................6 第二章 軟件需求分析 ..............................................8 可行性分析 .................................................8 游戲規(guī)則和系統(tǒng)功能介紹 ......................................8 程序運(yùn)行流程 ...............................................9 第三章 系統(tǒng)總體設(shè)計(jì) .............................................12 主體模塊 ..................................................1