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

正文內(nèi)容

畢業(yè)論文-基于android平臺的坦克大戰(zhàn)游戲設(shè)計(文件)

2025-06-30 10:39 上一頁面

下一頁面
 

【正文】 圖形學(xué) ?? 學(xué)習(xí)這么多專業(yè)知識需要很大的努力,不過我心中有一個夢想,那么再難的目標(biāo)也 能實現(xiàn)。許多軟件 畢業(yè)設(shè)計(論文) 2 開發(fā)商以 Eclipse 為框架開發(fā)自己的 IDE,因此得到眾多組織定力支持。 調(diào)試監(jiān)視服務(wù) ():它集成在 Dalvik(Android 平臺虛擬機(jī) )中,用于管理運行在模擬器或設(shè)備上的進(jìn)程,并協(xié)助進(jìn)行調(diào)試。 SQLite 數(shù)據(jù)庫 (): Android 應(yīng)用程序可以創(chuàng)建和使用 SQLite 數(shù)據(jù)文件,開發(fā)者和使用者也可以方便的訪問這些數(shù)據(jù)文件。 JAVA現(xiàn)在主要用在 WEB 開發(fā),手機(jī)游戲及一些平臺游戲的開發(fā),因為它具有很好的跨平臺性,在手機(jī)等各種電子產(chǎn)品上應(yīng)用非常廣泛。 C++語言在提供強(qiáng)大的功能的同時也提高了程序含 BUG 的可能性。 玩家的控制:游戲打開的時候,玩家可以選擇音樂音效的開關(guān)還可以查看積分榜,然后進(jìn)入游戲,玩家可以通過屏幕上面的虛擬鍵控制坦克的運行,可以通過觸屏來控制坦克的炮筒方向并且打出炮彈 ,當(dāng)坦克打中敵方坦克,子彈和地方坦克都死亡,分?jǐn)?shù)會加一。使之具有一定的可玩性。 積分榜:玩家的得分會在積分榜上面顯示,主要顯示六個最高分。若有絲毫的差別都將很容易導(dǎo)致程序在運行不久后可能出現(xiàn)嚴(yán)重錯誤甚至崩潰死機(jī)。 己方坦克的運行可以通過監(jiān)聽鍵盤控制 ,但由于敵方是自動運行就需要有較強(qiáng)的智能性同時屏幕上的敵方可能會有較多的數(shù)量 這需要為每個敵方 開辟一個線程以便能讓其獨立運行。 對于雙方坦克發(fā)出的子彈的控制也需要對其跟蹤控制,為了避免子線程太多的現(xiàn)象,子彈不應(yīng)當(dāng)成為獨立的線程。如果子彈由產(chǎn)生自己的坦克控制,就需要特別這一子彈類和坦克類之間的關(guān)系。 游戲的結(jié)束、開始、動態(tài)信息畫面作為構(gòu)成一個完美程序都是必不可少的重要部分。如 何采用合理的記分標(biāo)準(zhǔn) 需要進(jìn)行適當(dāng)?shù)脑O(shè)計。除開發(fā)過程中對結(jié)構(gòu)上的控制、變量的使用、算法的優(yōu)化等優(yōu)化外,還可以使用混淆器 (Obfuscator)進(jìn)行程序打包后的優(yōu)化。該游戲主要是控制在 60 秒內(nèi),倒計時為零則游戲結(jié)束,打中目標(biāo)數(shù)就是該次游戲的分?jǐn)?shù)。背景音樂從游戲的開始直到游戲的結(jié)束,而音效主要是在游戲的 60秒內(nèi)才有并且要有子彈的發(fā)射或者子彈及中敵方坦克,敵方坦克發(fā)生爆炸才能聽到音效的。而游戲功能選擇又分為三部分:游戲開始,音樂的開關(guān),積分榜。分?jǐn)?shù)的最高紀(jì)錄主要記錄的是時間和分?jǐn)?shù)。這些類表面上都是各自獨立,沒有什么太大的關(guān)系。 圖 主類 設(shè)計流程 GameActivity 類 Dapao 類 Target 類 參數(shù) 1 參數(shù) 2 調(diào)用 Bullet 類 打中 調(diào)用 Explosion 類產(chǎn)程爆炸 判斷 Score 虛擬鍵盤控制移動 自動隨機(jī)出現(xiàn) 打擊 開始 歡迎界面 玩家坦克通過虛擬鍵控制坦克 發(fā)射炮彈 碰撞檢測(坦克和子彈) 不處理 同角色坦克 產(chǎn)生爆炸 不同角 色坦克 判斷記錄 結(jié)束 畢業(yè)設(shè)計(論文) 9 圖 主類相關(guān)流程圖 GameActivity 類是主類,通過調(diào)用其他類中封裝的方法來使整個系統(tǒng)運行起來實現(xiàn)相應(yīng)的功能,下面顯示 GameActivity類與各個類之間的關(guān)系 ,并且展示個各類之間調(diào)用關(guān)系,類完成的主要動作,還有各個動作之間是怎么配合,通過什么函數(shù)實現(xiàn)。其中對數(shù)據(jù)庫也做了定義用 SQL 數(shù)據(jù)庫,把分?jǐn)?shù)存儲到數(shù)據(jù)庫。并且還定義了觸屏,當(dāng)觸到了不同的功能也會轉(zhuǎn)到相應(yīng)的類來實現(xiàn)這個功能。隱去標(biāo)題欄(應(yīng)用程序的名字)用:() 來 實 現(xiàn) 的 。而該類的實現(xiàn)主要是通過以下幾個方法實現(xiàn)的。 使用 onDraw( Canvas canvas)來對畫布和畫筆進(jìn) 行設(shè)置,背景的設(shè)置使用畫筆 Paint, 畢業(yè)設(shè)計(論文) 11 設(shè)置畫筆的顏色和繪制黑填充矩形背景: ()(0,0, screenWidth,screenHeight,paint),這個矩形的大小就是屏幕的大小即該矩形覆蓋整個屏幕。先計算 一下圖片的位置,在橫坐標(biāo)上 currentX=screenWidth/()/2,計算出屏幕的中間坐標(biāo),還有圖片的中間坐標(biāo);在縱坐邊上 currentY=screenHeight/()/2 獲得圖片的縱坐標(biāo)還有屏幕的縱坐標(biāo)。 還有用到了畫布,首先是畫布的獲取 canvas=(),然后是在畫布上繪圖鎖定畫布, ( canvas)。按鈕主要有開始游戲,背景音樂,音效的設(shè)置和積分榜。首先是背景圖片的定義,然后是背景圖片的引用。如果沒有設(shè)置可觸控焦點,當(dāng)按鍵被按下時,就不會有響應(yīng),原因就是沒有設(shè)置當(dāng)前的 View 獲取焦點。 首先是當(dāng)有按下的動作時,獲取該點的相應(yīng)的坐 標(biāo),通過 ()和 (),這兩個函數(shù)主要是獲取觸屏?xí)r該點的坐標(biāo)。 為了游戲的美觀,所有的圖片都打開抗鋸齒,并且通過函數(shù)把相應(yīng)的按鈕 放置到主頁面的相關(guān)位置。 主角 主角的坦克的動作主要 有左右移動當(dāng)點擊虛擬按鈕時,子彈的發(fā)射,炮筒的 180 度旋轉(zhuǎn)。繪制按鈕函數(shù) drawSelf(Canvas canvas,Paint paint),繪制向左的按鈕有兩種狀態(tài),沒有點擊時和被按下時, (onLeftBitmap,x,y,paint),(offLeft Bitmap,x,y,paint)兩種狀態(tài)函數(shù)。右按鈕被按下和抬起的方法 switchRightBtnOn()和 switchRightBtnOff()。繪制炮筒的方法是 (paotongBitmap,mz,paint).并且繪制坦克底座canvas,drawBitmap(paotaiBitmap,paotaiX,paotaiY,paint). 子彈的發(fā)射是是通過函數(shù) sentBullet()方法來實現(xiàn)的。角度的計算是通過函數(shù)calcuateAngle(float pressX,float pressY)來計算的。 子彈 類 Bullet 和類 Explosin, 這兩個類主要實現(xiàn)了子彈運動,子彈的爆炸,子彈的的消失。首先是繪制子彈的方法 drawSelf(),并且引用圖片。在運動的過程中判斷是否與 Target 碰撞即與敵方單位碰撞,如果擊中目標(biāo)目標(biāo)就會爆炸,調(diào)用函數(shù) ()。 子彈的爆炸動畫實現(xiàn),首先定義一個數(shù)組來存儲爆炸圖片的過程 bitmaps,并且為爆炸動畫幀設(shè)置索引 anmiIndex=0。 音樂和音效 音樂包括音樂的開關(guān)還有音效的開關(guān) ,音效的開關(guān)主要是子彈碰撞到敵方坦克時爆炸的效果聲音 ,背景音樂主要是 從進(jìn)入主頁面到游戲結(jié)束一直伴隨的音樂 .音樂和音效主要是通過類 SoundSwitchButton和類 SoundControlSurfaceview 來完成和實現(xiàn)功能的。按鈕是有兩張圖片來回切換完成的,但是當(dāng)你點擊圖片的左半部分時是打開圖片按鈕,當(dāng)點擊右半部分時就會切換到關(guān)按鈕圖片,通過判斷點擊的是按鈕的哪一邊來判斷,來觸發(fā)相應(yīng)的事件,最終完成相應(yīng)的功能。 音效功能的實現(xiàn)是通過類 SoundControlSurfaceView來實現(xiàn)的,該類繼承 SurfaceView類。并且根據(jù)坐標(biāo)來判斷點擊在哪一個按鈕上面,實在按鈕的哪一部分,就會調(diào)用相應(yīng)的函數(shù)去實現(xiàn)相應(yīng)的功能。 敵方坦克 敵方坦克主要的動作就是在屏幕上隨機(jī)的出現(xiàn),如果被子彈打中就會爆炸,如果沒有被子彈打中,就會消失慢慢的走出屏幕,并且消失。實現(xiàn)這一功能的函數(shù) drawSelf(),go(),caculateCurrentXYSpan()和 explode(). 函數(shù) drawSelf()主要是調(diào)用 go()函數(shù), go()函數(shù)又調(diào)用了函數(shù) caculateCurrentXYSpan()來計算移動目標(biāo)的當(dāng)前步進(jìn)并且判斷目標(biāo)是否出了屏幕,如果出了屏幕,就會調(diào)用函數(shù)disappear() 來 處理 目 標(biāo) 物 。如果在運動的過程中被子彈打中就會使用到函數(shù) explode(),該函數(shù)主要實現(xiàn)了如果被擊中就播放目標(biāo)爆炸的聲音,并且從列表中刪除目標(biāo)同時列表中添加新的爆炸對象和得分加一分。這里主要是實現(xiàn)了數(shù)據(jù)的查詢并且進(jìn)行比較,最高的五個分?jǐn)?shù)在積分榜首頁中顯示。 功能的實現(xiàn)首先是 對一些圖片的初始化,變量的定義,一些內(nèi)部函數(shù)接口的定義等。觸屏監(jiān)聽函數(shù)主要實現(xiàn)的功能是判斷是向前翻頁還是向后翻頁,如果向前翻頁,并且翻到了首頁,頁面就會停止在首頁不會在動。當(dāng)破紀(jì)錄時,會顯示恭喜你破紀(jì)錄了。首先是初始化圖片和變量,并且獲得圖片的尺寸。主要有背景的設(shè)置,倒計時的設(shè)置還有一些效果的設(shè)置例如力度 bar 的設(shè)置。 StrengthBar 類主要實現(xiàn)根據(jù)力度,會看到力度條在動態(tài)的動。 (bitmap, x, y,paint)。 if(!()) { ()。 destination=(destination+1)%。并且在移動的過程中,判斷是否到達(dá)目的地,如果沒有到達(dá)目的地,則繼續(xù)去往下一個目的地,如果沒有到達(dá)目的地,則繼續(xù)前進(jìn)。綜合以上游戲數(shù)據(jù)的存儲方式,最終選擇了 SQLite 數(shù)據(jù)存儲方式。 cur=(sql, null)。 坦克炮筒角度的計算算法 坦克的炮筒可以 180 度的調(diào)整,敵方坦克出現(xiàn)的位置不一樣,坦克調(diào)整炮筒的位置才能夠擊中目標(biāo)。 float centerY=y+paotongHeight/2。 } return result。 首先是編程能力方面得到了一個比較好的加強(qiáng),其次就是讓我了解了我的不足,一直以來我覺得自己學(xué)到的東西挺多的,但是通過這次畢業(yè)設(shè)計下來發(fā)現(xiàn),我所了解的東西真的是滄海一粟,知識真的有太多太多,真的應(yīng)了那句話,活到老學(xué)到老。一分耕耘一分收獲。所以每個字符,每句程序都要認(rèn)真對 待。也是畢業(yè)最重要的一個過程!它最能把理論知識準(zhǔn)確運用到實際當(dāng)中的去!做好了它就是就是一份成功的畢業(yè)設(shè)計了。自己要學(xué)習(xí)的東西還太多太多!以前總是覺得自己什么東西都會!什么東西都懂!有點眼高手低。為了游戲的娛樂性,本來想在游戲中設(shè)置一些特技,設(shè)置一個冰彈打中坦克后,所有的小坦克都會被凍結(jié),時間也停止;設(shè)置高爆彈,直接能把屏幕上的所有小坦克都清除掉這些都沒能夠?qū)崿F(xiàn)。 畢業(yè)設(shè)計(論文) 21 致 謝 經(jīng)過兩個月的忙碌和工作,本次畢業(yè)設(shè)計業(yè)已完成了,作為一個本科生的畢業(yè)設(shè)計,由于經(jīng)驗的匱乏和業(yè)務(wù)邏輯的不熟悉,難免有許多考慮不周全和不完善的地方,但是在指導(dǎo)老師和宿舍同學(xué)的幫助下很多困難都得以解決,所以在此我要特別感謝 他們對我的幫助,鼓勵和支持。其中,從這一次的論文中,也深刻的體會到,自己知識的匱乏,要完善自己就要不斷努力的學(xué)習(xí)。除此之外,我們組和老師還有另外兩個交流途徑:打電話和上網(wǎng),為此老師還特意建立一個群,以便大家第一時間接收到畢業(yè)設(shè)計的最新消息和資料,每次大家都在群不亦樂乎的討論著畢業(yè)設(shè)計的事情。也可以這么說要不是您們在大學(xué)四年中嚴(yán)格要求我們,現(xiàn) 在要完成整個畢業(yè)設(shè)計那是根本不可能的。 畢業(yè)設(shè)計(論文) 23 參考文獻(xiàn) [1] 姜志強(qiáng) . Java 語言程序設(shè)計 [M].北京: 電子工業(yè)出版社, 2021 [2] 侯俊杰 . Java 語言應(yīng)用開發(fā)基礎(chǔ) [M]. [3] 孫更新 賓晟 呂婕 . Java 畢業(yè)設(shè)計指南與項目實踐 [M]. 北京:科技出版社, 2021. [4] 杜江 管佩森 . Java 使用編程 100 例 [M]. 北京:中國貼到出版社, 2021. [5] 殷兆麟 . Java 語言程序設(shè)計 [M]. 北京:高等教育出版社 , 2021. [6] 侯俊杰 . Java 程序設(shè)計教程與實訓(xùn) [M]. 北京:科學(xué)出版社 , 2021. [7] 趙強(qiáng) 陳洪 . Java 程序設(shè)計高級主題 [M]. 北京 :北京大學(xué)出版社, 2021. [8] 《電腦編程技巧與維護(hù)》雜志社 . Java 編程技巧典型案例解析 [J]. 北京:中國電力出版社, 2021 [9]張基溫 朱嘉鋼 張景莉 . Java程序開發(fā)教程 [M]. 北京:清華大學(xué)出版社,2021 [10]丁來佳 周靜 . 基于 JAVA 平臺事件驅(qū)動模型的研究與設(shè)計 [J]. 黃岡師范學(xué)院學(xué)報 , 2021,(S1) [11]張利國 龔海平 王植萌 .Android 移動開發(fā)入門與進(jìn)階 [M].北京:人民郵電出版社, 2021 [12]李華明 . Android 游戲編程之從零開始 [M。 畢業(yè)設(shè)計(論文) 22 同時感謝我的父母對我的支持,沒有他們的支持,我走不到今天。在此謹(jǐn)向 xx 老師致以誠摯的謝意和崇高的敬意 其次還要特別感謝大學(xué)四年來所有的老師,為我們打下計算機(jī)專業(yè)知識的基礎(chǔ)。在設(shè)計的整個過程中從開題報告的確定到初稿的修改,以及中期檢查,以及定稿的過程中都給予了我細(xì)心的指導(dǎo)。歷時半載,從論文選題到搜集資料,從開題報告、寫初稿到反復(fù)修改,
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1