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

正文內容

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

2025-06-26 10:39本頁面
  

【正文】 faceView 在繪制過程中被修改,摧毀等發(fā)生的狀態(tài)改變;與 lockCanvas()函數(shù)對應的還有一個 unlockCanvasAndPost( Canvas canvas)函數(shù)用于解鎖畫布提交。 虛擬按鈕的功能實現(xiàn)主要是在 GameVirtualButton 類中完成和實現(xiàn)的。虛擬按鈕功能的實現(xiàn)主要是按鈕是否被按下,并且判斷按下的按鈕是向左移動的按鈕還是向右移動的按鈕。繪制向右的按鈕的兩種狀態(tài)的方法繪制做按鈕的方法一樣。 左按鈕被按下和抬起的方法 switchLeftBtnOn(),switchLeftBtnOff()。 虛擬按鈕被設置了兩個速度一個是慢速度一個是快速度,當屏幕的寬減去坦克底座的長度大于等于坦克底座的橫坐標時,坦克會以慢的速度移動,反之則會以快的速度移動。還要設置炮筒的旋轉矩陣,這樣便于炮筒的旋轉。首先子彈是是一個小圖片,要圖片的定義和引用,并且還要知道子彈的半徑,炮筒的高度和炮筒的管寬,這樣是為了能夠逼真的顯示炮彈從炮筒里面打出去。 炮筒的 180 度旋轉主要是通過角度改變來調整的。但是要判斷點擊點在炮筒的哪一邊。最后返回 result 來實現(xiàn)角度的改變,從而實現(xiàn)了炮筒的 180 度的旋轉。這里主要涉及到了一個算法 碰撞。碰撞后敵方的坦克就會消失,顯然爆炸的子彈也會消失。還使用了子彈的前進方法 go(),子彈的前進方向主要有水平方向和豎直方向。豎直方向是通豎直 方向的分速度經(jīng)過的路徑和自由落體運動時所經(jīng)過的路徑之和,但是認定豎直方向做自由落體運動。如果子彈沒有擊中目標,就會判斷子彈是否在屏幕內,如果不在屏幕內子彈就會消失。子彈的消失是通過函數(shù) disapear(),來實現(xiàn)的 。當子彈碰到敵方單位是就會播放不炸效果圖,如果沒有播放完畢,就會爆炸動畫幀就會自動加一,繼續(xù)播放下一幀直到播放完畢為止,播放完畢后,就會從列表中刪除此爆炸。首先是繪制背景(Bitmaps[anmiIndex],x,y,paint),然后進行動畫的播放。 首先是音樂音效按鈕的設置,定義出關于按鈕的量和關于文字的量然后再設置文字與按鈕之間的間距等,還要對一些圖片進行初始化和引用定義等。觸控事件的判斷通過函數(shù) isActionOnButtonOff()(判斷左按鈕是否有觸控時間的方法 ),isActionOnButtonOff()(判斷右按鈕是否有觸控事件的方法)。這個功能的完成主要還有一點就是圖片的引用,安置。按鈕被按下時,還用到的函數(shù) switchOn()和 switchOff()的返回值。首先是引用 activity 類并且線程引用,文字的圖片,主菜單上虛擬按鈕對象引用,背景圖片等。 設置觸 屏監(jiān) 聽函數(shù)onTouchEvent(MotionEvent event),主要是為了獲取點擊觸屏時相應的坐標。 onTouchEvent()函數(shù)通常情況下會去執(zhí)行 ()函數(shù)并傳回布爾類型。一旦回 畢業(yè)設計(論文) 14 傳 false 回 來,后面的 event 動作可能就會收不到了,所以為了確保后面的 event 能順利收到,應該讓觸屏監(jiān)聽函數(shù)的返回值永遠為 true。這些功能的實現(xiàn)主要是通過類 Target 類和Path類。然后是小坦克的隨機出現(xiàn),小坦克從出現(xiàn)在在屏幕到從屏幕消失。 而 disappear() 函數(shù) 主 要 是 把 出 屏 的 目標 物 消 失 。類 Path主要是三維數(shù)組,每一個設置四個目的地,如果到達第一個目的地,繼續(xù)去往下 一個目的地。播放目標爆炸的聲音是通過 (2,0)實現(xiàn)的,從列表中刪除目標是通過(this) 實現(xiàn)的,列表中添加新的對象是通過(new Explosion(gameView, explodeBitmaps,x,y))實 現(xiàn)的,得分加一是通過 (1)實現(xiàn)的。但是這些都不是我們親自去查的,都在游戲的積 分榜中直接顯示的。并且玩家每次的分數(shù)都和所有的分數(shù)進行比較,如果大于最高分分,則游戲結束時會顯示恭喜您破紀錄了。這些功能的實現(xiàn)主要是通過類 Score 類和 HighScoreSurfaceView 類, DateUtil 類中來實現(xiàn)的,主要是通過以下幾個函數(shù)來分步完成的繪制函數(shù) onDraw(Canvas canvas),畫日期圖片的函數(shù) drawDateBitmap(String numberStr,float endX,float endY,Canvas canvas,Paint paint),觸屏函數(shù)實現(xiàn)方法 onTouchEvent(MotionEvent event),創(chuàng)建函數(shù) surfaceCreated(SurfaceHolder holder),圖片初始化的函數(shù) initBitmap(),還有一些線程的創(chuàng)建,線程的啟動,現(xiàn)成的停止,運行 run()函數(shù)。其次是設置焦點并設置可觸控焦點和回調函數(shù)。畫日期圖片的函數(shù)主要有一個時間與時間的間 畢業(yè)設計(論文) 15 隔號,使用 if…else… 函數(shù)判斷哪一個位置應該插入符號。如果向后翻頁,翻到最后一頁,就會停止。 游戲結束 這主要實現(xiàn)了游戲結束時,根據(jù)得到的分數(shù)不同會看到不同的結束界面。當沒有破紀錄時,會顯示圖片請再接再厲。 類 WinSurfaceView 主要的功能就是實現(xiàn)了游戲結束并且是破紀錄的情況下直接加載相應的界面,還實現(xiàn)了此界面顯示 5 秒后會自動轉到主頁面。然后當游戲結束時,就 會直接加載背景圖片,并且在圖片的相應位置顯示恭喜你破紀錄了字樣。 其他一些相關的線程和類 這里就是為了游戲的可玩性做的一些填充性的設置和功能。 Background 類主要實現(xiàn)的功能是設置背景圖片,并且背景圖片設置為滾動的也就是動態(tài)過程。 線程 GenerateTargetThread 類主要實現(xiàn)了隨機出現(xiàn)坦克的種類, KeyThread 類主要實現(xiàn)的功能是通過判斷鍵被按下的時間的長短,選擇相應的速度。 Constant 類主要的功能是定義一些程序中用到的常量,這樣定義的好處是能夠很容易的找到要使用的變量便于調用。其次是敵方坦克移動路徑的實現(xiàn) 算法,主要代碼如下所示: public void drawSelf(Canvas canvas,Paint paint) { go()。 } public void go() { caculateCurrentXYSpan()。 y+=yspan。 } } public void caculateCurrentXYSpan() { if(x==path[destination][0]amp。y==path[destination][1]) { begin=(begin+1)%。 } xspan=(path[destination][0]path[begin][0])/path[begin][2]。 } 這個算法主要實現(xiàn)了獲取當前的坐標,并且根據(jù)數(shù)組得到去下一步的坐標,這樣最終消失。同時在移動的過程中,判定敵方坦克是否還在屏幕中,如果在屏幕中則繼續(xù)移動,如果不在屏幕中,則移除敵方坦克。 SharedPreference 此 方式適用于簡單數(shù)據(jù)的存儲,文如其名,屬于配置性質的保存,不適合數(shù)據(jù)比較大的情況,默認存放在手機內存里; FileInputStream/FileOutputStream 此方式比較適合游戲的保存和使用,流文件數(shù)據(jù)存儲可以保存較大的數(shù)據(jù),而且通過此方式不僅能把數(shù)據(jù)存儲到手機內存中,也能將數(shù)據(jù)存儲到手機的 Sdcard 中; SQLite 此方式也適合游戲的保存和使用,不僅可以保存較大的數(shù)據(jù),而且可以將自己的數(shù)據(jù)存儲到文件系統(tǒng)或者數(shù)據(jù)庫當中,如 SQLite 數(shù)據(jù)庫,也能將數(shù)據(jù)存儲到 Sdcard 中; ContentProvider 此方式不推薦用于游戲保存,雖然此方式能存儲較大的數(shù)據(jù),還支持多個程序之間的數(shù)據(jù)進行交換,但由于游戲中基本就不可能去訪問外部應用的數(shù) 畢業(yè)設計(論文) 17 據(jù)。 數(shù)據(jù)存儲的實現(xiàn)代碼如; private void goToOverView() { Cursor cur=null。 try { String sql=select max(score) from highScore。 if(()) { =(0)。 } 這段代碼主要實現(xiàn)的功能就是打開數(shù)據(jù)庫,并且從數(shù)據(jù)庫中的高分記錄中查詢 最高分,并調用時間函數(shù)來獲取當前的游戲時間,獲取到該次的分數(shù),并且和其他的已經(jīng)存在的分數(shù)進行比較,獲取五個最高的分數(shù)并且顯示在積分榜上面。但是在計算坦克的炮筒的位置要根據(jù)鼠標點擊在屏幕的不同位置來進行判斷,在炮筒移動到點擊的位置時,也會相應的炮彈。 float centerX=x+center。 if(pressXcenterX) { result=(float) (((centerYpressY)/(pressXcenterX)))。 } 畢業(yè)設計(論文) 18 else { result=(float) ((((pressXcenterX)/(centerYpressY)))+)。 } 畢業(yè)設計(論文) 19 總結與展望 本次設計已是大學最后一次對專業(yè)知識的綜合實踐活動,同時也是我所做的工作量最大的一次作業(yè),因此從一開始我對本次 畢業(yè)設計就給予了高度重視。當然其間我也走了不少彎路,有時甚至需要推倒重來,但同時我也多次體會過克服困難后的成就感。這次設計是對大學所學的知識的一種檢驗,設計中發(fā)現(xiàn)自己的不足,查資料,找老師,問同學,當然主要是自己查資料,當然老師給 了我很大的幫助,老師教我該用什么知識點,我然后自己去查。 過程是苦的,結果是甜的。我的努力得到了回報,老師表揚了我,這給了我很大的鼓舞。畢業(yè)設計過去了,意味著我將踏上新的征程 ——工作!面對未來,我很自信!同時我還學會了一些編程技巧,而且對調試的錯誤有進一步的認識,有時候就一個小小的語法錯誤就會導致程序調試不通過。使用不同的編程環(huán)境,其效率完全不一樣,所以我選擇了 Eclipse,它自動找錯 /糾錯功能、 Debug 調試和代碼自動生成等一些重要的功能大大提高了我的設計效率。 畢業(yè)設計跟我們平時上的基礎課或者專業(yè)課不同!它是一個重要課題!要用到很多綜合性的知識!最重要的是讓學生體驗一下做科學研究的整個過程。 隨著答辯日子的到來!我的畢業(yè)設 計也快接近了尾聲了。通過這次畢業(yè)設計的編制使我明白了自己原來的知識還是比較欠缺。通過這次畢業(yè)設計的收集編制等等!我才明白學習是一個長期積累的過程!在以后的工作和生活當中我們都應該不斷的努力學習!努力的去提高自己知識和綜合素質 本系統(tǒng)實現(xiàn)了坦克游戲所應有的基本功能,但是由于時間和能力有限,還有一部 分功能未能實現(xiàn),例如:外部文件讀取、坦克的高級人工智能控制等,不能和現(xiàn)在 Inter 上各種坦克大戰(zhàn)游戲相媲美。本來預想的坦克在飛行中,能夠向下丟炸彈,主角碰到炸彈死亡,生命數(shù)量減一。還有其他的心里面想的功能沒有實現(xiàn),聯(lián)機對戰(zhàn)。希望在今后自己能繼續(xù)對 Java 中的一些其他技術有更深入的學習和研究的機會。 大學四年的學習,以今天的畢業(yè)論文畫了一個句號。如今,伴隨著這篇畢業(yè)論文的最終成稿,復雜的心情煙消云散,自己甚至還有一點成就感。這篇論文做得辛苦,它不僅是我的工作和學習總結,也凝結著很多人的心血和期許,可以說,沒有他們的支持,便沒有這篇論文的問世,今天終于完成,算是給 自己和關心我的親人、師長和朋友們一個交待,為幾年來的工作和生活劃一個句號 首先我要感謝我的指導老師王老師,感謝他在整個畢業(yè)設計過程中的指導,為我提示游戲設計的邏輯思路;為我提供參考書籍;為我提供了技術方面資料,而且在遇到問題的時候,總是鼓勵我去解決;尤其在論文格式的修改方面,讓我明白了要寫出一個標準的論文,它的格式的重要性,哪怕就算是一個標點符號都要符合其標準和格式要求。 俗話說的好, “磨刀不誤砍柴工 ”,當每 次遇到不懂得問題時,我都會第一時間記在本子上面,然后等答疑的時候問兩位老師,老師對于我提出來的問題都一一解答,從來都不會因為我的問題稍過簡單加以責備,而是一再的告誡我做設計該注意的地方,從課題的選擇到項目的最終完成,老師都始終給予我細心的指導和不懈的支持,他們真正起到了 “傳道授業(yè)解惑疑 ”的作用,讓人油然而生的敬佩。多少個日日夜夜,兩位老師不僅在學業(yè)上給我以精心指導,同時還在思想、生活上給我以無微不至的關懷,除了敬佩老師們的專業(yè)水平外,他們的治學嚴謹和科學研究的精神也是我永遠學習的榜樣,并將積極影響我今后的學習和工作。以前總是覺得學的課程沒有什么用處,但是當真正用計算機來解決實際問題的時候,才知道每門課程的重要性,甚至覺得所學習的那些課程還遠遠不夠,所以以后還應該不斷的學習。 再次,感謝我們宿舍的同學,在我遇到一些難以解決的問題時,給與我支持,鼓勵和幫助,在論文撰寫過程中,認真仔細的幫我修改,包括一些難以發(fā)覺的語法,符號錯誤,使我受益匪淺。家人的支持和鼓勵一直是我前進的強大動力 最后感謝我的院系和我的母校 ——青島理工大學琴島學院學院四年來對我的精心培
點擊復制文檔內容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1