X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fmapgen%2Fmapgen_fractal.cpp;h=b915cd8f92716a6a68b46b8e92ca156dcf5f645e;hb=c5a137c29c455d05de971b1447349346b16a8793;hp=45526b13875390f14dbf037785b11ff32784bc5d;hpb=2481ea27ce0f423f3e6f3522539d20e1500cf572;p=dragonfireclient.git diff --git a/src/mapgen/mapgen_fractal.cpp b/src/mapgen/mapgen_fractal.cpp index 45526b138..b915cd8f9 100644 --- a/src/mapgen/mapgen_fractal.cpp +++ b/src/mapgen/mapgen_fractal.cpp @@ -206,18 +206,21 @@ void MapgenFractal::makeChunk(BlockMakeData *data) updateHeightmap(node_min, node_max); // Init biome generator, place biome-specific nodes, and build biomemap - biomegen->calcBiomeNoise(node_min); - - MgStoneType mgstone_type; - content_t biome_stone; - generateBiomes(&mgstone_type, &biome_stone); + if (flags & MG_BIOMES) { + biomegen->calcBiomeNoise(node_min); + generateBiomes(); + } - if (flags & MG_CAVES) - generateCaves(stone_surface_max_y, large_cave_depth); + if (flags & MG_CAVES) { + // Generate tunnels + generateCavesNoiseIntersection(stone_surface_max_y); + // Generate large randomwalk caves + generateCavesRandomWalk(stone_surface_max_y, large_cave_depth); + } if ((flags & MG_DUNGEONS) && full_node_min.Y >= dungeon_ymin && full_node_max.Y <= dungeon_ymax) - generateDungeons(stone_surface_max_y, mgstone_type, biome_stone); + generateDungeons(stone_surface_max_y); // Generate the registered decorations if (flags & MG_DECORATIONS) @@ -227,7 +230,8 @@ void MapgenFractal::makeChunk(BlockMakeData *data) m_emerge->oremgr->placeAllOres(this, blockseed, node_min, node_max); // Sprinkle some dust on top after everything else was generated - dustTopNodes(); + if (flags & MG_BIOMES) + dustTopNodes(); //printf("makeChunk: %dms\n", t.stop());