Esempio n. 1
0
        /// <inheritdoc/>
        public IChunk GetChunk(int cx, int cz)
        {
            if (!ChunkExists(cx, cz))
            {
                return(null);
            }

            return(AlphaChunk.CreateVerified(GetChunkTree(cx, cz)));
        }
Esempio n. 2
0
        /// <inheritdoc/>
        public ChunkRef CreateChunk(int cx, int cz)
        {
            DeleteChunk(cx, cz);
            AlphaChunk c = AlphaChunk.Create(cx, cz);

            c.Save(GetChunkOutStream(cx, cz));

            ChunkRef cr = ChunkRef.Create(this, cx, cz);
            ChunkKey k  = new ChunkKey(cx, cz);

            _cache[k] = cr;

            return(cr);
        }
Esempio n. 3
0
        public AlphaBlockManager(IChunkManager cm)
            : base(cm)
        {
            IChunk c = AlphaChunk.Create(0, 0);

            chunkXDim  = c.Blocks.XDim;
            chunkYDim  = c.Blocks.YDim;
            chunkZDim  = c.Blocks.ZDim;
            chunkXMask = chunkXDim - 1;
            chunkYMask = chunkYDim - 1;
            chunkZMask = chunkZDim - 1;
            chunkXLog  = Log2(chunkXDim);
            chunkYLog  = Log2(chunkYDim);
            chunkZLog  = Log2(chunkZDim);
        }
Esempio n. 4
0
        /// <inheritdoc/>
        public ChunkRef CreateChunk(int cx, int cz)
        {
            DeleteChunk(cx, cz);
            AlphaChunk chunk = AlphaChunk.Create(cx, cz);

            using (Stream chunkOutStream = GetChunkOutStream(cx, cz))
            {
                chunk.Save(chunkOutStream);
            }

            ChunkRef cr = ChunkRef.Create(this, cx, cz);
            ChunkKey k  = new ChunkKey(cx, cz);

            _cache[k] = cr;

            return(cr);
        }
Esempio n. 5
0
 protected override IChunk CreateChunkVerifiedCore(NbtTree tree)
 {
     return(AlphaChunk.CreateVerified(tree));
 }
Esempio n. 6
0
 protected override IChunk CreateChunkCore(int cx, int cz)
 {
     return(AlphaChunk.Create(cx, cz));
 }