用C#+XML技术开发游戏SokobanPro

用C#+XML技术开发游戏SokobanPro,第1张

用C#+XML技术开发游戏SokobanPro,第2张

推箱子专业版是经典推箱子益智游戏的现代版。本文从XML技术的角度讨论了游戏的实现。下图是游戏运行中的快照。

推箱子专业版是经典推箱子益智游戏的现代版。游戏极其简单,却极具挑战性和吸引力。游戏的规则是将所有的盒子移动到正确的位置。你可以推一个箱子,而不是拉它。您可以通过按U键随时撤销上一步操作。

这款游戏的现代版现在可以在Sokoban Pro网站上找到。因为所有最重要的部分(比如读/写XML、移动和绘图)都在本文的源代码中提供了,所以我决定在这里讨论第一个原始版本。

与当前版本相比,最新版本(v1.0b)包括以下改进:

“官方”测试版

添加菜单支持。

我发现在每个关卡中改变窗口的大小是非常烦人的,所以在当前版本中它变成了固定的。

你可以在不同的关卡之间来回跳跃,但只能在你之前完成的关卡上。

撤消级别功能。

闪屏和图标

许多错误已被纠正。

也许还有其他人。

在游戏开始时,你可以创建一个新的玩家或者选择一个现有的玩家。既然推箱子Pro可以保存你的进度,那么你也可以选择是否要继续上一局。创建玩家后,可以选择关卡集。水平集包含任意多的水平。Sokoban Pro在最初的BoxWorld游戏中有前40关。关卡存储在XML文件中,这意味着您可以从互联网上的不同Sokoban站点下载关卡。你也可以创建自己的关卡。当你把它们放在等级目录中,Sokoban Pro会自动识别等级集。

你使用一个XML文件来实现保存游戏。它会保存上次完成的关卡集和上次玩过的关卡,这样你就可以从上次玩游戏的地方继续玩了。此外,它还会保存您已经完成的关卡以及相应的分数(移动和推动的次数)。如果你再玩一次,你的表现更好,那么你的分数将被更新。
基本上,游戏由以下几类组成:

水平集——包含水平集的所有信息(作者信息、水平数等)...).它还将水平集XML中的水平加载到内存中。

级别-表示级别集中的一个级别。这里发生的最重要的事情是,它跟踪你的所有动作。当玩家移动或推动一个盒子时,它会更新关卡中的物品。它更新相应的图形并实现撤销功能,最终在屏幕上绘制出关卡。

player data-跟踪所有玩家信息。基本上,它反映了你的保存游戏。

board(form)-主窗体处理所有玩家输入并初始化所有对象。

玩家(表格)-让你创建一个新的玩家或选择一个现有的玩家。

关卡(表格)-让你选择一个你想玩的关卡。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 用C#+XML技术开发游戏SokobanPro

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情