Ejemplo n.º 1
0
        private static void InsulateChunks(AnvilWorldProvider provider, int radius = 3)
        {
            var spawn = new ChunkCoordinates(provider.GetSpawnPoint());

            for (var x = -radius; x < radius; x++)
            {
                for (var z = -radius; z < radius; z++)
                {
                    var location = new ChunkCoordinates(spawn.X + x, spawn.Z + z);

                    provider._chunkCache.TryGetValue(location, out var column);

                    if (column != null)
                    {
                        continue;
                    }

                    column = new ChunkColumn
                    {
                        isAllAir = true,
                        x        = location.X,
                        z        = location.Z
                    };

                    column.GetBatch();

                    provider._chunkCache[location] = column;
                }
            }
        }