summaryrefslogtreecommitdiff
path: root/src/mapgen_v6.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mapgen_v6.h')
-rw-r--r--src/mapgen_v6.h21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/mapgen_v6.h b/src/mapgen_v6.h
index 89d72300a..34de7c0ed 100644
--- a/src/mapgen_v6.h
+++ b/src/mapgen_v6.h
@@ -43,6 +43,16 @@ extern NoiseParams nparams_v6_def_humidity;
extern NoiseParams nparams_v6_def_trees;
extern NoiseParams nparams_v6_def_apple_trees;
+struct Cave {
+ s16 min_tunnel_diameter;
+ s16 max_tunnel_diameter;
+ int dswitchint;
+ u16 tunnel_routepoints;
+ int part_max_length_rs;
+ bool large_cave_is_flat;
+ bool flooded;
+};
+
struct MapgenV6Params : public MapgenParams {
float freq_desert;
float freq_beach;
@@ -126,9 +136,9 @@ public:
float baseTerrainLevel(float terrain_base, float terrain_higher,
float steepness, float height_select);
- float baseTerrainLevelFromNoise(v2s16 p);
- float baseTerrainLevelFromMap(v2s16 p);
- float baseTerrainLevelFromMap(int index);
+ virtual float baseTerrainLevelFromNoise(v2s16 p);
+ virtual float baseTerrainLevelFromMap(v2s16 p);
+ virtual float baseTerrainLevelFromMap(int index);
s16 find_ground_level(v2s16 p2d);
s16 find_stone_level(v2s16 p2d);
@@ -139,7 +149,7 @@ public:
float getTreeAmount(v2s16 p);
bool getHaveAppleTree(v2s16 p);
float getMudAmount(v2s16 p);
- float getMudAmount(int index);
+ virtual float getMudAmount(int index);
bool getHaveBeach(v2s16 p);
bool getHaveBeach(int index);
BiomeType getBiome(v2s16 p);
@@ -148,13 +158,14 @@ public:
u32 get_blockseed(u64 seed, v3s16 p);
- void calculateNoise();
+ virtual void calculateNoise();
int generateGround();
void addMud();
void flowMud(s16 &mudflow_minpos, s16 &mudflow_maxpos);
void addDirtGravelBlobs();
void growGrass();
void placeTrees();
+ virtual void defineCave(Cave & cave, PseudoRandom ps, v3s16 node_min, bool large_cave);
void generateCaves(int max_stone_y);
};