【正文】
南 京 工 程 學(xué) 院 畢業(yè)設(shè)計說明書 (論文 ) 作 者: 超人 學(xué) 號: 1 院 系: 康尼學(xué)院 專 業(yè): 計算機(jī)科學(xué)與技術(shù) 題 目: 基 于 java 的坦克大戰(zhàn)游戲開發(fā) 指導(dǎo)者: 實驗師 (姓 名 ) (專業(yè)技術(shù)職務(wù) ) 評閱者: 講師 (姓 名 ) (專業(yè)技術(shù)職務(wù) ) 2020 年 6 月 南 京 畢業(yè)設(shè)計說明書(論文)中文摘要 J2SE 是近年來隨著各種不同技術(shù)的發(fā)展,尤其是編程語言飛速發(fā)展而誕生的一項新的開發(fā)語言。 隨著信息技術(shù)的飛速發(fā)展,計算機(jī)的使用也日漸普及,本文從實際應(yīng)用出發(fā),向大家介紹坦克大戰(zhàn)游戲的設(shè)計與實現(xiàn)。 Eclipse 平臺模擬器開發(fā)調(diào)試。玩家坦克的運行是通過鍵盤響應(yīng)事件控制,敵方坦克則是自動運行并具有了一定的智能性。程序進(jìn)行了精簡 和優(yōu)化,游戲運行流暢,具有一定的吸引力。 論文中介紹了游戲的總體設(shè)計思路和開發(fā)游戲的多線程、高級、低級圖形界面的使用。本論文介紹了坦克大戰(zhàn)的歷史、 java 的相關(guān)技術(shù)及本程序的結(jié)構(gòu)分析和具體功能的實現(xiàn)。游戲是在 環(huán)境下編程。它的主要功能有: 能夠四處移動、能夠發(fā)射子彈打擊敵人、敵人能夠移動、 能夠模擬爆炸、能夠產(chǎn)生障礙、能夠增長生命 。 關(guān)鍵詞 游戲 Java 坦克 智能 南京工程學(xué)院畢業(yè)設(shè)計說明書(論文) 畢業(yè)設(shè)計說明書(論文)外文摘要 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è)計說明書(論文) i 目 錄 前言 .............................................................1 第一章 系統(tǒng)開發(fā)環(huán)境介紹 ..........................................2 開發(fā)環(huán)境 ...................................................2 JAVA語言的特點 ..............................................2 關(guān)于 ECLIPSE .................................................6 第二章 軟件需求分析 ..............................................8 可行性分析 .................................................8 游戲規(guī)則和系統(tǒng)功能介紹 ......................................8 程序運行流程 ...............................................9 第三章 系統(tǒng)總體設(shè)計 .............................................12 主體模塊 ..................................................12 子彈模塊 ..................................................12 坦克模塊 ..................................................13 墻模塊 ....................................................13 血液模塊 ..................................................14 爆炸模塊 ..................................................15 第四章 系統(tǒng)詳細(xì)設(shè)計與實現(xiàn) .......................................16 游戲窗口與我方坦克 ........................................16 子彈與一輛敵人坦克 ........................................22 爆炸與多輛敵人坦克 ........................................27 墻、坦克互相穿越、超級炮彈和生命值 .........................30 血塊與加入圖片 ............................................33 第五章 坦克大戰(zhàn)打炮彈功能系統(tǒng)測試 ...............................36 抬 CTRL 打炮彈的測試要點 ....................................36 坦克大戰(zhàn) 系統(tǒng)采用的測試方法 .................................36 南京工程學(xué)院畢業(yè)設(shè)計說明書(論文) ii 功能測試用例 ..............................................36 結(jié) 論 ..........................................................38 參考文獻(xiàn) ........................................................39 致謝 ............................................................40 附錄:英文技術(shù)資料翻譯 ..........................................41 南京工程學(xué)院畢業(yè)設(shè)計說明書(論文) 1 前 言 如果要從精品云集的 FC游戲中找一款經(jīng)典之作,《坦克大戰(zhàn)》絕對是 FC上所有經(jīng)典中的經(jīng)典,當(dāng)年 NAMCO 的《 Battle City》在國內(nèi)又稱《坦克大戰(zhàn)》,以其極為出色的游戲性令全球眾多玩家為之瘋狂。 該游戲是一款以紅白機(jī)為平臺操作射擊游戲, 1 名玩家可控制自己的坦克進(jìn)行移動和射擊 , 殲滅對方為勝利目標(biāo)。每個關(guān)卡的地形不同,玩家可利用各種地形對敵人進(jìn)行打擊,并會得到補給。其操作簡單且娛樂性強,是一款男女老少皆宜的游戲。游戲附帶地圖編輯器,玩家可自行編輯地圖進(jìn)行游戲。游戲中的眾多經(jīng)典關(guān)卡至今還讓許多玩家記憶猶新,在 80年代時曾經(jīng)在無數(shù)家庭中帶來了無盡的歡樂。 JAVA 語言是當(dāng)今最為流行的程序設(shè)計語言之一,作為非常優(yōu)秀和極為健壯 的編程語言,它同時有的面向?qū)ο?,與平臺無關(guān),分布式應(yīng)用,安全,穩(wěn)定和多線程等優(yōu)良的特征,使用 JAVA 語言,不僅可以開發(fā)出功能強大的大型應(yīng)用程序,而且 JAVA 語言本身突出的跨平臺的特性也使得它特別適合于Inter 上的應(yīng)用開發(fā),可以這樣說, JAVA 的出現(xiàn)使得所開發(fā)的應(yīng)用 程序“一次編寫,處處可用”的實現(xiàn)成為了可能 。 網(wǎng)絡(luò)化的市場讓游戲變成人和人的交戰(zhàn),而不是人和電腦的對戰(zhàn),這樣可以增加游戲的難度,游戲的時間和游戲的壽命。立體化是為了適應(yīng)現(xiàn)在越來越3D的趨勢,游戲有必要做的更加的完善,趨向 3D 并且加重環(huán)境描 寫。多樣化則是增加游戲的任務(wù),游戲的耐玩性而在坦克大戰(zhàn)里增加更多的內(nèi)容加大其可玩性,比如:裝備,對戰(zhàn)方式,任務(wù)合作模式等等??梢韵胂?,如果坦克大戰(zhàn)還是人機(jī)對戰(zhàn)的模式,并且協(xié)作性不提高的化,玩家對該游戲的選擇性將大大降低,最終成為歷史。 本課題就是想對該游戲進(jìn)行分析研究,借助于它的游戲規(guī)則,用 JAVA 語言模擬開發(fā)一個類似的,功能相對簡單的小游戲。 南京工程學(xué)院畢業(yè)設(shè)計說明書(論文) 2 第一章 系統(tǒng)開發(fā) 環(huán)境介紹 開發(fā)環(huán)境 操作系統(tǒng): Microsoft Windows 7 程序語言: Java 開發(fā)工具: Eclipse Java 語言的 特點 1) 平臺無關(guān)性 平臺無關(guān)性是指 Java 能運行于不同的平臺。 Java 引進(jìn)虛擬機(jī) 原理,并運行于虛擬機(jī),實現(xiàn)不同平臺的 Java 接口之間。使用 Java 編寫的程序能在世界范圍內(nèi)共享。 Java 的數(shù)據(jù)類型與 機(jī)器無關(guān), Java 虛擬機(jī)( Java Virtual Machine)是建立在硬件和操作系統(tǒng)之上,實現(xiàn) Java 二進(jìn)制代碼的解釋執(zhí)行功能, 提供于不同平臺的接口的。 2) 安全性 Java 的編程類似 C++,學(xué)習(xí)過 C++的讀者將很快掌握 Java 的精髓。 Java舍棄了 C++的指針對存儲器地址的直接操作,程序運行時,內(nèi)存 由操作系統(tǒng)分配,這樣可以避免病毒通過指針侵入系統(tǒng)。 Java 對程序提供了安全管理器,防止程序的非法訪問。 3) 面向?qū)ο? Java 吸取了 C++面向?qū)ο蟮母拍?,將?shù)據(jù)封裝于類中,利用類的優(yōu)點,實現(xiàn)了程序的簡潔性和便于維護(hù)性。類的封裝性、繼承性等有關(guān)對象的特性,使程序代碼只需一次編譯,然后通過上述特性反復(fù)利用。程序員只需把主要精力用在類和接口的設(shè)計和應(yīng)用上。 Java 提供了眾多的一般對象的類,通過繼承即可使用父類的方法。在 Java 中,類的繼承關(guān)系是單一的非多重的,一個子類只有一個父類,子類的父類又有一個父類。 Java 提供的 Object 類及其子類的繼承關(guān)系如同一棵倒立的樹形,根類為 Object 類, Object 類功能強大,經(jīng)常會使用到它及其它派生的子類。 4) 分布式 Java 建立在擴(kuò)展 TCP/IP 網(wǎng)絡(luò)平臺上。庫函數(shù)提供了用 HTTP 和 FTP 協(xié)議傳送和接受信息的方法。這使得程序員使用網(wǎng)絡(luò)上的文件和使用本機(jī)文件一樣南京工程學(xué)院畢業(yè)設(shè)計說明書(論文) 3 容易 , 使用其相關(guān)技術(shù)可以十分方便的構(gòu)建分布式應(yīng)用系統(tǒng)。 5) 健壯性 Java 致力于檢查程序在編譯和運行時的錯誤。類型檢查幫助檢查出許多開發(fā)早期出現(xiàn)的錯誤。 Java 自己操縱內(nèi)存減少了內(nèi)存出錯的可能性。 Java 還實現(xiàn)了 真數(shù)組,避免了覆蓋數(shù)據(jù)的可能,這些功能特征大大提高了開發(fā) Java 應(yīng)用程序的周期。并且 Java 還提供了 Null 指針檢測、數(shù)組邊界檢測、異常出口、Byte code 校驗等功能。 Java 取消了 C 語言的結(jié)構(gòu)、指針、 define 語句、多重繼承、 goto 語句、操作符、重載等不