mirror of
https://github.com/luanti-org/luanti.git
synced 2025-10-15 09:25:37 +02:00
Biomes/decorations/ores: Make relative to 'water_level' setting
Add 'biome_zero_level' argument to 'generateBiomes()', 'deco_zero_level' argument to 'placeAllDecos()' and 'ore_zero_level' to 'placeAllOres()' to allow mapgens to vertically shift the registered biomes, decorations and ores per-mapchunk. Will also allow many realm possibilities in future mapgens.
This commit is contained in:
@@ -200,7 +200,7 @@ void MapgenV5::makeChunk(BlockMakeData *data)
|
||||
|
||||
// Init biome generator, place biome-specific nodes, and build biomemap
|
||||
biomegen->calcBiomeNoise(node_min);
|
||||
MgStoneType stone_type = generateBiomes();
|
||||
MgStoneType stone_type = generateBiomes(water_level - 1);
|
||||
|
||||
// Generate caverns, tunnels and classic caves
|
||||
if (flags & MG_CAVES) {
|
||||
@@ -224,10 +224,12 @@ void MapgenV5::makeChunk(BlockMakeData *data)
|
||||
|
||||
// Generate the registered decorations
|
||||
if (flags & MG_DECORATIONS)
|
||||
m_emerge->decomgr->placeAllDecos(this, blockseed, node_min, node_max);
|
||||
m_emerge->decomgr->placeAllDecos(this, blockseed,
|
||||
node_min, node_max, water_level - 1);
|
||||
|
||||
// Generate the registered ores
|
||||
m_emerge->oremgr->placeAllOres(this, blockseed, node_min, node_max);
|
||||
m_emerge->oremgr->placeAllOres(this, blockseed,
|
||||
node_min, node_max, water_level - 1);
|
||||
|
||||
// Sprinkle some dust on top after everything else was generated
|
||||
dustTopNodes();
|
||||
|
Reference in New Issue
Block a user