推箱子游戲


 

本游戲為推箱子游戲,即通過移動方向鍵來控制小人去推動箱子,直到把所有的箱子都推動到各個目標中。游戲需要在人物行走過程中無法穿越牆和箱子,並在有限的范圍中放好各箱子,且每次只能搬運一個箱子。所基於的語言是8086匯編,使用的編譯環境是唐都的集中開發環境TD-PIT。 

本次設計的基本思想是通過將不同的元素(牆、路、箱子、人、目標位)抽象為不同的矩陣,然后將所設計的地圖描抽象成一個控制矩陣來控制圖像的顯示,每一個控制矩陣塊代表一個元素,我們通過不斷刷新控制矩陣來達到顯示人物移動及推箱子的效果。

1.1推箱子游戲具有的功能

(1)顯示主菜單和界面

游戲需要提供貨源主菜單讓玩家進行游戲設置,同時能夠把地圖文件中的信息轉化成圖像顯示到主游戲界面上。

2)能夠實現鍵盤操作功能

能夠接收到鍵盤輸入的方向鍵信息,並根據不同的方向鍵把游戲人物移動到相應的位置。例如,玩家按方向鍵“上”時,如果向上的位置是可移動的,那么就當把游戲人物向上移動一個方格。

(3)能夠把放置到位置上的箱子進行變色顯示

當玩家把箱子推到指定位置的格子時,需要把這個箱子進行變色。這樣就能明確的顯示出該箱子已經放置到指定的位置上。

(4) 支持游戲的時間計時和步數記錄

當玩家開始游戲時就開始計時,游戲中的小人物每走一步就會記錄一次步數。

(5)支持游戲的隱藏炸彈和引爆炸彈功能

如果玩家無法將指定的箱子全部推到放置點時,可以通過游戲中設的隱藏炸彈引爆阻擋的牆可以繼續游戲。

(6)支持關口選擇功能

  玩家在游戲中可自行選擇需要挑戰的關口。當玩家點擊菜單中的“下一關,   上一關”按鈕時可進行關口的調節

7)游戲是否通關判斷功能

在游戲中,當玩家把所有的箱子都推到箱子放置點時,玩家勝利通過當前游戲關口,進行下一關口的游戲。如果玩家無法將指定的箱子全部推到放置點時,玩家失敗。玩家可以選擇重新進行當前關口的游戲,還是退出游戲。

8)游戲提供幫助說明

在游戲的菜單中,提供一個使用說明項,以便對本游戲不了解的玩家對游戲進行操作和使用。

 


二 系統總體設計

2.1功能模塊的設計

     系統模塊圖

   本程序包括六個模塊,分別是初始化模塊,畫圖  模塊,移動箱子模塊,移動小人模塊,作弊模塊和功能控制模塊,各個模塊的功能描述如下

1)初始化模塊

該模塊包括屏幕初始化和游戲第一關的初始化。游戲每一關的初始化是構建每一關的關卡。 

2)畫圖模塊

該模塊主要是被其他模塊的調用,用於畫牆,在空地畫箱子,畫小人和畫目的地。

3)移動箱子模塊

該模塊用於移動箱子,包括目的地之間,空地之間和目的地與空地之間的箱子移動

4)移動小人模塊

該模塊用於控制小人移動,從而推動箱子到目的地。

5)作弊模塊

 該模塊用於無路可走的情況下,可以把牆炸掉,可以給箱子提供一個可走的路。

6)功能控制模塊

該模塊是幾個功能函數的集合,包括屏幕輸出功能,指定位置狀態判斷功能和關卡重置能。                                          

                       

 

 

 

 

 

                       

 

 

 

 

源代碼查看地址:https://github.com/lidakun/Text/blob/master/Text.txt


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM