Mgv5/v7: Add check for water for deciding biome node stability
authorparamat <mat.gregory@virginmedia.com>
Thu, 16 Apr 2015 02:45:42 +0000 (03:45 +0100)
committerparamat <mat.gregory@virginmedia.com>
Thu, 16 Apr 2015 03:01:58 +0000 (04:01 +0100)
src/mapgen_v5.cpp
src/mapgen_v7.cpp

index 2284c1ecc60abd0f89787b531f7b0a4e94aca365..6c3d678eadd6f6967ca19e24aab3160dbdfc4513 100644 (file)
@@ -426,7 +426,7 @@ bool MapgenV5::generateBiomes(float *heat_map, float *humidity_map)
                        if (c == c_stone && have_air) {
                                content_t c_below = vm->m_data[i - em.X].getContent();
 
-                               if (c_below != CONTENT_AIR) {
+                               if (c_below != CONTENT_AIR && c_below != c_water_source) {
                                        if (nplaced < y0_top) {
                                                vm->m_data[i] = MapNode(biome->c_top);
                                                nplaced++;
index 12ca12a86ee65f1f7c5c21a74ecde6fcb98b34cb..443aea2815b19bf8eda4bbc61ac97331e0a14e5c 100644 (file)
@@ -620,7 +620,7 @@ bool MapgenV7::generateBiomes(float *heat_map, float *humidity_map)
                        if (c == c_stone && have_air) {
                                content_t c_below = vm->m_data[i - em.X].getContent();
 
-                               if (c_below != CONTENT_AIR) {
+                               if (c_below != CONTENT_AIR && c_below != c_water_source) {
                                        if (nplaced < y0_top) {
                                                vm->m_data[i] = MapNode(biome->c_top);
                                                nplaced++;