Luanti 5.15.0-dev
 
Loading...
Searching...
No Matches
mapgen_valleys.h
Go to the documentation of this file.
1/*
2Luanti
3SPDX-License-Identifier: LGPL-2.1-or-later
4Copyright (C) 2016-2019 Duane Robertson <duane@duanerobertson.com>
5Copyright (C) 2016-2019 paramat
6
7Based on Valleys Mapgen by Gael de Sailly
8(https://forum.luanti.org/viewtopic.php?f=9&t=11430)
9and mapgen_v7, mapgen_flat by kwolekr and paramat.
10
11Licensing changed by permission of Gael de Sailly.
12*/
13
14
15#pragma once
16
17#include "mapgen.h"
18
19#define MGVALLEYS_ALT_CHILL 0x01
20#define MGVALLEYS_HUMID_RIVERS 0x02
21#define MGVALLEYS_VARY_RIVER_DEPTH 0x04
22#define MGVALLEYS_ALT_DRY 0x08
23
25
27
28
67
68
69class MapgenValleys : public MapgenBasic {
70public:
71
73 EmergeParams *emerge);
75
76 virtual MapgenType getType() const { return MAPGEN_VALLEYS; }
77
78 virtual void makeChunk(BlockMakeData *data);
80
81private:
83
87
90 Noise *noise_rivers = nullptr;
94
95 virtual int generateTerrain();
96};
Definition mg_biome.h:167
Definition emerge.h:84
Definition mapgen.h:276
Definition mapgen_valleys.h:69
virtual void makeChunk(BlockMakeData *data)
Definition mapgen_valleys.cpp:195
int getSpawnLevelAtPoint(v2s16 p)
Definition mapgen_valleys.cpp:279
Noise * noise_inter_valley_fill
Definition mapgen_valleys.h:88
virtual int generateTerrain()
Definition mapgen_valleys.cpp:331
BiomeGenOriginal * m_bgen
Definition mapgen_valleys.h:82
Noise * noise_valley_profile
Definition mapgen_valleys.h:93
float river_depth_bed
Definition mapgen_valleys.h:85
float altitude_chill
Definition mapgen_valleys.h:84
MapgenValleys(MapgenValleysParams *params, EmergeParams *emerge)
Definition mapgen_valleys.cpp:43
virtual MapgenType getType() const
Definition mapgen_valleys.h:76
Noise * noise_inter_valley_slope
Definition mapgen_valleys.h:89
~MapgenValleys()
Definition mapgen_valleys.cpp:88
Noise * noise_valley_depth
Definition mapgen_valleys.h:92
Noise * noise_rivers
Definition mapgen_valleys.h:90
Noise * noise_terrain_height
Definition mapgen_valleys.h:91
float river_size_factor
Definition mapgen_valleys.h:86
Definition noise.h:146
Definition settings.h:110
static const char * settings[]
Definition fontengine.cpp:26
core::vector2d< s16 > v2s16
Definition irr_v2d.h:12
MapgenType
Definition mapgen.h:99
@ MAPGEN_VALLEYS
Definition mapgen.h:101
const FlagDesc flagdesc_mapgen_valleys[]
Definition mapgen_valleys.cpp:34
Definition emerge.h:36
Definition string.h:68
Definition mapgen.h:111
Definition mapgen_valleys.h:29
NoiseParams np_cave1
Definition mapgen_valleys.h:55
float cavern_threshold
Definition mapgen_valleys.h:43
NoiseParams np_inter_valley_slope
Definition mapgen_valleys.h:49
s16 dungeon_ymin
Definition mapgen_valleys.h:44
NoiseParams np_inter_valley_fill
Definition mapgen_valleys.h:48
MapgenValleysParams()
Definition mapgen_valleys.cpp:100
s16 dungeon_ymax
Definition mapgen_valleys.h:45
u16 river_depth
Definition mapgen_valleys.h:31
s16 cavern_taper
Definition mapgen_valleys.h:42
float cave_width
Definition mapgen_valleys.h:34
void writeParams(Settings *settings) const
Definition mapgen_valleys.cpp:150
void setDefaultSettings(Settings *settings)
Definition mapgen_valleys.cpp:184
u16 large_cave_num_min
Definition mapgen_valleys.h:38
u16 small_cave_num_min
Definition mapgen_valleys.h:36
u16 altitude_chill
Definition mapgen_valleys.h:30
NoiseParams np_cavern
Definition mapgen_valleys.h:57
~MapgenValleysParams()=default
NoiseParams np_rivers
Definition mapgen_valleys.h:50
s16 cavern_limit
Definition mapgen_valleys.h:41
u16 large_cave_num_max
Definition mapgen_valleys.h:39
void readParams(const Settings *settings)
Definition mapgen_valleys.cpp:116
NoiseParams np_dungeons
Definition mapgen_valleys.h:58
NoiseParams np_cave2
Definition mapgen_valleys.h:56
u16 small_cave_num_max
Definition mapgen_valleys.h:37
NoiseParams np_valley_depth
Definition mapgen_valleys.h:52
float large_cave_flooded
Definition mapgen_valleys.h:40
u16 river_size
Definition mapgen_valleys.h:32
NoiseParams np_filler_depth
Definition mapgen_valleys.h:47
NoiseParams np_terrain_height
Definition mapgen_valleys.h:51
s16 large_cave_depth
Definition mapgen_valleys.h:35
NoiseParams np_valley_profile
Definition mapgen_valleys.h:53
Definition noise.h:119
static std::string p(std::string path)
Definition test_filesys.cpp:64