From 7faec2f54d3dc0ffb7dc14f9d151284de511a248 Mon Sep 17 00:00:00 2001 From: rubidium Date: Thu, 15 Nov 2007 18:07:30 +0000 Subject: [PATCH] (svn r11438) -Change: do not create shores in canyons. Based on a patch by LeviathNL. --- src/landscape.cpp | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/landscape.cpp b/src/landscape.cpp index c59d4a17c1..1e38ce6947 100644 --- a/src/landscape.cpp +++ b/src/landscape.cpp @@ -658,13 +658,25 @@ void ConvertGroundTilesIntoWaterTiles() case SLOPE_E: case SLOPE_S: case SLOPE_W: - case SLOPE_NW: - case SLOPE_SW: - case SLOPE_SE: - case SLOPE_NE: MakeShore(tile); break; + case SLOPE_NW: + if (GetTileSlope(TileAddByDiagDir(tile, DIAGDIR_SE), NULL) != SLOPE_SE) MakeShore(tile); + break; + + case SLOPE_SW: + if (GetTileSlope(TileAddByDiagDir(tile, DIAGDIR_NE), NULL) != SLOPE_NE) MakeShore(tile); + break; + + case SLOPE_SE: + if (GetTileSlope(TileAddByDiagDir(tile, DIAGDIR_NW), NULL) != SLOPE_NW) MakeShore(tile); + break; + + case SLOPE_NE: + if (GetTileSlope(TileAddByDiagDir(tile, DIAGDIR_SW), NULL) != SLOPE_SW) MakeShore(tile); + break; + default: break; }