Skip to content

Commit eb6e2c1

Browse files
duane-rparamat
authored andcommittedJan 18, 2016
Correct overflowing rivers in Valleys mapgen.
1 parent 13e7589 commit eb6e2c1

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed
 

‎src/mapgen_valleys.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -670,8 +670,8 @@ int MapgenValleys::generateTerrain()
670670

671671
for (s16 z = node_min.Z; z <= node_max.Z; z++)
672672
for (s16 x = node_min.X; x <= node_max.X; x++, index_2d++) {
673-
s16 river_y = round(noise_rivers->result[index_2d]);
674-
s16 surface_y = round(noise_terrain_height->result[index_2d]);
673+
s16 river_y = floor(noise_rivers->result[index_2d]);
674+
s16 surface_y = floor(noise_terrain_height->result[index_2d]);
675675
float slope = noise_inter_valley_slope->result[index_2d];
676676

677677
heightmap[index_2d] = surface_y;
@@ -703,7 +703,7 @@ int MapgenValleys::generateTerrain()
703703
} else if (river && y < river_y) {
704704
// river
705705
vm->m_data[index_data] = n_river_water;
706-
} else if ((!fast_terrain) && (!river) && fill * slope > y - surface_y) {
706+
} else if ((!fast_terrain) && (!river) && round(fill * slope) >= y - surface_y) {
707707
// ground (slow method)
708708
vm->m_data[index_data] = n_stone;
709709
heightmap[index_2d] = surface_max_y = y;

0 commit comments

Comments
 (0)