diff options
author | paramat <mat.gregory@virginmedia.com> | 2015-11-28 14:51:22 +0000 |
---|---|---|
committer | paramat <mat.gregory@virginmedia.com> | 2015-11-29 21:55:43 +0000 |
commit | 452c88308c80dc52df95d5c2a9e0e105154684d0 (patch) | |
tree | 49f4fbadec4a7d08add42c7c43ed32444e49d5d6 /src/dungeongen.cpp | |
parent | 900db310638531a8b9fb1a587f75a02a15ae0c24 (diff) | |
download | minetest-452c88308c80dc52df95d5c2a9e0e105154684d0.tar.gz minetest-452c88308c80dc52df95d5c2a9e0e105154684d0.tar.bz2 minetest-452c88308c80dc52df95d5c2a9e0e105154684d0.zip |
Dungeongen: Also preserve river water nodes
For future river mapgens
Dungeons will not generate in river water, to
avoid dungeons filling and blocking river channels
Diffstat (limited to 'src/dungeongen.cpp')
-rw-r--r-- | src/dungeongen.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/dungeongen.cpp b/src/dungeongen.cpp index 9c6e24a60..bfaad9faa 100644 --- a/src/dungeongen.cpp +++ b/src/dungeongen.cpp @@ -65,6 +65,9 @@ DungeonGen::DungeonGen(Mapgen *mapgen, DungeonParams *dparams) dp.np_wetness = nparams_dungeon_wetness; dp.np_density = nparams_dungeon_density; } + + // For mapgens using river water + dp.c_river_water = mg->ndef->getId("mapgen_river_water_source"); } @@ -87,7 +90,7 @@ void DungeonGen::generate(u32 bseed, v3s16 nmin, v3s16 nmax) u32 i = vm->m_area.index(nmin.X, y, z); for (s16 x = nmin.X; x <= nmax.X; x++) { content_t c = vm->m_data[i].getContent(); - if (c == CONTENT_AIR || c == dp.c_water) + if (c == CONTENT_AIR || c == dp.c_water || c == dp.c_river_water) vm->m_flags[i] |= VMANIP_FLAG_DUNGEON_PRESERVE; i++; } |