diff options
author | paramat <mat.gregory@virginmedia.com> | 2017-03-12 13:26:09 +0000 |
---|---|---|
committer | paramat <mat.gregory@virginmedia.com> | 2017-04-03 04:49:32 +0100 |
commit | 859141a0ce38fbd606d95ae7a2f0999acf2fbe84 (patch) | |
tree | 10a77bdb7f52eadbc0dea7dd9e3066e622a681a8 /src/mapgen.h | |
parent | 86b1542181a92841d174e1caec94d084a34e5158 (diff) | |
download | minetest-859141a0ce38fbd606d95ae7a2f0999acf2fbe84.tar.gz minetest-859141a0ce38fbd606d95ae7a2f0999acf2fbe84.tar.bz2 minetest-859141a0ce38fbd606d95ae7a2f0999acf2fbe84.zip |
Cavegen/Mgv5/Mgv7: Add optional giant caverns
Add to MapgenBasic for use by multiple mapgens.
Add to mgv5 and mgv7, enabled by default.
Similar to mgvalleys caverns but half the scale.
Parameters for upper y limit, distance caverns taper to full size, and
noise threshold (full cavern size).
As with mgvalleys caverns are generated first and classic caves are
disabled in any mapchunk containing a cavern, to avoid excessive
spreading volumes of liquids.
This also avoids floating blobs of liquid where a large classic cave
has overgenerated out into a neighbouring previously-generated mapchunk.
Diffstat (limited to 'src/mapgen.h')
-rw-r--r-- | src/mapgen.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mapgen.h b/src/mapgen.h index c4e1652e8..f738b1bce 100644 --- a/src/mapgen.h +++ b/src/mapgen.h @@ -243,6 +243,7 @@ public: virtual ~MapgenBasic(); virtual void generateCaves(s16 max_stone_y, s16 large_cave_depth); + virtual bool generateCaverns(s16 max_stone_y); virtual void generateDungeons(s16 max_stone_y, MgStoneType stone_type); virtual MgStoneType generateBiomes(); virtual void dustTopNodes(); @@ -282,7 +283,11 @@ protected: NoiseParams np_cave1; NoiseParams np_cave2; + NoiseParams np_cavern; float cave_width; + float cavern_limit; + float cavern_taper; + float cavern_threshold; }; #endif |