コード例 #1
0
        public override ChunkColumn LoadChunk(int x, int z)
        {
            var u = Globals.Decompress(File.ReadAllBytes(_folder + "/" + x + "." + z + ".cfile"));
            var reader = new DataBuffer(u);

            var blockLength = reader.ReadInt();
            var block = reader.ReadUShortLocal(blockLength);

            var metalength = reader.ReadInt();
            var blockmeta = reader.ReadUShortLocal(metalength);

            var skyLength = reader.ReadInt();
            var skylight = reader.Read(skyLength);

            var lightLength = reader.ReadInt();
            var blocklight = reader.Read(lightLength);

            var biomeIdLength = reader.ReadInt();
            var biomeId = reader.Read(biomeIdLength);

            var cc = new ChunkColumn
            {
                Blocks = block,
                Metadata = blockmeta,
                Blocklight = {Data = blocklight},
                Skylight = {Data = skylight},
                BiomeId = biomeId,
                X = x,
                Z = z
            };
            Debug.WriteLine("We should have loaded " + x + ", " + z);
            return cc;
        }