From 38e62805527b774e478617d9781bde72ce2bdcb9 Mon Sep 17 00:00:00 2001 From: paramat Date: Wed, 21 Jan 2015 13:24:11 +0000 Subject: Mgv5: Remove blobgen. Remove crumble and wetness noises Add large pseudorandom caves below -256 De-link terrain level from water_level Cavegen: Mgv5 large cave code --- src/cavegen.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) (limited to 'src/cavegen.h') diff --git a/src/cavegen.h b/src/cavegen.h index 7371df6fa..0b57bf4dc 100644 --- a/src/cavegen.h +++ b/src/cavegen.h @@ -22,9 +22,55 @@ with this program; if not, write to the Free Software Foundation, Inc., #define VMANIP_FLAG_CAVE VOXELFLAG_CHECKED1 +class MapgenV5; class MapgenV6; class MapgenV7; +class CaveV5 { +public: + MapgenV5 *mg; + MMVManip *vm; + INodeDefManager *ndef; + + NoiseParams *np_caveliquids; + + s16 min_tunnel_diameter; + s16 max_tunnel_diameter; + u16 tunnel_routepoints; + int dswitchint; + int part_max_length_rs; + + bool large_cave_is_flat; + bool flooded; + + s16 max_stone_y; + v3s16 node_min; + v3s16 node_max; + + v3f orp; // starting point, relative to caved space + v3s16 of; // absolute coordinates of caved space + v3s16 ar; // allowed route area + s16 rs; // tunnel radius size + v3f main_direction; + + s16 route_y_min; + s16 route_y_max; + + PseudoRandom *ps; + + content_t c_water_source; + content_t c_lava_source; + content_t c_ice; + + int water_level; + + CaveV5() {} + CaveV5(MapgenV5 *mg, PseudoRandom *ps); + void makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height); + void makeTunnel(bool dirswitch); + void carveRoute(v3f vec, float f, bool randomize_xz, bool is_ravine); +}; + class CaveV6 { public: MapgenV6 *mg; -- cgit v1.2.3