1

任何人都可以指出正确的方向,在 XNA for Windows Phone 中制作 2D 关卡编辑器的最佳方法是什么?

我有一个游戏几乎完成了,但我希望在未来创建具有不同级别和主题等的多个版本。

最好的方法是什么?

4

2 回答 2

3

我建议不要制作一个,而是使用Tiled之类的东西。它将以相对简单的 XML 格式保存阶段,甚至还有一个C# 库来读取 Tiled 文件。

还有很多其他优秀的编辑器。我建议朝这个方向发展,因为坦率地说,您将花费太多时间自己制作。

要进一步扩展 Tiled,您可以使用上述库来解析 TMX 文件,该文件是通过使用 Tiled 并保存地图制成的。阅读github 页面上的用法,看起来使用起来非常简单。

当你解析一个 Tiled 元素时,比如一个特定的 tile 索引或一个 Tiled “对象”,你必须将它映射到游戏中有用的东西(图形精灵纹理、玩家可以与之交互的敌人或对象等)。对于瓦片,您可以通过enums 管理它(为每种瓦片类型创建一个别名并为其分配瓦片表中的确切瓦片编号),甚至只是遵循相同映射的数组。对于对象,使用 Tiled 的对象属性来分配您定义的有意义的值,然后与 TMX 一起保存,您可以使用该库解析它们。

例如,您可以在名为“enemytype”的 Tiled 对象中定义一个属性,并为其赋予值“lizard”。解析时的代码可以查找此属性和值,并Lizard在解析时创建一个对象。

于 2013-04-10T13:44:16.407 回答
1

如果你有一个快完成的游戏,那么我会假设某处有代码可以加载和显示你拥有的地图。提取该代码,您就成功了一半。然后你只需要添加一些方法来添加它正在读取的地图,并将其保存回相同的格式。

如果您的地图当前是在内存中创建的,那么您需要找出一种可以将它们保存为的文件格式(XML 或 JSON 可以使用,但是用于切片类型的大整数 CSV 也可以使用并且更简单)。然后,您将需要代码从该格式中读取并填充您当前的地图模型。

于 2013-04-10T14:02:05.427 回答