資源描述:
《安卓冒險游戲——勝利大逃亡》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、Android游戲開發(fā)培訓視頻冒險游戲——勝利大逃亡課程安排開發(fā)背景功能演示游戲策劃開發(fā)前的準備工作游戲的總架構游戲工具類的開發(fā)RunActivity類的開發(fā)ProgressView類的開發(fā)課程安排(續(xù))歡迎界面的開發(fā)游戲實體模塊的開發(fā)游戲地圖模塊的開發(fā)游戲界面模塊的開發(fā)游戲后臺邏輯的開發(fā)游戲的優(yōu)化與改進開發(fā)背景冒險類游戲是目前市面上比較受玩家歡迎的一類游戲。本章要介紹的冒險類游戲雖然加入了其他游戲的元素,但是仍然保留了冒險類游戲的主要特征——故事背景。逃脫追捕是本游戲中的另一個特色,在游戲中玩家控制的角色將會在迷宮之中躲避怪物的追捕并找到出口逃生。由于添加了追蹤玩家的A
2、I,所以本游戲相比于普通的走出迷宮類游戲來說具有更快的節(jié)奏感和緊迫感,可以提高玩家的游戲體驗。功能演示本游戲的界面包括歡迎界面和游戲主界面,下面來對游戲的主要功能進行演示。游戲策劃游戲情節(jié)。本游戲為冒險類游戲,因此需要對游戲的情節(jié)進行設計,本游戲的故事背景定于明朝末年,故事內容為名將熊廷弼被以魏忠賢為首的閹黨陷害致死,留下其子四處躲避東廠殺手追殺。在游戲的開發(fā)中,該故事情節(jié)需要滲入到各個環(huán)節(jié)中。呈現技術。本游戲采用90度俯視2.5D視圖,游戲的地圖采用圖元技術,分為上下兩層。由于地圖大小超過了屏幕的尺寸,所以還需要采用滾屏技術。目標平臺。本游戲的目標平臺為Android2
3、.1。操作方式。本游戲的操作方式為鍵盤操作,方向鍵改變玩家角色(英雄)的移動方向,當按下某一個方向鍵并抬起后,英雄會朝著該方向一直前進而不需要持續(xù)按下該鍵。“M”鍵打開和關閉小地圖。開發(fā)前的準備工作游戲的準備工作主要是在進行開發(fā)之前的非代碼方面的準備工作,主要包括以下兩個方面。圖片資源的準備工作聲音資源的準備工作游戲的總架構本游戲主要包括前臺表示模塊、游戲實體模塊、后臺邏輯模塊和游戲工具模塊。游戲工具類的開發(fā)工具類屬于游戲中的公共類,其他類在代碼中通過訪問工具類的成員變量或調用其方法來完成自己的工作。工具類存在的目的是將性質相同的屬性或行為進行統一管理,如本節(jié)將要介紹的B
4、itmapManager和ConstantUtil類即是如此。BitmapManager類的開發(fā)ConstantUtil類的開發(fā)RunActivity類的開發(fā)鍵盤事件的處理屏幕點擊事件的處理RunActivity類的主要功能是在不同的游戲屏幕中進行切換和傳遞用戶的交互事件,并不進行特別具體的工作。ProgressView類的開發(fā)ProgressView是程序中第一個被顯示的界面,當程序需要將屏幕切換到WelcomeView或GameView時,都需要先將屏幕切換到ProgressView以進行后臺的加載和初始化等工作。當后臺工作完成之后,才會將屏幕切換到指定的View。歡
5、迎界面的開發(fā)WelcomeView類的開發(fā)WelcomeThread類的開發(fā)歡迎界面用戶交互事件的處理WelcomeView繼承自SurfaceView,其需要繪制的內容主要包括竹簡、文字、菜單按鈕等元素,繪制機理是根據不同的狀態(tài)繪制不同的內容。游戲實體模塊的開發(fā)Sprite類的開發(fā)Hero和Monster類的開發(fā)本游戲中出現的實體主要為玩家控制的英雄(Hero類)和追捕英雄的怪物(Monster類),Hero類和Monster類均繼承自Sprite類,SpriteThread類為Sprite類的附屬類,負責Sprite動畫的播放。游戲地圖模塊的開發(fā)MyDrawable類
6、的開發(fā)GameData類的開發(fā)Layer類的開發(fā)LayerList類的開發(fā)本游戲中地圖圖元的尺寸并不惟一(有31×31和31×62兩種尺寸),為了方便對其進行管理需要將圖元對象封裝為MyDrawable對象,每個圖元都是一個MyDrawable對象,代表游戲地圖的矩陣是MyDrawable對象的二維數組。游戲界面模塊的開發(fā)本節(jié)將會介紹游戲界面模塊的開發(fā),該模塊涉及到的類有GameView和DrawThread,前面介紹過的游戲實體模塊和游戲地圖模塊中的類也都服務于該模塊。GameView主要負責游戲畫面的繪制、播放聲音資源等工作。游戲后臺邏輯的開發(fā)怪物追蹤算法的設計與實現
7、鍵盤監(jiān)聽線程的開發(fā)游戲后臺邏輯模塊主要的功能是控制英雄的移動和根據一定算法決定怪物的追蹤方向,同時還包括英雄與家、怪物與英雄之間的碰撞檢測與處理。該模塊涉及到的類主要有KeyThread和AIGoThread,同時還包括Hero和Monster類中與碰撞檢測有關的成員方法。在A情況下,由于未到岔路口無法尋徑,盡管沿著當前的方向前進會遠離玩家,怪物仍然會沿著既定方向前進;在處于岔路口的B情況下,通過計算和比較門特卡羅距離得出向左和向下為最佳方向,但是由于向下會走回頭路,所以選擇向左;在C情況下,怪物未達到岔路口而是死胡同,此時將