席一 周嬌
摘要:描述了一個在Android操作系統(tǒng)上的手語連連看游戲的設計實現(xiàn)過程,并給出了相應的算法和代碼。通過該游戲了解、認識、學習手語,讓更多的人會用手語和聾啞人溝通交流。讓更多的人去關愛聾啞人,更好的從精神和生活上幫助聾啞人士。
關鍵詞:Android;手機游戲:連連看
現(xiàn)在常見的智能手機平臺有:Symbian、Windows、Mobile、PALM、Blackberry、iOS、Android等。Android是Google開發(fā)的基于Linux平臺的開源手機操作系統(tǒng),是首個為移動終端打造的真正開放和完整的移動軟件。本文通過對Android系統(tǒng)架構和應用開發(fā)進行初步研究,設計一款手語連連看小游戲。在對系統(tǒng)進行詳細需求分析的基礎上確定了系統(tǒng)的功能和性能要求對游戲的菜單界面、屏幕繪制、時間控制、布局算法、連通算法、關卡設置、音效和動畫進行了設計并最終實現(xiàn)了一個界面友好、高效穩(wěn)定和富有娛樂性的手機連連看益智小游戲。通過該游戲了解、認識、學習手語,更好的從精神和生活上關愛聾啞人士。
一、環(huán)境的搭建
編寫Android應用程序,必須對編程環(huán)境進行一定的配置,以適應Java開發(fā)。要進行Android應用程序開發(fā),需要在計算機上安裝以下軟件:
Java Development Kit(JDK,Java開發(fā)包)Version;
兼容的JavaIDE如Eclipse,需要帶有JDT(JavaDevelopment Tools)插件;
Android SDK,包括工具和文檔;
Eclipse的Android Development Tools(ADT,Android開發(fā)工具)插件。
創(chuàng)建AVD,為使Android應用程序可以在模擬器上運行,必須創(chuàng)建AVD。
二、設計與實現(xiàn)
2.1游戲的初始化
進入游戲界面,首先需要顯示出來圖片矩陣,如果是第一關,就把地圖設置成2行2列,如果是第二關和第二關以上,就把地圖設置成3行列,其代碼如下:
2.2判斷消除圖片
消除圖片時要判斷是否可達,即優(yōu)化判斷是否可以消除的算法是本程序的靈魂,連連看游戲分為三種消去方式,分別為“0折型”,“一折型”,“兩折型”,如果兩點間只需要一條直線能夠連接起來,則A、B兩點的橫坐標或縱坐標必定相同,有了這個條件,我們判斷A、B兩點是否只需要一條直接連接就簡單了許多。其分析如下:
2.2.1“0折型”
水平消去或者垂直消去,如果兩個點擊的兩個圖片相同,并且它們在同一水平或垂直方向上,即返回HLINE的畫線類型,代碼如下:
2.2.3“兩折型”
如果點擊的兩個圖片相同,它們不在同一水平或垂直方向上,并且它們要用三條直線相連,則稱為“兩折型”,對兩張圖片分別進行x和Y方向的掃描,滿足條件則被消除。
2.3圖片之間連線
當判斷兩個圖片之間有路徑可以相連,并且兩圖片之間可以用不超過三條直線的線把它們連接起來,代碼如下:
2.4游戲結束的判斷
要判斷游戲的結束,只需對地圖中的所有區(qū)域的狀態(tài)進行檢測就可以了,若檢測到所有的圖片都被消除,則證明游戲勝利,可以重新再來一次,即調用前面的初始化算法重新開始;若檢測到區(qū)域中出現(xiàn)任意不可能消除的兩個圖片時,游戲進入死鎖狀態(tài),顯示游戲失敗,也可以重新再來一次,即調用前面的初始化算法重新開始。
三、結束語
本研究首先描述了環(huán)境的搭建,然后分析了該游戲中游戲的初始化、消除圖片、圖片之間連線、游戲結束的判斷的核心代碼,在此基礎上還可以進行關卡的設置,通過圖片消除后,剩余圖片按一定規(guī)律改變位置來提高游戲難度,可以增強游戲的挑戰(zhàn)性。