Cleanup in content_mapblock (#5746)
[oweals/minetest.git] / src / mapgen.cpp
index b6e8c0fd12a3d94b60881ab6dd5dbf6ef9489873..bd0e94ac7c0e79886f8fd142600de2a201f5c663 100644 (file)
@@ -593,6 +593,7 @@ MapgenBasic::MapgenBasic(int mapgenid, MapgenParams *params, EmergeManager *emer
        c_sandstone          = ndef->getId("mapgen_sandstone");
        c_water_source       = ndef->getId("mapgen_water_source");
        c_river_water_source = ndef->getId("mapgen_river_water_source");
+       c_lava_source        = ndef->getId("mapgen_lava_source");
 
        // Fall back to more basic content if not defined
        // river_water_source cannot fallback to water_source because river water
@@ -840,6 +841,18 @@ void MapgenBasic::generateCaves(s16 max_stone_y, s16 large_cave_depth)
 }
 
 
+bool MapgenBasic::generateCaverns(s16 max_stone_y)
+{
+       if (node_min.Y > max_stone_y || node_min.Y > cavern_limit)
+               return false;
+
+       CavernsNoise caverns_noise(ndef, csize, &np_cavern,
+               seed, cavern_limit, cavern_taper, cavern_threshold);
+
+       return caverns_noise.generateCaverns(vm, node_min, node_max);
+}
+
+
 void MapgenBasic::generateDungeons(s16 max_stone_y, MgStoneType stone_type)
 {
        if (max_stone_y < node_min.Y)