aboutsummaryrefslogtreecommitdiff
path: root/src/mapgen_v7.cpp
diff options
context:
space:
mode:
authorparamat <paramat@users.noreply.github.com>2017-06-20 04:55:32 +0100
committerparamat <mat.gregory@virginmedia.com>2017-06-21 01:58:04 +0100
commitb8237099b269011f16a8055a61745876768f3f4d (patch)
tree88cbfcf96c769e6d5cbb5b7e943453571a4fc330 /src/mapgen_v7.cpp
parente6a9e6066afc369f01c046de8e3a90a4b042286c (diff)
downloadhax-minetest-server-b8237099b269011f16a8055a61745876768f3f4d.tar.gz
hax-minetest-server-b8237099b269011f16a8055a61745876768f3f4d.zip
Mgv5/v7/fractal: Add 'large_cave_depth' parameter to replace fixed value
The value cannot be fixed because we can shift terrain vertically. This also makes these mapgens consistent with mgflat and mgvalleys which have 'large_cave_depth' parameters.
Diffstat (limited to 'src/mapgen_v7.cpp')
-rw-r--r--src/mapgen_v7.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mapgen_v7.cpp b/src/mapgen_v7.cpp
index e3922c53a..409863fa2 100644
--- a/src/mapgen_v7.cpp
+++ b/src/mapgen_v7.cpp
@@ -56,6 +56,7 @@ MapgenV7::MapgenV7(int mapgenid, MapgenV7Params *params, EmergeManager *emerge)
{
this->spflags = params->spflags;
this->cave_width = params->cave_width;
+ this->large_cave_depth = params->large_cave_depth;
this->float_mount_density = params->float_mount_density;
this->float_mount_height = params->float_mount_height;
this->floatland_level = params->floatland_level;
@@ -143,6 +144,7 @@ void MapgenV7Params::readParams(const Settings *settings)
{
settings->getFlagStrNoEx("mgv7_spflags", spflags, flagdesc_mapgen_v7);
settings->getFloatNoEx("mgv7_cave_width", cave_width);
+ settings->getS16NoEx("mgv7_large_cave_depth", large_cave_depth);
settings->getFloatNoEx("mgv7_float_mount_density", float_mount_density);
settings->getFloatNoEx("mgv7_float_mount_height", float_mount_height);
settings->getS16NoEx("mgv7_floatland_level", floatland_level);
@@ -172,6 +174,7 @@ void MapgenV7Params::writeParams(Settings *settings) const
{
settings->setFlagStr("mgv7_spflags", spflags, flagdesc_mapgen_v7, U32_MAX);
settings->setFloat("mgv7_cave_width", cave_width);
+ settings->setS16("mgv7_large_cave_depth", large_cave_depth);
settings->setFloat("mgv7_float_mount_density", float_mount_density);
settings->setFloat("mgv7_float_mount_height", float_mount_height);
settings->setS16("mgv7_floatland_level", floatland_level);
@@ -303,7 +306,7 @@ void MapgenV7::makeChunk(BlockMakeData *data)
// large caverns and floating blobs of overgenerated liquid.
generateCaves(stone_surface_max_y, -MAX_MAP_GENERATION_LIMIT);
else
- generateCaves(stone_surface_max_y, water_level);
+ generateCaves(stone_surface_max_y, large_cave_depth);
}
// Generate dungeons