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

正文內(nèi)容

基于j2me的手機游戲逃亡者的設計與實現(xiàn)-預覽頁

2025-01-02 22:07 上一頁面

下一頁面
 

【正文】 39 Connected Limited Device Configuration [7] 基于 J2ME 的手機游戲 設計 第 9 頁 共 42 頁 圖 23MIDlet應用框 MIDlet 有三個狀態(tài),分別是 pause、 active 和 destroyed。在 destroyed 狀態(tài)的 MIDlet 必須釋放了所有的資源,并且保存了數(shù)據(jù)。 下圖為我們展示了整個 LCDUI 包的體系: The J2ME Environment J2ME Appliacation Layer MIDLet MIDLet Class Layer MIDLet Application Manager Start Paused Destroyed startApp pauseApp destroyApp Active destroyApp 畢業(yè)設計(論文) 第 10 頁 共 42 頁 圖 25 LCDUI包的體系 Screen 類屬于高級圖形用戶界 面組件 , Canvas 是低級圖形用戶界面組件,在同一時刻,只能有唯一一個 Screen 或者 Canvas 類的子類顯示在屏幕上,我們可以調(diào)用 Display 的 set Current()的方法來將前一個畫面替換掉, 我們必須自行將前一個畫面的狀態(tài)保留起來,并自己控制整個程序畫面的切換。 我們將圍繞這三個主題來介紹一下這種事件的用法: 鍵事件的幾個核心方法為: keyPressed(), keyReleased(), keyRepeated(),當按鍵按下時會觸 keyPressed(),當松開按鍵時,會觸發(fā) keyReleased(), 當長時間按住按鍵時會觸 keyRepeated(),但是 RepeatEvents 不是 JTWI 要求強制支持的,所以使用之前要進行測試,看設備是否支持。 觸控事件主要面向高端設備, 并非 JTWI 要求強制支持的, 其核心方法為: pointerPressed(), pointerReleased(), pointerDragged(), 分別對應我們通常所用的移動設備手寫筆的點,擊,拖拽幾個動作,我們在這三個方法里可以定義相應的事件處理函數(shù)。這個 Display 類可以。通過在獲取的 Display對象,就可以讓Displayable對象顯示在畫面上。創(chuàng)建 Image對象的 Static方法 : Object Display Canvas Screen Alert Form List TextBox Object 基于 J2ME 的手機游戲 設計 第 13 頁 共 42 頁 (1)ImagecreateImage(byte[]imageData,int imageOffset,int imageLengt) (2)ImagecreateImage(int souce) (3)ImagecreateImage(int width,int height) (4)ImagecreateImage(String name) 為了減少額外錯誤處理,在調(diào)用出來的時候要進行 trycatch或 throw。 List類,與 PC的 UT組件中的 List組件一樣,是用來顯示項目的列表,以讓用戶來進行選擇為目的的組件。在文本框 中字符顯示的順序和格式由設備決定。在 MIDP的 Canvas類中定義的按鍵代碼如下所示 : KEY_NUM0 , KEY_NUM1 , KEY_NUM2 , KEY_NUM3 , KEY_NUM4 , KEY_NUM5 , KEY_UM6 , KEY_UM7 ,KEY_UM8, KEY_NUM9, KEY_STAR和 KEY_POUND。 在 Canvas類中,定義了一些通用按鍵值,游戲按鍵中的 UP、 DOWN、LEFT、 RIGHT、 FIRE、 GAME_A、 GAME_B,在 MIDlet運行時,這些按鍵的按鍵值可以通過 getKeyCode()方法確定 [8][9]。所謂的線程就是指程序的運行單位,使用線程可以同時進行處理。 在這個 run()方法中,將要編寫以線程所處理的內(nèi)容。要運行的時候必須使用到 Thread類。線程的 終止一般可通過兩種方法實現(xiàn) 。 手機硬件平臺 特點 手機作為一種資源有限的設備,和 PC機相比,有以下一些特點 : (1)處理器運算速度慢,遠低于 PC機的 CPU運行速度。 北京希望電子出版社 [10] 范丹 它的顯示能力也非常有限,譬如顯示尺寸小、分辨率低等。J2ME Wireless Toolkit( 制作手機用 JAVA所必需的開發(fā)配套元件。 J2MEWTK 中有相應的編譯 (集成了預驗步驟 )、打包、模擬運行的菜單 (或按鈕 ),以及其它輔助工具。先打開 點擊網(wǎng)頁中的 [Download J2SE SDK]鏈接,會出現(xiàn)了一個許可協(xié)議。 啟動安裝程序后,會出現(xiàn)一個許可協(xié)議的畫面。 設定數(shù)據(jù)庫文件夾,這里我們也用默認的設置。 打開 “系統(tǒng)屬性 ”,選擇上面選單的 “高級 ”,點擊 “環(huán)境變量 ”按鈕,出現(xiàn)環(huán) [14] 趙海廷 在 “用戶變量 ”和 “系統(tǒng)變量 ”的表里如果沒有 “Path”變量,就點擊 “新建 ”。 下面就讓我們來安裝手機 Java 開發(fā)元件 J2ME Wireless Toolkit。 出現(xiàn) Wireless Toolkit 的安裝畫面。這里點擊剛才安裝 J2SE SDK 的 [Browse..]鍵,設定 [c:\j2sdk\],設定完后,點擊 [Next]。 然后是設定的確 認畫面。一般來說, Java 游戲的開發(fā)是先在PC 機上模擬,模擬成功后再打包下載到手機上。堅持的時間越長,就說明水平越高。根據(jù)己往的設計進度,一款小型規(guī)模的手機游戲大概有 2020~ 3000行代碼。選擇開始新游戲則進入游戲,在游戲中 如果按下非游戲鍵盤則中斷游戲返回菜單,此時菜單中增加了一個繼續(xù)游戲的選項,可以返回游戲也可 [12] Jason Lam、 Deaboway Chou 譯在菜單中選擇游戲說明或者高分紀錄,則進入相應的屏幕,它們都能用 “后退 ”軟鍵返回菜單。游戲中使用到的類為 SoundEffects(音效)、 Bullets(子彈)、 Escapee(逃亡小飛機)?;旧纤械?2D 游戲都可以按照這三個模塊來設計,三個 模塊相互聯(lián)系又互相聯(lián)系,按照模塊的思想來實現(xiàn)游戲線程將更加面向對象和便于理解。 、下載安裝與運行 J2ME Wireless Toolkit 能自動對 MIDlet 套件進行打包。 檢測鍵盤輸入 更新游戲場景 繪制游戲畫布 繪制緩沖區(qū)到 屏幕 是否快于預期速度 掛起當前線程 掛起等待 否 是 畢業(yè)設計(論文) 第 20 頁 共 42 頁 最后效果圖 圖 46 游戲 運行 畫面 (一) 圖 47 游戲運行畫面(二) 圖 48 游戲 結束 畫面 基于 J2ME 的手機游戲 設計 第 21 頁 共 42 頁 第五章 結束語 本文以基于 J2ME平臺的手機游戲的功能開發(fā)為線索,進行了相關理論研究,實驗和項目開發(fā)。 J2ME平臺的特性和體系結構。 畢業(yè)設計(論文) 第 22 頁 共 42 頁 參考文獻 [1] J2ME 開發(fā)網(wǎng) 中國青年出版社, 2020915 [3] [4] 黃聰明 中國鐵道出版社 [6] JSR000139 Connected Limited Device Configuration [7] [8] 洪維恩 北京希望電子出版社 [10] 范丹 J2ME 游戲開發(fā)(第一版) 202088 [15] JAVA 手機網(wǎng) [] [16] 溫尚書 PDF 電子文檔 [18] 、 你們客觀的評價和建議我將牢記在心,在今后的發(fā)展中揚長避短,更加努力 的嚴格要求自己。例如,當顯示 splash 屏幕時,該類和類 SplashScreen(通過方法 splashScreenPainted 和 splashScreenDone)共同在方法 init 中完成背景初始化。在 startApp 方法中,將游戲的顯示權交給閃屏。 //第一次將顯示閃屏 } else { if (current == myCanvas) { ()。 //調(diào)用初始化方法 } private synchronized void init() { if (!initDone) //如果還沒有初始化完畢 { readRecordStore()。 //初始化游戲畫布 initDone = true。 //初始化游戲數(shù)據(jù) (this).setCurrent(myCanvas)。 //顯示游戲介紹屏幕 } 游戲如果中斷,從菜單中選擇繼續(xù)游戲,顯示游戲畫布并重啟游戲線程: void menuListContinue() { (this).setCurrent(myCanvas)。 //顯示游戲菜單 } 從高分榜退回菜單,將顯示權交還游戲菜單: void highScoreBack() { (this).setCurrent(menuList)。 //顯示游戲菜單 畢業(yè)設計(論文) 第 26 頁 共 42 頁 } 顯示游戲結束畫面,需要告訴 GameOverScreen 類當前 的最好成績以及子彈的數(shù)目,同時告訴菜單游戲已經(jīng)結束: void GameCanvasGameOver(long time,int BULLETS_NUM) { ()。 //顯示游戲菜單 } (3)最佳紀錄 讀取方法的代碼如下 : private void readRecordStore() { hasBestTime = false。 try { rs = (RS_NAME, false)。 bestTime = ()。 //關閉流 } catch (IOException ex) { //捕獲 IO 異常 } } if (rs != null) { try { ()。 DataOutputStream dos = null。 //輸出數(shù)據(jù)流 (bestTime)。//如果存在記錄,則將第一條設置為當前最佳成績 } } catch (IOException ex) { // 捕獲 IO 異常 } catch (RecordStoreException ex) { // 捕獲數(shù)據(jù)存儲異常 } finally { 畢業(yè)設計(論文) 第 28 頁 共 42 頁 if (dos != null) { try { ()。通過比較獲得最佳成績并保存的實現(xiàn)代碼如下: boolean checkBestTime(long time) { if (!hasBestTime || (time bestTime)) //如果還沒有最好成績或者當前成績比最好成績長的時候 { hasBestTime = true。 //返回 true 表明對最好成績進行了更新操作 } else { return false。 //中止游戲線程 } } public void destroyApp(boolean unconditional) { if (myCanvas != null) { ()。 static Image createImage(String filename) { Image image = null。 ) void vibrate(int millis) { (this).vibrate(millis)。三秒鐘后或第一次按鍵后,它再次回調(diào)MIDlet 顯示游戲菜單。 setFullScreenMode(true)。注意下面 是繪制具有輪廓的文本的有用訣竅:首先用輪廓顏色把它繪制四次,分別向上、下、左、右 偏移,然后在它的正常位置用文本顏色對其繪制。 //獲得畫布高度 (0x00FFFFFF)。 //在屏幕邊緣繪制一個矩形邊框 if (splashImage != null) { (splashImage, CanvasWidth/2, CanvasHeight/2, | )。 int centerY = CanvasHeight / 2+60。 drawText(g, centerX 1, centerY)。 //繪制文本 ()。 //topY 用于定位文本的合適位置 (逃亡者游戲 ,centerX, topY, | )。 } } (4)結束線程 有兩種可能會結束閃屏線程,一為在 run 方法中線程等待 3 秒后調(diào)用, 二為玩家按下鍵 盤,觸發(fā)鍵盤事件,調(diào)用 k
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1