Changeset - r12519:e52fcaadf579
[Not reviewed]
master
0 13 0
rubidium - 15 years ago 2009-07-26 21:50:30
rubidium@openttd.org
(svn r16966) -Codechange: BEGIN_TILE_LOOP and END_TILE_LOOP reworked into TILE_LOOP, which means no more duplication of parameters between BEGIN_TILE_LOOP and END_TILE_LOOP
13 files changed with 71 insertions and 87 deletions:
0 comments (0 inline, 0 general)
src/ai/api/ai_industry.cpp
Show inline comments
 
@@ -142,11 +142,11 @@
 
	if (!HasHeliport(industry_id)) return INVALID_TILE;
 

	
 
	const Industry *ind = ::Industry::Get(industry_id);
 
	BEGIN_TILE_LOOP(tile_cur, ind->width, ind->height, ind->xy);
 
	TILE_LOOP(tile_cur, ind->width, ind->height, ind->xy) {
 
		if (IsTileType(tile_cur, MP_STATION) && IsOilRig(tile_cur)) {
 
			return tile_cur;
 
		}
 
	END_TILE_LOOP(tile_cur, ind->width, ind->height, ind->xy);
 
	}
 

	
 
	return INVALID_TILE;
 
}
 
@@ -164,11 +164,11 @@
 
	if (!HasDock(industry_id)) return INVALID_TILE;
 

	
 
	const Industry *ind = ::Industry::Get(industry_id);
 
	BEGIN_TILE_LOOP(tile_cur, ind->width, ind->height, ind->xy);
 
	TILE_LOOP(tile_cur, ind->width, ind->height, ind->xy) {
 
		if (IsTileType(tile_cur, MP_STATION) && IsOilRig(tile_cur)) {
 
			return tile_cur;
 
		}
 
	END_TILE_LOOP(tile_cur, ind->width, ind->height, ind->xy);
 
	}
 

	
 
	return INVALID_TILE;
 
}
src/ai/api/ai_order.cpp
Show inline comments
 
@@ -192,9 +192,9 @@ static const Order *ResolveOrder(Vehicle
 
				return st->truck_stops->xy;
 
			} else if (st->airport_tile != INVALID_TILE) {
 
				const AirportFTAClass *fta = st->Airport();
 
				BEGIN_TILE_LOOP(tile, fta->size_x, fta->size_y, st->airport_tile) {
 
				TILE_LOOP(tile, fta->size_x, fta->size_y, st->airport_tile) {
 
					if (!::IsHangar(tile)) return tile;
 
				} END_TILE_LOOP(tile, fta->size_x, fta->size_y, st->airport_tile)
 
				}
 
			}
 
			return INVALID_TILE;
 
		}
src/ai/api/ai_tilelist.cpp
Show inline comments
 
@@ -34,9 +34,7 @@ void AITileList::AddRectangle(TileIndex 
 
	uint w = TileX(t2) - TileX(t1) + 1;
 
	uint h = TileY(t2) - TileY(t1) + 1;
 

	
 
	BEGIN_TILE_LOOP(t, w, h, t1) {
 
		this->AddItem(t);
 
	} END_TILE_LOOP(t, w, h, t1)
 
	TILE_LOOP(t, w, h, t1) this->AddItem(t);
 
}
 

	
 
void AITileList::AddTile(TileIndex tile)
 
@@ -56,9 +54,7 @@ void AITileList::RemoveRectangle(TileInd
 
	uint w = TileX(t2) - TileX(t1) + 1;
 
	uint h = TileY(t2) - TileY(t1) + 1;
 

	
 
	BEGIN_TILE_LOOP(t, w, h, t1) {
 
		this->RemoveItem(t);
 
	} END_TILE_LOOP(t, w, h, t1)
 
	TILE_LOOP(t, w, h, t1) this->RemoveItem(t);
 
}
 

	
 
void AITileList::RemoveTile(TileIndex tile)
 
@@ -85,7 +81,7 @@ AITileList_IndustryAccepting::AITileList
 

	
 
	if (!_settings_game.station.modified_catchment) radius = CA_UNMODIFIED;
 

	
 
	BEGIN_TILE_LOOP(cur_tile, i->width + radius * 2, i->height + radius * 2, i->xy - ::TileDiffXY(radius, radius)) {
 
	TILE_LOOP(cur_tile, i->width + radius * 2, i->height + radius * 2, i->xy - ::TileDiffXY(radius, radius)) {
 
		if (!::IsValidTile(cur_tile)) continue;
 
		/* Exclude all tiles that belong to this industry */
 
		if (::IsTileType(cur_tile, MP_INDUSTRY) && ::GetIndustryIndex(cur_tile) == industry_id) continue;
 
@@ -102,7 +98,7 @@ AITileList_IndustryAccepting::AITileList
 
		}
 

	
 
		this->AddTile(cur_tile);
 
	} END_TILE_LOOP(cur_tile, i->width + radius * 2, i->height + radius * 2, i->xy - ::TileDiffXY(radius, radius))
 
	}
 
}
 

	
 
AITileList_IndustryProducing::AITileList_IndustryProducing(IndustryID industry_id, int radius)
 
@@ -122,7 +118,7 @@ AITileList_IndustryProducing::AITileList
 

	
 
	if (!_settings_game.station.modified_catchment) radius = CA_UNMODIFIED;
 

	
 
	BEGIN_TILE_LOOP(cur_tile, i->width + radius * 2, i->height + radius * 2, i->xy - ::TileDiffXY(radius, radius)) {
 
	TILE_LOOP(cur_tile, i->width + radius * 2, i->height + radius * 2, i->xy - ::TileDiffXY(radius, radius)) {
 
		if (!::IsValidTile(cur_tile)) continue;
 
		/* Exclude all tiles that belong to this industry */
 
		if (::IsTileType(cur_tile, MP_INDUSTRY) && ::GetIndustryIndex(cur_tile) == industry_id) continue;
 
@@ -139,7 +135,7 @@ AITileList_IndustryProducing::AITileList
 
		}
 

	
 
		this->AddTile(cur_tile);
 
	} END_TILE_LOOP(cur_tile, i->width + radius * 2, i->height + radius * 2, i->xy - ::TileDiffXY(radius, radius))
 
	}
 
}
 

	
 
AITileList_StationType::AITileList_StationType(StationID station_id, AIStation::StationType station_type)
 
@@ -157,10 +153,10 @@ AITileList_StationType::AITileList_Stati
 
	if ((station_type & AIStation::STATION_AIRPORT) != 0)    station_type_value |= (1 << ::STATION_AIRPORT) | (1 << ::STATION_OILRIG);
 
	if ((station_type & AIStation::STATION_DOCK) != 0)       station_type_value |= (1 << ::STATION_DOCK)    | (1 << ::STATION_OILRIG);
 

	
 
	BEGIN_TILE_LOOP(cur_tile, rect->right - rect->left + 1, rect->bottom - rect->top + 1, ::TileXY(rect->left, rect->top)) {
 
	TILE_LOOP(cur_tile, rect->right - rect->left + 1, rect->bottom - rect->top + 1, ::TileXY(rect->left, rect->top)) {
 
		if (!::IsTileType(cur_tile, MP_STATION)) continue;
 
		if (::GetStationIndex(cur_tile) != station_id) continue;
 
		if (!HasBit(station_type_value, ::GetStationType(cur_tile))) continue;
 
		this->AddTile(cur_tile);
 
	} END_TILE_LOOP(cur_tile, rect->right - rect->left + 1, rect->bottom - rect->top + 1, ::TileXY(rect->left, rect->top))
 
	}
 
}
src/industry_cmd.cpp
Show inline comments
 
@@ -136,7 +136,7 @@ Industry::~Industry()
 
	 * This means that we do not have to clear tiles either. */
 
	if (this->width == 0) return;
 

	
 
	BEGIN_TILE_LOOP(tile_cur, this->width, this->height, this->xy);
 
	TILE_LOOP(tile_cur, this->width, this->height, this->xy) {
 
		if (IsTileType(tile_cur, MP_INDUSTRY)) {
 
			if (GetIndustryIndex(tile_cur) == this->index) {
 
				/* MakeWaterKeepingClass() can also handle 'land' */
 
@@ -149,17 +149,17 @@ Industry::~Industry()
 
		} else if (IsTileType(tile_cur, MP_STATION) && IsOilRig(tile_cur)) {
 
			DeleteOilRig(tile_cur);
 
		}
 
	END_TILE_LOOP(tile_cur, this->width, this->height, this->xy);
 
	}
 

	
 
	if (GetIndustrySpec(this->type)->behaviour & INDUSTRYBEH_PLANT_FIELDS) {
 
		/* Remove the farmland and convert it to regular tiles over time. */
 
		BEGIN_TILE_LOOP(tile_cur, 42, 42, this->xy - TileDiffXY(21, 21)) {
 
		TILE_LOOP(tile_cur, 42, 42, this->xy - TileDiffXY(21, 21)) {
 
			tile_cur = TILE_MASK(tile_cur);
 
			if (IsTileType(tile_cur, MP_CLEAR) && IsClearGround(tile_cur, CLEAR_FIELDS) &&
 
					GetIndustryIndexOfField(tile_cur) == this->index) {
 
				SetIndustryIndexOfField(tile_cur, INVALID_INDUSTRY);
 
			}
 
		} END_TILE_LOOP(tile_cur, 42, 42, this->xy - TileDiff(21, 21))
 
		}
 
	}
 

	
 
	/* don't let any disaster vehicle target invalid industry */
 
@@ -957,10 +957,10 @@ static void PlantFarmField(TileIndex til
 

	
 
	/* check the amount of bad tiles */
 
	count = 0;
 
	BEGIN_TILE_LOOP(cur_tile, size_x, size_y, tile)
 
	TILE_LOOP(cur_tile, size_x, size_y, tile) {
 
		assert(cur_tile < MapSize());
 
		count += IsBadFarmFieldTile(cur_tile);
 
	END_TILE_LOOP(cur_tile, size_x, size_y, tile)
 
	}
 
	if (count * 2 >= size_x * size_y) return;
 

	
 
	/* determine type of field */
 
@@ -969,14 +969,14 @@ static void PlantFarmField(TileIndex til
 
	field_type = GB(r, 8, 8) * 9 >> 8;
 

	
 
	/* make field */
 
	BEGIN_TILE_LOOP(cur_tile, size_x, size_y, tile)
 
	TILE_LOOP(cur_tile, size_x, size_y, tile) {
 
		assert(cur_tile < MapSize());
 
		if (!IsBadFarmFieldTile2(cur_tile)) {
 
			MakeField(cur_tile, field_type, industry);
 
			SetClearCounter(cur_tile, counter);
 
			MarkTileDirtyByTile(cur_tile);
 
		}
 
	END_TILE_LOOP(cur_tile, size_x, size_y, tile)
 
	}
 

	
 
	type = 3;
 
	if (_settings_game.game_creation.landscape != LT_ARCTIC && _settings_game.game_creation.landscape != LT_TROPIC) {
 
@@ -1340,7 +1340,7 @@ static bool CheckCanTerraformSurrounding
 
	if (TileX(tile) == 0 || TileY(tile) == 0 || GetTileType(tile) == MP_VOID) return false;
 

	
 
	tile += TileDiffXY(-1, -1);
 
	BEGIN_TILE_LOOP(tile_walk, size_x, size_y, tile) {
 
	TILE_LOOP(tile_walk, size_x, size_y, tile) {
 
		curh = TileHeight(tile_walk);
 
		/* Is the tile clear? */
 
		if ((GetTileType(tile_walk) != MP_CLEAR) && (GetTileType(tile_walk) != MP_TREES))
 
@@ -1356,7 +1356,7 @@ static bool CheckCanTerraformSurrounding
 
			if (TileX(tile_walk) == 0 || TileY(tile_walk) == 0 || !CheckCanTerraformSurroundingTiles(tile_walk + TileDiffXY(-1, -1), height, internal + 1))
 
				return false;
 
		}
 
	} END_TILE_LOOP(tile_walk, size_x, size_y, tile);
 
	}
 

	
 
	return true;
 
}
 
@@ -1399,7 +1399,7 @@ static bool CheckIfCanLevelIndustryPlatf
 
	CompanyID old_company = _current_company;
 
	_current_company = OWNER_TOWN;
 

	
 
	BEGIN_TILE_LOOP(tile_walk, size_x, size_y, cur_tile) {
 
	TILE_LOOP(tile_walk, size_x, size_y, cur_tile) {
 
		curh = TileHeight(tile_walk);
 
		if (curh != h) {
 
			/* This tile needs terraforming. Check if we can do that without
 
@@ -1415,11 +1415,11 @@ static bool CheckIfCanLevelIndustryPlatf
 
				return false;
 
			}
 
		}
 
	} END_TILE_LOOP(tile_walk, size_x, size_y, cur_tile)
 
	}
 

	
 
	if (flags & DC_EXEC) {
 
		/* Terraform the land under the industry */
 
		BEGIN_TILE_LOOP(tile_walk, size_x, size_y, cur_tile) {
 
		TILE_LOOP(tile_walk, size_x, size_y, cur_tile) {
 
			curh = TileHeight(tile_walk);
 
			while (curh != h) {
 
				/* We give the terraforming for free here, because we can't calculate
 
@@ -1428,7 +1428,7 @@ static bool CheckIfCanLevelIndustryPlatf
 
				DoCommand(tile_walk, SLOPE_N, (curh > h) ? 0 : 1, flags, CMD_TERRAFORM_LAND);
 
				curh += (curh > h) ? -1 : 1;
 
			}
 
		} END_TILE_LOOP(tile_walk, size_x, size_y, cur_tile)
 
		}
 
	}
 

	
 
	_current_company = old_company;
src/map_func.h
Show inline comments
 
@@ -327,7 +327,7 @@ uint DistanceMaxPlusManhattan(TileIndex,
 
uint DistanceFromEdge(TileIndex); ///< shortest distance from any edge of the map
 

	
 
/**
 
 * Starts a loop which iterates to a square of tiles
 
 * A loop which iterates to a square of tiles
 
 *
 
 * This macro starts 2 nested loops which iterates over a square of tiles.
 
 *
 
@@ -336,22 +336,10 @@ uint DistanceFromEdge(TileIndex); ///< s
 
 * @param h The heigth (y-width) of the square
 
 * @param tile The start tile of the square
 
 */
 
#define BEGIN_TILE_LOOP(var, w, h, tile)                      \
 
	{                                                        \
 
		int h_cur = h;                                         \
 
		uint var = tile;                                       \
 
		do {                                                   \
 
			int w_cur = w;                                       \
 
			do {
 
/**
 
 * Ends the square-loop used before
 
 *
 
 * @see BEGIN_TILE_LOOP
 
 */
 
#define END_TILE_LOOP(var, w, h, tile)                        \
 
			} while (++var, --w_cur != 0);                       \
 
		} while (var += TileDiffXY(0, 1) - (w), --h_cur != 0); \
 
	}
 
#define TILE_LOOP(var, w, h, tile)                                                      \
 
	for (uint var = tile, cur_h = (h); cur_h > 0; --cur_h, var += TileDiffXY(0, 1) - (w)) \
 
		for (uint cur_w = (w); cur_w > 0; --cur_w, var++)
 

	
 
/**
 
 * Convert a DiagDirection to a TileIndexDiff
 
 *
src/newgrf_industrytiles.cpp
Show inline comments
 
@@ -389,7 +389,7 @@ bool StartStopIndustryTileAnimation(cons
 
{
 
	bool ret = true;
 
	uint32 random = Random();
 
	BEGIN_TILE_LOOP(tile, ind->width, ind->height, ind->xy)
 
	TILE_LOOP(tile, ind->width, ind->height, ind->xy) {
 
		if (IsTileType(tile, MP_INDUSTRY) && GetIndustryIndex(tile) == ind->index) {
 
			if (StartStopIndustryTileAnimation(tile, iat, random)) {
 
				SB(random, 0, 16, Random());
 
@@ -397,7 +397,7 @@ bool StartStopIndustryTileAnimation(cons
 
				ret = false;
 
			}
 
		}
 
	END_TILE_LOOP(tile, ind->width, ind->height, ind->xy)
 
	}
 

	
 
	return ret;
 
}
 
@@ -433,9 +433,9 @@ void TriggerIndustryTile(TileIndex tile,
 

	
 
void TriggerIndustry(Industry *ind, IndustryTileTrigger trigger)
 
{
 
	BEGIN_TILE_LOOP(tile, ind->width, ind->height, ind->xy)
 
	TILE_LOOP(tile, ind->width, ind->height, ind->xy) {
 
		if (IsTileType(tile, MP_INDUSTRY) && GetIndustryIndex(tile) == ind->index) {
 
			DoTriggerIndustryTile(tile, trigger, ind);
 
		}
 
	END_TILE_LOOP(tile, ind->width, ind->height, ind->xy)
 
	}
 
}
src/station.cpp
Show inline comments
 
@@ -415,9 +415,9 @@ bool StationRect::BeforeAddRect(TileInde
 
	int width = right_a - left_a + 1;
 
	int height = bottom_a - top_a + 1;
 

	
 
	BEGIN_TILE_LOOP(tile, width, height, top_left)
 
	TILE_LOOP(tile, width, height, top_left) {
 
		if (IsTileType(tile, MP_STATION) && GetStationIndex(tile) == st_id) return true;
 
	END_TILE_LOOP(tile, width, height, top_left);
 
	}
 

	
 
	return false;
 
}
src/station_cmd.cpp
Show inline comments
 
@@ -76,7 +76,7 @@ static uint GetNumRoadStopsInStation(con
 
static Station *GetStationAround(TileIndex tile, int w, int h, StationID closest_station)
 
{
 
	/* check around to see if there's any stations there */
 
	BEGIN_TILE_LOOP(tile_cur, w + 2, h + 2, tile - TileDiffXY(1, 1))
 
	TILE_LOOP(tile_cur, w + 2, h + 2, tile - TileDiffXY(1, 1)) {
 
		if (IsTileType(tile_cur, MP_STATION)) {
 
			StationID t = GetStationIndex(tile_cur);
 

	
 
@@ -87,7 +87,7 @@ static Station *GetStationAround(TileInd
 
				return CHECK_STATIONS_ERR;
 
			}
 
		}
 
	END_TILE_LOOP(tile_cur, w + 2, h + 2, tile - TileDiffXY(1, 1))
 
	}
 
	return (closest_station == INVALID_STATION) ? NULL : Station::Get(closest_station);
 
}
 

	
 
@@ -649,7 +649,7 @@ CommandCost CheckFlatLandBelow(TileIndex
 
	CommandCost cost(EXPENSES_CONSTRUCTION);
 
	int allowed_z = -1;
 

	
 
	BEGIN_TILE_LOOP(tile_cur, w, h, tile) {
 
	TILE_LOOP(tile_cur, w, h, tile) {
 
		if (MayHaveBridgeAbove(tile_cur) && IsBridgeAbove(tile_cur)) {
 
			return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST);
 
		}
 
@@ -709,7 +709,7 @@ CommandCost CheckFlatLandBelow(TileIndex
 
			if (CmdFailed(ret)) return ret;
 
			cost.AddCost(ret);
 
		}
 
	} END_TILE_LOOP(tile_cur, w, h, tile)
 
	}
 

	
 
	return cost;
 
}
 
@@ -735,12 +735,12 @@ static bool CanExpandRailStation(const S
 
	} else {
 
		/* do not allow modifying non-uniform stations,
 
		 * the uniform-stations code wouldn't handle it well */
 
		BEGIN_TILE_LOOP(t, st->train_station.w, st->train_station.h, st->train_station.tile)
 
		TILE_LOOP(t, st->train_station.w, st->train_station.h, st->train_station.tile) {
 
			if (!st->TileBelongsToRailStation(t)) { // there may be adjoined station
 
				_error_message = STR_NONUNIFORM_STATIONS_DISALLOWED;
 
				return false;
 
			}
 
		END_TILE_LOOP(t, st->train_station.w, st->train_station.h, st->train_station.tile)
 
		}
 

	
 
		/* check so the orientation is the same */
 
		if (GetRailStationAxis(st->train_station.tile) != axis) {
 
@@ -1147,7 +1147,7 @@ CommandCost CmdRemoveFromRailroadStation
 
	SmallVector<Station *, 4> affected_stations;
 

	
 
	/* Do the action for every tile into the area */
 
	BEGIN_TILE_LOOP(tile2, size_x, size_y, tile) {
 
	TILE_LOOP(tile2, size_x, size_y, tile) {
 
		/* Make sure the specified tile is a railroad station */
 
		if (!IsRailStationTile(tile2)) {
 
			continue;
 
@@ -1208,7 +1208,7 @@ CommandCost CmdRemoveFromRailroadStation
 
				if (IsRailStationTile(v->tile)) SetRailStationPlatformReservation(v->tile, TrackdirToExitdir(ReverseTrackdir(v->GetVehicleTrackdir())), true);
 
			}
 
		}
 
	} END_TILE_LOOP(tile2, size_x, size_y, tile)
 
	}
 

	
 
	for (Station **stp = affected_stations.Begin(); stp != affected_stations.End(); stp++) {
 
		Station *st = *stp;
 
@@ -1837,10 +1837,10 @@ CommandCost CmdBuildAirport(TileIndex ti
 
		{
 
			const byte *b = _airport_sections[p1];
 

	
 
			BEGIN_TILE_LOOP(tile_cur, w, h, tile) {
 
			TILE_LOOP(tile_cur, w, h, tile) {
 
				MakeAirport(tile_cur, st->owner, st->index, *b);
 
				b++;
 
			} END_TILE_LOOP(tile_cur, w, h, tile)
 
			}
 
		}
 

	
 
		st->UpdateVirtCoord();
 
@@ -1886,14 +1886,14 @@ static CommandCost RemoveAirport(TileInd
 
		if (a->targetairport == st->index && a->state != FLYING) return CMD_ERROR;
 
	}
 

	
 
	BEGIN_TILE_LOOP(tile_cur, w, h, tile) {
 
	TILE_LOOP(tile_cur, w, h, tile) {
 
		if (!EnsureNoVehicleOnGround(tile_cur)) return CMD_ERROR;
 

	
 
		if (flags & DC_EXEC) {
 
			DeleteAnimatedTile(tile_cur);
 
			DoClearSquare(tile_cur);
 
		}
 
	} END_TILE_LOOP(tile_cur, w, h, tile)
 
	}
 

	
 
	if (flags & DC_EXEC) {
 
		for (uint i = 0; i < afc->nof_depots; ++i) {
src/station_gui.cpp
Show inline comments
 
@@ -1132,9 +1132,9 @@ static const Station *FindStationsNearby
 
	_deleted_stations_nearby.Clear();
 

	
 
	/* Check the inside, to return, if we sit on another station */
 
	BEGIN_TILE_LOOP(t, ta.w, ta.h, ta.tile)
 
	TILE_LOOP(t, ta.w, ta.h, ta.tile) {
 
		if (t < MapSize() && IsTileType(t, MP_STATION) && Station::IsValidID(GetStationIndex(t))) return Station::GetByTile(t);
 
	END_TILE_LOOP(t, ta.w, ta.h, ta.tile)
 
	}
 

	
 
	/* Look for deleted stations */
 
	const BaseStation *st;
src/terraform_cmd.cpp
Show inline comments
 
@@ -385,7 +385,7 @@ CommandCost CmdLevelLand(TileIndex tile,
 
	Money money = GetAvailableMoneyForCommand();
 
	CommandCost cost(EXPENSES_CONSTRUCTION);
 

	
 
	BEGIN_TILE_LOOP(tile2, size_x, size_y, tile) {
 
	TILE_LOOP(tile2, size_x, size_y, tile) {
 
		uint curh = TileHeight(tile2);
 
		while (curh != h) {
 
			CommandCost ret = DoCommand(tile2, SLOPE_N, (curh > h) ? 0 : 1, flags & ~DC_EXEC, CMD_TERRAFORM_LAND);
 
@@ -403,7 +403,7 @@ CommandCost CmdLevelLand(TileIndex tile,
 
			cost.AddCost(ret);
 
			curh += (curh > h) ? -1 : 1;
 
		}
 
	} END_TILE_LOOP(tile2, size_x, size_y, tile)
 
	}
 

	
 
	return (cost.GetCost() == 0) ? CMD_ERROR : cost;
 
}
src/terraform_gui.cpp
Show inline comments
 
@@ -58,11 +58,11 @@ static void GenerateDesertArea(TileIndex
 
	size_y = (ey - sy) + 1;
 

	
 
	_generating_world = true;
 
	BEGIN_TILE_LOOP(tile, size_x, size_y, TileXY(sx, sy)) {
 
	TILE_LOOP(tile, size_x, size_y, TileXY(sx, sy)) {
 
		SetTropicZone(tile, (_ctrl_pressed) ? TROPICZONE_NORMAL : TROPICZONE_DESERT);
 
		DoCommandP(tile, 0, 0, CMD_LANDSCAPE_CLEAR);
 
		MarkTileDirtyByTile(tile);
 
	} END_TILE_LOOP(tile, size_x, size_y, 0);
 
	}
 
	_generating_world = false;
 
}
 

	
 
@@ -83,7 +83,7 @@ static void GenerateRockyArea(TileIndex 
 
	size_x = (ex - sx) + 1;
 
	size_y = (ey - sy) + 1;
 

	
 
	BEGIN_TILE_LOOP(tile, size_x, size_y, TileXY(sx, sy)) {
 
	TILE_LOOP(tile, size_x, size_y, TileXY(sx, sy)) {
 
		switch (GetTileType(tile)) {
 
			case MP_TREES:
 
				if (GetTreeGround(tile) == TREE_GROUND_SHORE) continue;
 
@@ -96,7 +96,7 @@ static void GenerateRockyArea(TileIndex 
 
		}
 
		MarkTileDirtyByTile(tile);
 
		success = true;
 
	} END_TILE_LOOP(tile, size_x, size_y, 0);
 
	}
 

	
 
	if (success) SndPlayTileFx(SND_1F_SPLAT, end);
 
}
 
@@ -410,22 +410,22 @@ static void CommonRaiseLowerBigLand(Tile
 
		if (mode != 0) {
 
			/* Raise land */
 
			h = 15; // XXX - max height
 
			BEGIN_TILE_LOOP(tile2, sizex, sizey, tile) {
 
			TILE_LOOP(tile2, sizex, sizey, tile) {
 
				h = min(h, TileHeight(tile2));
 
			} END_TILE_LOOP(tile2, sizex, sizey, tile)
 
			}
 
		} else {
 
			/* Lower land */
 
			h = 0;
 
			BEGIN_TILE_LOOP(tile2, sizex, sizey, tile) {
 
			TILE_LOOP(tile2, sizex, sizey, tile) {
 
				h = max(h, TileHeight(tile2));
 
			} END_TILE_LOOP(tile2, sizex, sizey, tile)
 
			}
 
		}
 

	
 
		BEGIN_TILE_LOOP(tile2, sizex, sizey, tile) {
 
		TILE_LOOP(tile2, sizex, sizey, tile) {
 
			if (TileHeight(tile2) == h) {
 
				DoCommandP(tile2, SLOPE_N, (uint32)mode, CMD_TERRAFORM_LAND);
 
			}
 
		} END_TILE_LOOP(tile2, sizex, sizey, tile)
 
		}
 
	}
 
}
 

	
src/unmovable_cmd.cpp
Show inline comments
 
@@ -370,9 +370,9 @@ static bool IsRadioTowerNearby(TileIndex
 
	uint w = min(TileX(tile), 4U) + 1 + min(MapMaxX() - TileX(tile), 4U);
 
	uint h = min(TileY(tile), 4U) + 1 + min(MapMaxY() - TileY(tile), 4U);
 

	
 
	BEGIN_TILE_LOOP(tile, w, h, tile_s)
 
	TILE_LOOP(tile, w, h, tile_s) {
 
		if (IsTransmitterTile(tile)) return true;
 
	END_TILE_LOOP(tile, w, h, tile_s)
 
	}
 

	
 
	return false;
 
}
src/water_cmd.cpp
Show inline comments
 
@@ -307,7 +307,7 @@ CommandCost CmdBuildCanal(TileIndex tile
 
	/* Outside the editor you can only drag canals, and not areas */
 
	if (_game_mode != GM_EDITOR && (sx != x && sy != y)) return CMD_ERROR;
 

	
 
	BEGIN_TILE_LOOP(tile, size_x, size_y, TileXY(sx, sy)) {
 
	TILE_LOOP(tile, size_x, size_y, TileXY(sx, sy)) {
 
		CommandCost ret;
 

	
 
		Slope slope = GetTileSlope(tile, NULL);
 
@@ -335,7 +335,7 @@ CommandCost CmdBuildCanal(TileIndex tile
 
		}
 

	
 
		cost.AddCost(_price.clear_water);
 
	} END_TILE_LOOP(tile, size_x, size_y, 0);
 
	}
 

	
 
	if (cost.GetCost() == 0) {
 
		return_cmd_error(STR_ERROR_ALREADY_BUILT);
 
@@ -749,11 +749,11 @@ static void FloodVehicles(TileIndex tile
 
	if (!_settings_game.station.nonuniform_stations && IsTileType(tile, MP_STATION) && GetStationType(tile) == STATION_RAIL) {
 
		const Station *st = Station::GetByTile(tile);
 

	
 
		BEGIN_TILE_LOOP(t, st->train_station.w, st->train_station.h, st->train_station.tile)
 
		TILE_LOOP(t, st->train_station.w, st->train_station.h, st->train_station.tile) {
 
			if (st->TileBelongsToRailStation(t)) {
 
				FindVehicleOnPos(tile, &z, &FloodVehicleProc);
 
			}
 
		END_TILE_LOOP(t, st->train_station.w, st->train_station.h, st->train_station.tile)
 
		}
 

	
 
		return;
 
	}
0 comments (0 inline, 0 general)