作者:yinowl
2005年2月
前言
我的上一篇也是第一篇文章《J2ME-MIDP1.0小游戲入門-五子棋》貼出以後,有好多的朋友發郵件、加QQ、加MSN和我聊有關J2ME的內容,我很開心也很感慨,開心並不是因為自己文章寫得如何如何而有很多人聯系我,而是有這麼多的朋友在學J2ME,我原來以為現在已經沒有人再會聯系文章的作者,看來我錯了;感慨是因為,我知道我的第一篇文章其實很差的,從大家的反應,我能感覺出網上的原創資料的缺乏,官方或者書籍雖然權威且,但總感覺學的時候和實際的情況有點距離,我在看這些資料的時候,也經常會想,實際游戲開發公司裡為怎麼處理、會怎麼寫這個代碼、程序的結構流程會怎麼樣等等。原創文章的最大有點就是它包含了作者的經驗,實際開發中的經驗。介於大家對我的支持並且網上原創文章有限,我非常樂意繼續寫一些自己的經驗和技術,充實我們的中文資源。所以我接著寫了這篇文檔,文檔內容即程序的開發過程都是真實的,不是為寫文章而寫文章,完全是近一段時間裡先完成的程序,現在再把它寫成教學文章。願大家學J順利,多多交流(MSN:[email protected] QQ:47599318 E-mail:[email protected])
注意
平台:這個游戲我是在 Nokia 的平台上設計的,也就是說使用了 FullCanvas 類以及針對Nokia-60系列(7650)的屏幕設計的,稍作修改就能運行在其他型號的手機上(我已經制作了 Siemens-C65 ,Nokia-7210 ,以及所有支持標准midp1.0/2.0、屏幕128 x 128的手機的幾個移植版本,有需要可以和我聯系)
代碼:同我的前一篇文章《J2ME-MIDP1.0小游戲入門-五子棋》一樣,代碼列出解釋的形式仿照《J2ME Game Programming》一書,按照程序功能思路給出相關代碼,一個文件的代碼會根據功能在不同的小節給出,文章結束了,代碼也就完整了。這不同於通常書中的代碼以文件為單位一次全部給出,我認為這樣更有助於讓大家了解一個程序從設計到最後完成的思路。
游戲介紹
掃雷這個游戲大家一定再熟悉不過了,但這個雙人掃雷游戲的掃雷新玩法大家可能就沒見過了,其實這就是MSN軟件中的一個網絡聯機小游戲,大家每天在使用MSN,但都很少注意或玩MSN中的游戲吧,可以說我就是把MSN上的聯機雙人掃雷移植到的手機上,一模一樣。如果你現在不方便上網或者沒有人和你聯機看一下這個游戲的界面和玩法,沒關系,我現在就來介紹一下,游戲區(雷區)中一共有 16 x 16 共256個格子,其中有52顆雷,操作除了上下左右鍵(當然電腦上是用鼠標點的)只需要一個挖雷鍵,你要做的是挖出雷,而不是用另一個鍵去標示雷。兩個玩家,一方開始挖雷,如果挖到(點到)雷,則加一分,沒挖到,就和經典的掃雷一樣,顯示這個位置周圍一圈有幾個雷,如果一個雷都沒有,和經典的掃雷一樣,會把和這一格相連的所有周圍沒有雷的格子和再外面一圈格子打開,然後另一位玩家挖雷,誰先挖到半數以上(大於26顆)的雷誰就獲勝,其實很簡單吧,游戲的界面如下: