freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于j2se的坦克大戰(zhàn)畢業(yè)設(shè)計(jì)論文-閱讀頁

2025-07-09 15:44本頁面
  

【正文】 射炮彈并加入新炮彈,能夠逐一發(fā)射每一發(fā)炮彈、抬起“A”鍵可以發(fā)射超級炮彈等功能;(6)locationDirection()方法:定義了炮筒方向,可以向八個(gè)方向發(fā)射炮彈;(7)fire()方法:處理發(fā)送子彈的方法;(8)bumpWithWall()方法:主要負(fù)責(zé)處理坦克撞墻事件;(9)bumpWithTank()方法:主要到負(fù)責(zé)處理坦克和坦克相撞事件; Missile 類基本功能分析Misslile(子彈)類和 Tank 類一樣,只封裝一些變量屬性和靜態(tài)方法,主要變量包括:子彈自己的大小(WIDTH,HRIGHT) ,運(yùn)動(dòng)速度(SPRRD_X:在 x 軸方向的速度;SPEED_Y:在 Y 軸方向的速度)、子彈標(biāo)示(ID) 、所屬坦克的 id 號(TankId 用于網(wǎng)絡(luò)版)等。Misslie13類中的主要方法如下:(1) draw()方法:負(fù)責(zé)畫出子彈的所有活動(dòng);(2) move()方法:先判斷方向再移動(dòng),并給它一定的移動(dòng)速度;(3) getRect()方法:負(fù)責(zé)取得子彈的外切方形,為碰撞檢測做準(zhǔn)備;(4) hitTan()方法:檢測子彈是否撞到坦克,若撞到返回 true,否則返回 false;(5) hitTanks()方法:檢測是否撞到一系列坦克中的一個(gè);(6) hitWall()方法:檢測子彈和墻是否相撞。使用 11 張圖片重疊現(xiàn)實(shí)爆炸效果如 圖所示:圖 爆炸圖 服務(wù)器類基本功能分析TankServer(服務(wù)器)類主要負(fù)責(zé)在網(wǎng)絡(luò)對戰(zhàn)游戲時(shí)維護(hù)各個(gè)在線玩家的基本信息,并動(dòng)態(tài)的維護(hù)玩家列表。將網(wǎng)絡(luò)中傳遞的眾多信息封裝成可序列化的類,將會(huì)使程序有很好的可擴(kuò)展性。第 4 章 系統(tǒng)實(shí)現(xiàn) 游戲主窗體實(shí)現(xiàn)TankClient 類負(fù)責(zé)畫出游戲主窗體,它是整個(gè)游戲運(yùn)行和所有活動(dòng)的場所。為了游戲不至于太單調(diào),還配置了背景音樂。因?yàn)樗⑿轮禺嬵l率太快,paint()方法還沒有完成,會(huì)造成逐條顯示,影響系統(tǒng)的運(yùn)行,所以解決辦法是創(chuàng)建一個(gè)虛擬屏幕,在屏幕的后面,在要畫的將所有的東西畫在虛擬屏幕上,也就是內(nèi)存上,畫完之后一次性將虛擬屏幕上的內(nèi)容貼到屏幕上,這樣就消除了閃爍現(xiàn)象,用戶的眼睛便感覺不到閃爍了。游戲主窗體界面如圖 所示:15圖 游戲主窗口預(yù)覽效果圖實(shí)現(xiàn)虛擬屏幕消除閃爍的關(guān)鍵代碼如下:public void update(Graphics g) { //利用雙緩沖消除閃爍的效果if(offScreenImage == null) {offScreenImage = (GAME_WIDTH, GAME_HEIGHT)。Color c = ()。(0, 0, GAME_WIDTH, GAME_HEIGHT)。paint(gOffScreen)。}16 單機(jī)游戲的實(shí)現(xiàn)游戲運(yùn)行主界面,在下拉菜單中選擇單機(jī)游戲進(jìn)入單人模式,通過鍵盤控制坦克運(yùn)動(dòng),相互對戰(zhàn),當(dāng)被打中時(shí)產(chǎn)生一個(gè)爆炸,屏幕左上方顯示游戲信息:子彈數(shù)目(出界就死亡) 、爆炸數(shù)目、敵方坦克數(shù)目、玩家坦克生命值(當(dāng)玩家坦克被擊中 4 次時(shí),游戲結(jié)束) 、玩家得分。Server類系統(tǒng)模型圖如圖 所示:serverTCPListenerUDPListener接收客戶端連接 轉(zhuǎn)發(fā)游戲數(shù)據(jù)圖 Server 類系統(tǒng)簡單模型圖網(wǎng)絡(luò)游戲模式下,游戲主要在客戶端運(yùn)行,啟動(dòng)客戶端時(shí)玩家首先要填寫信息之后才能加入到游戲中去,先啟動(dòng)服務(wù)器,紅色小方塊表示確定服務(wù)器已連接。游戲主界面圖如圖 所示:圖 網(wǎng)絡(luò)版游戲玩家信息欄填寫好玩家信息,登陸后游戲主界面,進(jìn)入游戲后,通過玩家坦克上方的19ID 號(單雙數(shù))和顏色(藍(lán)\紅)來區(qū)分?jǐn)秤选? //TCP 的監(jiān)聽端口public static final int UDP_PORT = 6666。ListClient clients = new ArrayListClient()。ServerSocket ss = null。try {ss = new ServerSocket(TCP_PORT)。}21while(true) { //鏈接 TCPtry {s = ()。int udpPort = ()。Client c = new Client(IP,udpPort)。(ID++)。(A Client Connected!Addr_+IP+:+()+_UDPPort:+udpPort)。} } }private class UDPThread implements Runnable { //建立一個(gè) UDP 的接受和轉(zhuǎn)發(fā)線程byte[] buf = new byte[1024]。try { ds = new DatagramSocket(UDP_PORT)。while(ds != null) { DatagramPacket dp = new DatagramPacket(buf,)。 //接受數(shù)據(jù)包for(int i=0。i++) { //分別轉(zhuǎn)發(fā)給其22他客戶端Client c = (i)。//得到將要轉(zhuǎn)發(fā)的客戶端的 IP 地址和端口 (dp)。}}} catch (SocketException e) {()。在單機(jī)模式下,玩家的游戲發(fā)射火力要比電腦隨機(jī)產(chǎn)生的坦克能力稍強(qiáng)一些,當(dāng)分?jǐn)?shù)值達(dá)到一定時(shí),玩家可以發(fā)射超級炮彈。到此為止,本設(shè)計(jì)基本完成預(yù)期效果。從選題、收集資料、學(xué)習(xí)相關(guān)技術(shù)到實(shí)際編程,我都一絲不茍的對待了。通過這次畢業(yè)設(shè)計(jì)以及撰寫本畢業(yè)論文,我學(xué)會(huì)了一些編程技巧,而且對調(diào)試的錯(cuò)誤有進(jìn)一步的認(rèn)識,有時(shí)候就一個(gè)小小的語法錯(cuò)誤就會(huì)導(dǎo)致程序調(diào)試不通過。使用不同的編程環(huán)境,其效23率完全不一樣,所以我選擇了 Eclipse,它自動(dòng)找錯(cuò)/ 糾錯(cuò)功能、Debug 調(diào)試和代碼自動(dòng)生成等一些重要的功能大大提高了我的設(shè)計(jì)效率。 設(shè)計(jì)中的不足之處本系統(tǒng)實(shí)現(xiàn)了坦克游戲所應(yīng)有的基本功能,但是由于時(shí)間和能力有限,還有一部分功能未能實(shí)現(xiàn),例如:外部文件讀取、地圖設(shè)定、升級、坦克的高級人工智能控制等,不能和現(xiàn)在 Inter 上各種坦克大戰(zhàn)游戲相媲美。還有就是當(dāng)運(yùn)行網(wǎng)絡(luò)模式時(shí),必須專門啟動(dòng)服務(wù)器,而不是一鍵啟動(dòng)。 展望本系統(tǒng)基本實(shí)現(xiàn)了坦克游戲所應(yīng)有的基本功能,在大學(xué)中最后一次專攻式的學(xué)習(xí)了 Java 語言,使我對 Java 語言有了更深層次的理解,通過該游戲設(shè)計(jì),提高了我的編程能力,也讓我養(yǎng)成了良好的編程習(xí)慣。24致 謝經(jīng)過三個(gè)多月的忙碌和工作,本次畢業(yè)設(shè)計(jì)業(yè)已完成了,由于經(jīng)驗(yàn)的匱乏和業(yè)務(wù)邏輯的不熟悉,難免有許多考慮不周全和不完善的地方,但是在指導(dǎo)老師和宿舍同學(xué)的幫助下很多困難都得以解決,所以在此本人要特別感謝他們對我的幫助。在設(shè)計(jì)的整個(gè)過程中從開題報(bào)告的確定到初稿的修改,以及中期檢查,以及定稿的過程中都給予了我細(xì)心的指導(dǎo)。以前總是覺得學(xué)的課程沒有什么用處,但是當(dāng)真正用計(jì)算機(jī)來解決實(shí)際問題的時(shí)候,才知道每門課程的重要性,甚至覺得所學(xué)習(xí)的那些課程還遠(yuǎn)遠(yuǎn)不夠,所以以后還應(yīng)該不斷的學(xué)習(xí)。再次,感謝我們小組的幾位同學(xué),在我遇到一些難以解決的問題時(shí),給與我支持,鼓勵(lì)和幫助,在論文撰寫過程中,認(rèn)真仔細(xì)的幫我修改,包括一些難以發(fā)覺的語法,符號錯(cuò)誤,使我受
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1