有没有更好的方法来存储地牢生成器中的房间数据?

时间:2019-02-05 12:21:49

标签: arrays swift algorithm 2d

我目前正在为以7x7网格开头的游戏构建地牢生成算法。总49个空间。其中一个空间将是起居室,另一个空间将是出口室。其他47个空间将是房间,它们的大小在长度和宽度上分别为5x5和11x11之间。

我不希望按程序生成房间。我想手工制作每个房间。我总共有36种可能的房间大小,并且我希望每种大小都有几个变化。当前,共有108个(具有不同功能的36 x 3)独特房间。

当前,我正在使用2D数组的列表,每个数组都有自己的名称,使用1或0表示填充或空白空间,如下所示:

Image 1

我的目标是获取房间的大小,然后根据其大小和1到3之间的一个随机数为它分配一个数组。但是我觉得有一种更好的方法。存储该数据的最佳方法是什么? 2D数组是执行此操作的好方法吗?

1 个答案:

答案 0 :(得分:1)

如果您不想生成房间,则需要存储布局数据。但是我认为,这样做应该放在资源而不是源代码中,最简单的方法是创建文本文件并加载它们。