Skip to content
Snippets Groups Projects
Commit 452c8830 authored by paramat's avatar paramat
Browse files

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
parent 900db310
Branches
Tags
No related merge requests found
......@@ -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++;
}
......
......@@ -40,6 +40,7 @@ int dir_to_facedir(v3s16 d);
struct DungeonParams {
content_t c_water;
content_t c_river_water;
content_t c_cobble;
content_t c_moss;
content_t c_stair;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment