WPF 2048遊戲的實現

        前幾天空閒的時候,實現了一個2048遊戲。除了可以設置行數和列數之外,支持修改顯示名稱,比如下面,改成神鵰俠侶中的角色名稱:

 

        遊戲邏輯比較簡單,大家都應該玩過。

        這裏主要實現了四個類:GameGameBoard還有ColorBlockBoardGridLine

        Game類主要用來實現遊戲的控制,比如初始化、添加新的色塊、移除色塊、控制色塊上下左右移動、改變積分,觸發遊戲結束等。

        GameBoard繼承自Canvas,實現了色塊的合併、檢測每個格子的狀態等,另外提供了Game控制色塊移動的接口。

        ColorBlock類繼承自Shape類,用於自定義色塊的顯示,包含XY座標、顏色、顯示文字等依賴屬性,可以進行動畫,另外還實現了具體的上下左右移動的方法。最初幾個顏色是手動設置,等到色塊越來越多,就隨機生成一種顏色。

        BoardGridLine也繼承自Shape類,用於繪製Canvas底部的網格。

        另外,遊戲使用一個簡單的文本文件保存設置,包括行數與列數,以及顯示文字及其對應顏色,具體操作在Settings類中。

        最後,按鍵事件封裝在KeysNavigation中。

        圖標使用Expression Design製作:

 

        遊戲效果如下:

 



源碼下載地址:

http://download.csdn.net/detail/xiangshimoni/8278267

 

 

發佈了204 篇原創文章 · 獲贊 280 · 訪問量 85萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章