]> git.lizzy.rs Git - minetest.git/blobdiff - src/mapgen/mapgen_valleys.cpp
Randomwalk cave liquids: Remove deprecated 'lava depth' parameter (#9105)
[minetest.git] / src / mapgen / mapgen_valleys.cpp
index a27a3120184ba85de71fc9cc69c645fd8716a7e0..c4ea5067d43b53e12bd94c93f7a49e51154c070c 100644 (file)
@@ -54,9 +54,8 @@ FlagDesc flagdesc_mapgen_valleys[] = {
 };
 
 
-MapgenValleys::MapgenValleys(int mapgenid, MapgenValleysParams *params,
-       EmergeManager *emerge)
-       : MapgenBasic(mapgenid, params, emerge)
+MapgenValleys::MapgenValleys(MapgenValleysParams *params, EmergeManager *emerge)
+       : MapgenBasic(MAPGEN_VALLEYS, params, emerge)
 {
        // NOTE: MapgenValleys has a hard dependency on BiomeGenOriginal
        m_bgen = (BiomeGenOriginal *)biomegen;
@@ -68,7 +67,11 @@ MapgenValleys::MapgenValleys(int mapgenid, MapgenValleysParams *params,
 
        cave_width         = params->cave_width;
        large_cave_depth   = params->large_cave_depth;
-       lava_depth         = params->lava_depth;
+       small_cave_num_min = params->small_cave_num_min;
+       small_cave_num_max = params->small_cave_num_max;
+       large_cave_num_min = params->large_cave_num_min;
+       large_cave_num_max = params->large_cave_num_max;
+       large_cave_flooded = params->large_cave_flooded;
        cavern_limit       = params->cavern_limit;
        cavern_taper       = params->cavern_taper;
        cavern_threshold   = params->cavern_threshold;
@@ -88,9 +91,10 @@ MapgenValleys::MapgenValleys(int mapgenid, MapgenValleysParams *params,
        noise_inter_valley_fill = new Noise(&params->np_inter_valley_fill,
                seed, csize.X, csize.Y + 2, csize.Z);
        // 1-down overgeneraion
-       MapgenBasic::np_cave1   = params->np_cave1;
-       MapgenBasic::np_cave2   = params->np_cave2;
-       MapgenBasic::np_cavern  = params->np_cavern;
+       MapgenBasic::np_cave1    = params->np_cave1;
+       MapgenBasic::np_cave2    = params->np_cave2;
+       MapgenBasic::np_cavern   = params->np_cavern;
+       MapgenBasic::np_dungeons = params->np_dungeons;
 }
 
 
@@ -116,25 +120,30 @@ MapgenValleysParams::MapgenValleysParams():
        np_valley_profile     (0.6,   0.50, v3f(512,  512,  512),  777,   1, 1.0,  2.0),
        np_cave1              (0.0,   12.0, v3f(61,   61,   61),   52534, 3, 0.5,  2.0),
        np_cave2              (0.0,   12.0, v3f(67,   67,   67),   10325, 3, 0.5,  2.0),
-       np_cavern             (0.0,   1.0,  v3f(768,  256,  768),  59033, 6, 0.63, 2.0)
+       np_cavern             (0.0,   1.0,  v3f(768,  256,  768),  59033, 6, 0.63, 2.0),
+       np_dungeons           (0.9,   0.5,  v3f(500,  500,  500),  0,     2, 0.8,  2.0)
 {
 }
 
 
 void MapgenValleysParams::readParams(const Settings *settings)
 {
-       settings->getFlagStrNoEx("mgvalleys_spflags",        spflags, flagdesc_mapgen_valleys);
-       settings->getU16NoEx("mgvalleys_altitude_chill",     altitude_chill);
-       settings->getS16NoEx("mgvalleys_large_cave_depth",   large_cave_depth);
-       settings->getS16NoEx("mgvalleys_lava_depth",         lava_depth);
-       settings->getU16NoEx("mgvalleys_river_depth",        river_depth);
-       settings->getU16NoEx("mgvalleys_river_size",         river_size);
-       settings->getFloatNoEx("mgvalleys_cave_width",       cave_width);
-       settings->getS16NoEx("mgvalleys_cavern_limit",       cavern_limit);
-       settings->getS16NoEx("mgvalleys_cavern_taper",       cavern_taper);
-       settings->getFloatNoEx("mgvalleys_cavern_threshold", cavern_threshold);
-       settings->getS16NoEx("mgvalleys_dungeon_ymin",       dungeon_ymin);
-       settings->getS16NoEx("mgvalleys_dungeon_ymax",       dungeon_ymax);
+       settings->getFlagStrNoEx("mgvalleys_spflags", spflags, flagdesc_mapgen_valleys);
+       settings->getU16NoEx("mgvalleys_altitude_chill",       altitude_chill);
+       settings->getS16NoEx("mgvalleys_large_cave_depth",     large_cave_depth);
+       settings->getU16NoEx("mgvalleys_small_cave_num_min",   small_cave_num_min);
+       settings->getU16NoEx("mgvalleys_small_cave_num_max",   small_cave_num_max);
+       settings->getU16NoEx("mgvalleys_large_cave_num_min",   large_cave_num_min);
+       settings->getU16NoEx("mgvalleys_large_cave_num_max",   large_cave_num_max);
+       settings->getFloatNoEx("mgvalleys_large_cave_flooded", large_cave_flooded);
+       settings->getU16NoEx("mgvalleys_river_depth",          river_depth);
+       settings->getU16NoEx("mgvalleys_river_size",           river_size);
+       settings->getFloatNoEx("mgvalleys_cave_width",         cave_width);
+       settings->getS16NoEx("mgvalleys_cavern_limit",         cavern_limit);
+       settings->getS16NoEx("mgvalleys_cavern_taper",         cavern_taper);
+       settings->getFloatNoEx("mgvalleys_cavern_threshold",   cavern_threshold);
+       settings->getS16NoEx("mgvalleys_dungeon_ymin",         dungeon_ymin);
+       settings->getS16NoEx("mgvalleys_dungeon_ymax",         dungeon_ymax);
 
        settings->getNoiseParams("mgvalleys_np_filler_depth",       np_filler_depth);
        settings->getNoiseParams("mgvalleys_np_inter_valley_fill",  np_inter_valley_fill);
@@ -147,23 +156,28 @@ void MapgenValleysParams::readParams(const Settings *settings)
        settings->getNoiseParams("mgvalleys_np_cave1",              np_cave1);
        settings->getNoiseParams("mgvalleys_np_cave2",              np_cave2);
        settings->getNoiseParams("mgvalleys_np_cavern",             np_cavern);
+       settings->getNoiseParams("mgvalleys_np_dungeons",           np_dungeons);
 }
 
 
 void MapgenValleysParams::writeParams(Settings *settings) const
 {
-       settings->setFlagStr("mgvalleys_spflags",        spflags, flagdesc_mapgen_valleys, U32_MAX);
-       settings->setU16("mgvalleys_altitude_chill",     altitude_chill);
-       settings->setS16("mgvalleys_large_cave_depth",   large_cave_depth);
-       settings->setS16("mgvalleys_lava_depth",         lava_depth);
-       settings->setU16("mgvalleys_river_depth",        river_depth);
-       settings->setU16("mgvalleys_river_size",         river_size);
-       settings->setFloat("mgvalleys_cave_width",       cave_width);
-       settings->setS16("mgvalleys_cavern_limit",       cavern_limit);
-       settings->setS16("mgvalleys_cavern_taper",       cavern_taper);
-       settings->setFloat("mgvalleys_cavern_threshold", cavern_threshold);
-       settings->setS16("mgvalleys_dungeon_ymin",       dungeon_ymin);
-       settings->setS16("mgvalleys_dungeon_ymax",       dungeon_ymax);
+       settings->setFlagStr("mgvalleys_spflags", spflags, flagdesc_mapgen_valleys, U32_MAX);
+       settings->setU16("mgvalleys_altitude_chill",       altitude_chill);
+       settings->setS16("mgvalleys_large_cave_depth",     large_cave_depth);
+       settings->setU16("mgvalleys_small_cave_num_min",   small_cave_num_min);
+       settings->setU16("mgvalleys_small_cave_num_max",   small_cave_num_max);
+       settings->setU16("mgvalleys_large_cave_num_min",   large_cave_num_min);
+       settings->setU16("mgvalleys_large_cave_num_max",   large_cave_num_max);
+       settings->setFloat("mgvalleys_large_cave_flooded", large_cave_flooded);
+       settings->setU16("mgvalleys_river_depth",          river_depth);
+       settings->setU16("mgvalleys_river_size",           river_size);
+       settings->setFloat("mgvalleys_cave_width",         cave_width);
+       settings->setS16("mgvalleys_cavern_limit",         cavern_limit);
+       settings->setS16("mgvalleys_cavern_taper",         cavern_taper);
+       settings->setFloat("mgvalleys_cavern_threshold",   cavern_threshold);
+       settings->setS16("mgvalleys_dungeon_ymin",         dungeon_ymin);
+       settings->setS16("mgvalleys_dungeon_ymax",         dungeon_ymax);
 
        settings->setNoiseParams("mgvalleys_np_filler_depth",       np_filler_depth);
        settings->setNoiseParams("mgvalleys_np_inter_valley_fill",  np_inter_valley_fill);
@@ -176,6 +190,7 @@ void MapgenValleysParams::writeParams(Settings *settings) const
        settings->setNoiseParams("mgvalleys_np_cave1",              np_cave1);
        settings->setNoiseParams("mgvalleys_np_cave2",              np_cave2);
        settings->setNoiseParams("mgvalleys_np_cavern",             np_cavern);
+       settings->setNoiseParams("mgvalleys_np_dungeons",           np_dungeons);
 }