码迷,mamicode.com
首页 > 其他好文 > 详细

推箱子游戏

时间:2015-05-17 21:35:43      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:

 

本游戏为推箱子游戏,即通过移动方向键来控制小人去推动箱子,直到把所有的箱子都推动到各个目标中。游戏需要在人物行走过程中无法穿越墙和箱子,并在有限的范围中放好各箱子,且每次只能搬运一个箱子。所基于的语言是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

推箱子游戏

标签:

原文地址:http://www.cnblogs.com/1248022124qq/p/4510311.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!