(svn r6267) Simplify the control flow in the rail tile loop by eliminating a bool flag and replacing it by a simple goto

pull/155/head
tron 18 years ago
parent 48258d844f
commit 8193ee2b04

@ -1758,31 +1758,23 @@ static void TileLoop_Track(TileIndex tile)
{
RailGroundType old_ground = GetRailGroundType(tile);
RailGroundType new_ground = old_ground;
bool quick_return = false;
switch (_opt.landscape) {
case LT_HILLY:
if (GetTileZ(tile) > _opt.snow_line) {
new_ground = RAIL_GROUND_ICE_DESERT;
quick_return = true;
goto set_ground;
}
break;
case LT_DESERT:
if (GetTropicZone(tile) == TROPICZONE_DESERT) {
new_ground = RAIL_GROUND_ICE_DESERT;
quick_return = true;
goto set_ground;
}
break;
}
if (new_ground != old_ground) {
SetRailGroundType(tile, new_ground);
MarkTileDirtyByTile(tile);
}
if (quick_return) return;
if (!IsPlainRailTile(tile)) return;
new_ground = RAIL_GROUND_GRASS;
@ -1866,6 +1858,7 @@ static void TileLoop_Track(TileIndex tile)
}
}
set_ground:
if (old_ground != new_ground) {
SetRailGroundType(tile, new_ground);
MarkTileDirtyByTile(tile);

Loading…
Cancel
Save