changeset 18258:c27aabdb6433 draft

(svn r23094) -Codechange: add a default NULL to GetFoundationSlope and use it
author rubidium <rubidium@openttd.org>
date Fri, 04 Nov 2011 10:23:48 +0000
parents b6026cba5dae
children 362cc64dda9f
files src/landscape.h src/road.cpp src/road_cmd.cpp src/town_cmd.cpp src/water_cmd.cpp
diffstat 5 files changed, 7 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/landscape.h
+++ b/src/landscape.h
@@ -36,7 +36,7 @@
 void ClearSnowLine();
 
 int GetSlopeZInCorner(Slope tileh, Corner corner);
-Slope GetFoundationSlope(TileIndex tile, uint *z);
+Slope GetFoundationSlope(TileIndex tile, uint *z = NULL);
 
 uint GetPartialPixelZ(int x, int y, Slope corners);
 uint GetSlopePixelZ(int x, int y);
@@ -66,8 +66,9 @@
  */
 static inline Slope GetFoundationPixelSlope(TileIndex tile, uint *z)
 {
+	assert(z != NULL);
 	Slope s = GetFoundationSlope(tile, z);
-	if (z != NULL) *z *= TILE_HEIGHT;
+	*z *= TILE_HEIGHT;
 	return s;
 }
 
--- a/src/road.cpp
+++ b/src/road.cpp
@@ -32,7 +32,7 @@
 	return (IsTileType(tile, MP_RAILWAY) &&
 		GetRailTileType(tile) == RAIL_TILE_NORMAL &&
 		GetTrackBits(tile) == (ax == AXIS_X ? TRACK_BIT_Y : TRACK_BIT_X) &&
-		GetFoundationPixelSlope(tile, NULL) == SLOPE_FLAT);
+		GetFoundationSlope(tile) == SLOPE_FLAT);
 }
 
 /**
--- a/src/road_cmd.cpp
+++ b/src/road_cmd.cpp
@@ -1410,7 +1410,7 @@
 			if (t->road_build_months != 0 &&
 					(DistanceManhattan(t->xy, tile) < 8 || grp != HZB_TOWN_EDGE) &&
 					IsNormalRoad(tile) && !HasAtMostOneBit(GetAllRoadBits(tile))) {
-				if (GetFoundationPixelSlope(tile, NULL) == SLOPE_FLAT && EnsureNoVehicleOnGround(tile).Succeeded() && Chance16(1, 40)) {
+				if (GetFoundationSlope(tile) == SLOPE_FLAT && EnsureNoVehicleOnGround(tile).Succeeded() && Chance16(1, 40)) {
 					StartRoadWorks(tile);
 
 					SndPlayTileFx(SND_21_JACKHAMMER, tile);
--- a/src/town_cmd.cpp
+++ b/src/town_cmd.cpp
@@ -787,7 +787,7 @@
 		}
 	}
 
-	Slope cur_slope = _settings_game.construction.build_on_slopes ? GetFoundationPixelSlope(tile, NULL) : GetTileSlope(tile);
+	Slope cur_slope = _settings_game.construction.build_on_slopes ? GetFoundationSlope(tile) : GetTileSlope(tile);
 	bool ret = !IsNeighborRoadTile(tile, dir, t->layout == TL_ORIGINAL ? 1 : 2);
 	if (cur_slope == SLOPE_FLAT) return ret;
 
--- a/src/water_cmd.cpp
+++ b/src/water_cmd.cpp
@@ -1090,7 +1090,7 @@
 			break;
 
 		case FLOOD_DRYUP: {
-			Slope slope_here = GetFoundationPixelSlope(tile, NULL) & ~SLOPE_HALFTILE_MASK & ~SLOPE_STEEP;
+			Slope slope_here = GetFoundationSlope(tile) & ~SLOPE_HALFTILE_MASK & ~SLOPE_STEEP;
 			uint dir;
 			FOR_EACH_SET_BIT(dir, _flood_from_dirs[slope_here]) {
 				TileIndex dest = AddTileIndexDiffCWrap(tile, TileIndexDiffCByDir((Direction)dir));