Caves: Fix shadowing of 'large_cave_depth' to avoid confusion
authorparamat <paramat@users.noreply.github.com>
Fri, 22 Nov 2019 20:37:43 +0000 (20:37 +0000)
committerParamat <paramat@users.noreply.github.com>
Sat, 23 Nov 2019 01:41:27 +0000 (01:41 +0000)
src/mapgen/mapgen.cpp
src/mapgen/mapgen.h

index 5c6a95a820ee2067cc8bb0186a0b726b06b516b5..81ccf1f8d80abcadcba2dd87ef02891d0b12f628 100644 (file)
@@ -843,7 +843,7 @@ void MapgenBasic::generateCavesNoiseIntersection(s16 max_stone_y)
 }
 
 
-void MapgenBasic::generateCavesRandomWalk(s16 max_stone_y, s16 large_cave_depth)
+void MapgenBasic::generateCavesRandomWalk(s16 max_stone_y, s16 large_cave_ymax)
 {
        if (node_min.Y > max_stone_y)
                return;
@@ -858,10 +858,12 @@ void MapgenBasic::generateCavesRandomWalk(s16 max_stone_y, s16 large_cave_depth)
                cave.makeCave(vm, node_min, node_max, &ps, false, max_stone_y, heightmap);
        }
 
-       if (node_max.Y > large_cave_depth)
+       if (node_max.Y > large_cave_ymax)
                return;
 
-       // Large randomwalk caves below 'large_cave_depth'
+       // Large randomwalk caves below 'large_cave_ymax'.
+       // 'large_cave_ymax' can differ from the 'large_cave_depth' mapgen parameter,
+       // it is set to world base to disable large caves in or near caverns.
        u32 num_large_caves = ps.range(large_cave_num_min, large_cave_num_max);
 
        for (u32 i = 0; i < num_large_caves; i++) {
index a44a8dd3b4fa57040836afd058a8a671e43fcb27..1473d41a685647945685412d6544b17e6bda9854 100644 (file)
@@ -244,7 +244,7 @@ public:
        virtual void generateBiomes();
        virtual void dustTopNodes();
        virtual void generateCavesNoiseIntersection(s16 max_stone_y);
-       virtual void generateCavesRandomWalk(s16 max_stone_y, s16 large_cave_depth);
+       virtual void generateCavesRandomWalk(s16 max_stone_y, s16 large_cave_ymax);
        virtual bool generateCavernsNoise(s16 max_stone_y);
        virtual void generateDungeons(s16 max_stone_y);