我正在制作一个使用块的地图加载系统,这样就不必一次加载整个地图数据。
我有一个“World”类,在该类中我创建了一个名为“ChunkManager”的类的实例。
我不确定在另一个类中创建一个实例是否是一个好主意/被认为是一个“正常”的事情等等。我在搜索互联网时找不到任何关于这个的东西。
所以我的问题是:我应该以我拥有的方式在一个类中创建一个类的实例,还是这样做会有问题?
这是我的代码,如果相关的话:
class World
{
public string WorldName { get; set; }
ChunkManager chunkManager = new ChunkManager();
public World(string worldName)
{
WorldName = worldName;
}
public void AddChunk(int X, int Y)
{
//Plus other validation code here that I didn't paste
chunkManager.AddChunk(X, Y);
}
}
和块管理器:
class ChunkManager
{
public int TotalGeneratedChunks { get; private set; }
private List<Chunk> ChunkList = new List<Chunk>();
public bool CheckIDExists(int IDToCheck)
{
foreach (Chunk i in ChunkList)
{
if (i.UniqueID == IDToCheck)
{
return true;
}
}
return false;
}
public void AddChunk(int X, int Y)
{
ChunkList.Add(new Chunk(TotalGeneratedChunks++, X, Y));
}
}