Changeset - r14295:5b2ff0674205
[Not reviewed]
master
0 3 0
yexo - 15 years ago 2010-01-18 12:32:50
yexo@openttd.org
(svn r18857) -Codechange: don't rely on the fact that all airports are rectangular
3 files changed with 20 insertions and 1 deletions:
0 comments (0 inline, 0 general)
src/station_base.h
Show inline comments
 
@@ -121,6 +121,11 @@ public:
 
		return IsRailStationTile(tile) && GetStationIndex(tile) == this->index;
 
	}
 

	
 
	/* virtual */ FORCEINLINE bool TileBelongsToAirport(TileIndex tile) const
 
	{
 
		return IsAirportTile(tile) && GetStationIndex(tile) == this->index;
 
	}
 

	
 
	/* virtual */ uint32 GetNewGRFVariable(const ResolverObject *object, byte variable, byte parameter, bool *available) const;
 

	
 
	/* virtual */ void GetTileArea(TileArea *ta, StationType type) const;
src/station_cmd.cpp
Show inline comments
 
@@ -2066,7 +2066,7 @@ static CommandCost RemoveAirport(TileInd
 
	int w = as->size_x;
 
	int h = as->size_y;
 

	
 
	CommandCost cost(EXPENSES_CONSTRUCTION, w * h * _price[PR_CLEAR_STATION_AIRPORT]);
 
	CommandCost cost(EXPENSES_CONSTRUCTION);
 

	
 
	const Aircraft *a;
 
	FOR_ALL_AIRCRAFT(a) {
 
@@ -2077,6 +2077,10 @@ static CommandCost RemoveAirport(TileInd
 
	TILE_LOOP(tile_cur, w, h, tile) {
 
		if (!EnsureNoVehicleOnGround(tile_cur)) return CMD_ERROR;
 

	
 
		if (!st->TileBelongsToAirport(tile_cur)) continue;
 

	
 
		cost.AddCost(_price[PR_CLEAR_STATION_AIRPORT]);
 

	
 
		if (flags & DC_EXEC) {
 
			DeleteAnimatedTile(tile_cur);
 
			DoClearSquare(tile_cur);
src/station_map.h
Show inline comments
 
@@ -184,6 +184,16 @@ static inline bool IsAirport(TileIndex t
 
	return GetStationType(t) == STATION_AIRPORT;
 
}
 

	
 
/**
 
 * Is this tile a station tile and an airport tile?
 
 * @param t the tile to get the information from
 
 * @return true if and only if the tile is an airport
 
 */
 
static inline bool IsAirportTile(TileIndex t)
 
{
 
	return IsTileType(t, MP_STATION) && IsAirport(t);
 
}
 

	
 
bool IsHangar(TileIndex t);
 

	
 
/**
0 comments (0 inline, 0 general)