private void OpenDimension(int dim) { string path = Path; if (dim == Dimension.DEFAULT) { path = IO.Path.Combine(path, _REGION_DIR); } else { path = IO.Path.Combine(path, "DIM" + dim); path = IO.Path.Combine(path, _REGION_DIR); } if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } ChunkCache cc = new ChunkCache(_prefCacheSize); AnvilRegionManager rm = new AnvilRegionManager(path, cc); RegionChunkManager cm = new RegionChunkManager(rm, cc); BlockManager bm = new AnvilBlockManager(cm); _regionMgrs[dim] = rm; _chunkMgrs[dim] = cm; _blockMgrs[dim] = bm; _caches[dim] = cc; }
public Enumerator(RegionChunkManager cm) { _cm = cm; _enum = _cm.RegionManager.GetEnumerator(); _enum.MoveNext(); _region = _enum.Current; }
private void OpenDimension(string dim) { string path = Path; if (String.IsNullOrEmpty(dim)) { path = IO.Path.Combine(path, _REGION_DIR); } else { path = IO.Path.Combine(path, dim); path = IO.Path.Combine(path, _REGION_DIR); } if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } ChunkCache cc = new ChunkCache(_prefCacheSize); BetaRegionManager rm = new BetaRegionManager(path, cc); RegionChunkManager cm = new RegionChunkManager(rm, cc); BlockManager bm = new AlphaBlockManager(cm); _regionMgrs[dim] = rm; _chunkMgrs[dim] = cm; _blockMgrs[dim] = bm; _caches[dim] = cc; }
/// <summary> /// Creates a new <see cref="RegionChunkManager"/> instance from another. /// </summary> /// <param name="cm">A <see cref="RegionChunkManager"/> to get a <see cref="RegionManager"/> and <see cref="ChunkCache"/> from.</param> public RegionChunkManager(RegionChunkManager cm) { _regionMan = cm._regionMan; _cache = cm._cache; }