Changeset - r23954:8e43140b9a66
src/aircraft_cmd.cpp
Show inline comments
 
@@ -119,7 +119,6 @@ enum HelicopterRotorStates {
 
 */
 
static StationID FindNearestHangar(const Aircraft *v)
 
{
 
	const Station *st;
 
	uint best = 0;
 
	StationID index = INVALID_STATION;
 
	TileIndex vtile = TileVirtXY(v->x_pos, v->y_pos);
 
@@ -140,7 +139,7 @@ static StationID FindNearestHangar(const
 
		}
 
	}
 

	
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if (st->owner != v->owner || !(st->facilities & FACIL_AIRPORT) || !st->airport.HasHangar()) continue;
 

	
 
		const AirportFTAClass *afc = st->airport.GetFTA();
src/base_station_base.h
Show inline comments
 
@@ -163,8 +163,6 @@ struct BaseStation : StationPool::PoolIt
 
	static void PostDestructor(size_t index);
 
};
 

	
 
#define FOR_ALL_BASE_STATIONS(var) FOR_ALL_ITEMS_FROM(BaseStation, station_index, var, 0)
 

	
 
/**
 
 * Class defining several overloaded accessors so we don't
 
 * have to cast base stations that often
 
@@ -252,8 +250,13 @@ struct SpecializedStation : public BaseS
 
		assert(IsExpected(st));
 
		return (const T *)st;
 
	}
 

	
 
	/**
 
	 * Returns an iterable ensemble of all valid stations of type T
 
	 * @param from index of the first station to consider
 
	 * @return an iterable ensemble of all valid stations of type T
 
	 */
 
	static Pool::IterateWrapper<T> Iterate(size_t from = 0) { return Pool::IterateWrapper<T>(from); }
 
};
 

	
 
#define FOR_ALL_BASE_STATIONS_OF_TYPE(name, var) FOR_ALL_ITEMS_FROM(name, station_index, var, 0) if (name::IsExpected(var))
 

	
 
#endif /* BASE_STATION_BASE_H */
src/disaster_vehicle.cpp
Show inline comments
 
@@ -708,8 +708,7 @@ static void Disaster_Zeppeliner_Init()
 
	/* Pick a random place, unless we find a small airport */
 
	int x = TileX(Random()) * TILE_SIZE + TILE_SIZE / 2;
 

	
 
	Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if (st->airport.tile != INVALID_TILE && (st->airport.type == AT_SMALL || st->airport.type == AT_LARGE)) {
 
			x = (TileX(st->airport.tile) + 2) * TILE_SIZE;
 
			break;
src/economy.cpp
Show inline comments
 
@@ -112,10 +112,9 @@ Money CalculateCompanyValue(const Compan
 
{
 
	Owner owner = c->index;
 

	
 
	Station *st;
 
	uint num = 0;
 

	
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if (st->owner == owner) num += CountBits((byte)st->facilities);
 
	}
 

	
 
@@ -188,9 +187,7 @@ int UpdateCompanyRatingAndValue(Company 
 
	/* Count stations */
 
	{
 
		uint num = 0;
 
		const Station *st;
 

	
 
		FOR_ALL_STATIONS(st) {
 
		for (const Station *st : Station::Iterate()) {
 
			/* Only count stations that are actually serviced */
 
			if (st->owner == owner && (st->time_since_load <= 20 || st->time_since_unload <= 20)) num += CountBits((byte)st->facilities);
 
		}
 
@@ -514,8 +511,7 @@ void ChangeOwnershipOfCompanyItems(Owner
 
	if (new_owner != INVALID_OWNER) Company::Get(new_owner)->infrastructure.airport += Company::Get(old_owner)->infrastructure.airport;
 

	
 
	/* convert owner of stations (including deleted ones, but excluding buoys) */
 
	Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (Station *st : Station::Iterate()) {
 
		if (st->owner == old_owner) {
 
			/* if a company goes bankrupt, set owner to OWNER_NONE so the sign doesn't disappear immediately
 
			 * also, drawing station window would cause reading invalid company's colour */
 
@@ -524,8 +520,7 @@ void ChangeOwnershipOfCompanyItems(Owner
 
	}
 

	
 
	/* do the same for waypoints (we need to do this here so deleted waypoints are converted too) */
 
	Waypoint *wp;
 
	FOR_ALL_WAYPOINTS(wp) {
 
	for (Waypoint *wp : Waypoint::Iterate()) {
 
		if (wp->owner == old_owner) {
 
			wp->owner = new_owner == INVALID_OWNER ? OWNER_NONE : new_owner;
 
		}
 
@@ -663,8 +658,7 @@ static void CompaniesGenStatistics()
 
	Backup<CompanyID> cur_company(_current_company, FILE_LINE);
 

	
 
	if (!_settings_game.economy.infrastructure_maintenance) {
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (const Station *st : Station::Iterate()) {
 
			cur_company.Change(st->owner);
 
			CommandCost cost(EXPENSES_PROPERTY, _price[PR_STATION_VALUE] >> 1);
 
			SubtractMoneyFromCompany(cost);
src/linkgraph/linkgraph_gui.cpp
Show inline comments
 
@@ -56,8 +56,7 @@ void LinkGraphOverlay::RebuildCache()
 
	DrawPixelInfo dpi;
 
	this->GetWidgetDpi(&dpi);
 

	
 
	const Station *sta;
 
	FOR_ALL_STATIONS(sta) {
 
	for (const Station *sta : Station::Iterate()) {
 
		if (sta->rect.IsEmpty()) continue;
 

	
 
		Point pta = this->GetStationMiddle(sta);
src/network/network_server.cpp
Show inline comments
 
@@ -1547,7 +1547,6 @@ void NetworkSocketHandler::SendCompanyIn
 
void NetworkPopulateCompanyStats(NetworkCompanyStats *stats)
 
{
 
	const Vehicle *v;
 
	const Station *s;
 

	
 
	memset(stats, 0, sizeof(*stats) * MAX_COMPANIES);
 

	
 
@@ -1566,7 +1565,7 @@ void NetworkPopulateCompanyStats(Network
 
	}
 

	
 
	/* Go through all stations and count the types of stations */
 
	FOR_ALL_STATIONS(s) {
 
	for (const Station *s : Station::Iterate()) {
 
		if (Company::IsValidID(s->owner)) {
 
			NetworkCompanyStats *npi = &stats[s->owner];
 

	
src/openttd.cpp
Show inline comments
 
@@ -1313,8 +1313,7 @@ static void CheckCaches()
 
		assert(memcmp(&v->cargo, buff, sizeof(VehicleCargoList)) == 0);
 
	}
 

	
 
	Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (Station *st : Station::Iterate()) {
 
		for (CargoID c = 0; c < NUM_CARGO; c++) {
 
			byte buff[sizeof(StationCargoList)];
 
			memcpy(buff, &st->goods[c].cargo, sizeof(StationCargoList));
src/saveload/afterload.cpp
Show inline comments
 
@@ -266,8 +266,7 @@ static void InitializeWindowsAndCaches()
 
			i->psa->tile = i->location.tile;
 
		}
 
	}
 
	Station *s;
 
	FOR_ALL_STATIONS(s) {
 
	for (Station *s : Station::Iterate()) {
 
		if (s->airport.psa != nullptr) {
 
			s->airport.psa->feature = GSF_AIRPORTS;
 
			s->airport.psa->tile = s->airport.tile;
 
@@ -587,14 +586,13 @@ bool AfterLoadGame()
 
	 * recompute the width and height. Doing this unconditionally for all old
 
	 * savegames simplifies the code. */
 
	if (IsSavegameVersionBefore(SLV_2)) {
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			st->train_station.w = st->train_station.h = 0;
 
		}
 
		for (TileIndex t = 0; t < map_size; t++) {
 
			if (!IsTileType(t, MP_STATION)) continue;
 
			if (_m[t].m5 > 7) continue; // is it a rail station tile?
 
			st = Station::Get(_m[t].m2);
 
			Station *st = Station::Get(_m[t].m2);
 
			assert(st->train_station.tile != 0);
 
			int dx = TileX(t) - TileX(st->train_station.tile);
 
			int dy = TileY(t) - TileY(st->train_station.tile);
 
@@ -650,8 +648,7 @@ bool AfterLoadGame()
 
			if (c->president_name != nullptr) c->president_name_1 = SPECSTR_PRESIDENT_NAME;
 
		}
 

	
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			st->name = CopyFromOldName(st->string_id);
 
			/* generating new name would be too much work for little effect, use the station name fallback */
 
			if (st->name != nullptr) st->string_id = STR_SV_STNAME_FALLBACK;
 
@@ -669,8 +666,7 @@ bool AfterLoadGame()
 

	
 
	if (IsSavegameVersionBefore(SLV_106)) {
 
		/* no station is determined by 'tile == INVALID_TILE' now (instead of '0') */
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			if (st->airport.tile       == 0) st->airport.tile = INVALID_TILE;
 
			if (st->train_station.tile == 0) st->train_station.tile   = INVALID_TILE;
 
		}
 
@@ -784,8 +780,7 @@ bool AfterLoadGame()
 
	 * here as AfterLoadVehicles can check it indirectly via the newgrf
 
	 * code. */
 
	if (IsSavegameVersionBefore(SLV_139)) {
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			if (st->airport.tile != INVALID_TILE && st->airport.type == 15) {
 
				st->airport.type = AT_OILRIG;
 
			}
 
@@ -1398,8 +1393,7 @@ bool AfterLoadGame()
 
	}
 

	
 
	if (IsSavegameVersionBefore(SLV_26)) {
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			st->last_vehicle_type = VEH_INVALID;
 
		}
 
	}
 
@@ -1420,8 +1414,6 @@ bool AfterLoadGame()
 
	/* Time starts at 0 instead of 1920.
 
	 * Account for this in older games by adding an offset */
 
	if (IsSavegameVersionBefore(SLV_31)) {
 
		Station *st;
 
		Waypoint *wp;
 
		Engine *e;
 
		Industry *i;
 
		Vehicle *v;
 
@@ -1429,8 +1421,8 @@ bool AfterLoadGame()
 
		_date += DAYS_TILL_ORIGINAL_BASE_YEAR;
 
		_cur_year += ORIGINAL_BASE_YEAR;
 

	
 
		FOR_ALL_STATIONS(st)  st->build_date      += DAYS_TILL_ORIGINAL_BASE_YEAR;
 
		FOR_ALL_WAYPOINTS(wp) wp->build_date      += DAYS_TILL_ORIGINAL_BASE_YEAR;
 
		for (Station *st : Station::Iterate())   st->build_date      += DAYS_TILL_ORIGINAL_BASE_YEAR;
 
		for (Waypoint *wp : Waypoint::Iterate()) wp->build_date      += DAYS_TILL_ORIGINAL_BASE_YEAR;
 
		FOR_ALL_ENGINES(e)    e->intro_date       += DAYS_TILL_ORIGINAL_BASE_YEAR;
 
		for (Company *c : Company::Iterate()) c->inaugurated_year += ORIGINAL_BASE_YEAR;
 
		FOR_ALL_INDUSTRIES(i) i->last_prod_year   += ORIGINAL_BASE_YEAR;
 
@@ -1565,8 +1557,7 @@ bool AfterLoadGame()
 
	/* Buoys do now store the owner of the previous water tile, which can never
 
	 * be OWNER_NONE. So replace OWNER_NONE with OWNER_WATER. */
 
	if (IsSavegameVersionBefore(SLV_46)) {
 
		Waypoint *wp;
 
		FOR_ALL_WAYPOINTS(wp) {
 
		for (Waypoint *wp : Waypoint::Iterate()) {
 
			if ((wp->facilities & FACIL_DOCK) != 0 && IsTileOwner(wp->xy, OWNER_NONE) && TileHeight(wp->xy) == 0) SetTileOwner(wp->xy, OWNER_WATER);
 
		}
 
	}
 
@@ -1624,8 +1615,7 @@ bool AfterLoadGame()
 
	} else if (IsSavegameVersionBefore(SLV_59)) {
 
		/* For some reason non-loading vehicles could be in the station's loading vehicle list */
 

	
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			std::list<Vehicle *>::iterator iter;
 
			for (iter = st->loading_vehicles.begin(); iter != st->loading_vehicles.end();) {
 
				Vehicle *v = *iter;
 
@@ -1704,8 +1694,7 @@ bool AfterLoadGame()
 
	}
 

	
 
	if (IsSavegameVersionBefore(SLV_74)) {
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			for (CargoID c = 0; c < NUM_CARGO; c++) {
 
				st->goods[c].last_speed = 0;
 
				if (st->goods[c].cargo.AvailableCount() != 0) SetBit(st->goods[c].status, GoodsEntry::GES_RATING);
 
@@ -2037,8 +2026,7 @@ bool AfterLoadGame()
 

	
 
		/* Station can get named based on an industry type, but the current ones
 
		 * are not, so mark them as if they are not named by an industry. */
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			st->indtype = IT_INVALID;
 
		}
 
	}
 
@@ -2174,8 +2162,7 @@ bool AfterLoadGame()
 
		/* There could be (deleted) stations with invalid owner, set owner to OWNER NONE.
 
		 * The conversion affects oil rigs and buoys too, but it doesn't matter as
 
		 * they have st->owner == OWNER_NONE already. */
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			if (!Company::IsValidID(st->owner)) st->owner = OWNER_NONE;
 
		}
 
	}
 
@@ -2213,8 +2200,7 @@ bool AfterLoadGame()
 
		 * However, some 0.7 versions might have cargo payment. For those we just
 
		 * add cargopayment for the vehicles that don't have it.
 
		 */
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			std::list<Vehicle *>::iterator iter;
 
			for (iter = st->loading_vehicles.begin(); iter != st->loading_vehicles.end(); ++iter) {
 
				/* There are always as many CargoPayments as Vehicles. We need to make the
 
@@ -2252,8 +2238,7 @@ bool AfterLoadGame()
 

	
 
	if (IsSavegameVersionBefore(SLV_124) && !IsSavegameVersionBefore(SLV_1)) {
 
		/* The train station tile area was added, but for really old (TTDPatch) it's already valid. */
 
		Waypoint *wp;
 
		FOR_ALL_WAYPOINTS(wp) {
 
		for (Waypoint *wp : Waypoint::Iterate()) {
 
			if (wp->facilities & FACIL_TRAIN) {
 
				wp->train_station.tile = wp->xy;
 
				wp->train_station.w = 1;
 
@@ -2443,8 +2428,7 @@ bool AfterLoadGame()
 
	}
 

	
 
	if (IsSavegameVersionBefore(SLV_140)) {
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			if (st->airport.tile != INVALID_TILE) {
 
				st->airport.w = st->airport.GetSpec()->size_x;
 
				st->airport.h = st->airport.GetSpec()->size_y;
 
@@ -2548,12 +2532,11 @@ bool AfterLoadGame()
 
		 * renumber those. First set all affected waypoints to the
 
		 * highest possible number to get them numbered in the
 
		 * order they have in the pool. */
 
		Waypoint *wp;
 
		FOR_ALL_WAYPOINTS(wp) {
 
		for (Waypoint *wp : Waypoint::Iterate()) {
 
			if (wp->name != nullptr) wp->town_cn = UINT16_MAX;
 
		}
 

	
 
		FOR_ALL_WAYPOINTS(wp) {
 
		for (Waypoint* wp : Waypoint::Iterate()) {
 
			if (wp->name != nullptr) MakeDefaultName(wp);
 
		}
 
	}
 
@@ -2806,8 +2789,7 @@ bool AfterLoadGame()
 
		}
 

	
 
		if (!IsSavegameVersionBefore(SLV_145)) {
 
			Station *st;
 
			FOR_ALL_STATIONS(st) {
 
			for (Station *st : Station::Iterate()) {
 
				if (!(st->facilities & FACIL_AIRPORT)) continue;
 
				assert(st->airport.psa != nullptr);
 

	
 
@@ -3142,8 +3124,7 @@ bool AfterLoadGame()
 
		_settings_game.station.serve_neutral_industries = true;
 

	
 
		/* Link oil rigs to their industry and back. */
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			if (IsTileType(st->xy, MP_STATION) && IsOilRig(st->xy)) {
 
				/* Industry tile is always adjacent during construction by TileDiffXY(0, 1) */
 
				st->industry = Industry::GetByTile(st->xy + TileDiffXY(0, 1));
 
@@ -3178,8 +3159,7 @@ bool AfterLoadGame()
 
		}
 

	
 
		/* Scan for docking tiles */
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			if (st->ship_station.tile != INVALID_TILE) UpdateStationDockingTiles(st);
 
		}
 
	}
 
@@ -3189,8 +3169,7 @@ bool AfterLoadGame()
 

	
 
	/* Station acceptance is some kind of cache */
 
	if (IsSavegameVersionBefore(SLV_127)) {
 
		Station *st;
 
		FOR_ALL_STATIONS(st) UpdateStationAcceptance(st, false);
 
		for (Station *st : Station::Iterate()) UpdateStationAcceptance(st, false);
 
	}
 

	
 
	/* Road stops is 'only' updating some caches */
src/saveload/cargopacket_sl.cpp
Show inline comments
 
@@ -42,8 +42,7 @@
 
		 * station where the goods came from is already removed, the source
 
		 * information is lost. In that case we set it to the position of this
 
		 * station */
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			for (CargoID c = 0; c < NUM_CARGO; c++) {
 
				GoodsEntry *ge = &st->goods[c];
 

	
 
@@ -72,8 +71,7 @@
 
		Vehicle *v;
 
		FOR_ALL_VEHICLES(v) v->cargo.InvalidateCache();
 

	
 
		Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (Station *st : Station::Iterate()) {
 
			for (CargoID c = 0; c < NUM_CARGO; c++) st->goods[c].cargo.InvalidateCache();
 
		}
 
	}
src/saveload/company_sl.cpp
Show inline comments
 
@@ -97,8 +97,7 @@ void AfterLoadCompanyStats()
 
	for (Company *c : Company::Iterate()) MemSetT(&c->infrastructure, 0);
 

	
 
	/* Collect airport count. */
 
	Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if ((st->facilities & FACIL_AIRPORT) && Company::IsValidID(st->owner)) {
 
			Company::Get(st->owner)->infrastructure.airport++;
 
		}
src/saveload/station_sl.cpp
Show inline comments
 
@@ -57,8 +57,7 @@ void MoveBuoysToWaypoints()
 
	}
 

	
 
	/* Now make the stations waypoints */
 
	Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (Station *st : Station::Iterate()) {
 
		if ((st->had_vehicle_of_type & HVOT_WAYPOINT) == 0) continue;
 

	
 
		StationID index    = st->index;
 
@@ -109,8 +108,7 @@ void MoveBuoysToWaypoints()
 
void AfterLoadStations()
 
{
 
	/* Update the speclists of all stations to point to the currently loaded custom stations. */
 
	BaseStation *st;
 
	FOR_ALL_BASE_STATIONS(st) {
 
	for (BaseStation *st : BaseStation::Iterate()) {
 
		for (uint i = 0; i < st->num_specs; i++) {
 
			if (st->speclist[i].grfid == 0) continue;
 

	
 
@@ -376,8 +374,7 @@ static void Ptrs_STNS()
 
	if (!IsSavegameVersionBefore(SLV_123)) return;
 

	
 
	uint num_cargo = IsSavegameVersionBefore(SLV_EXTEND_CARGOTYPES) ? 32 : NUM_CARGO;
 
	Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (Station *st : Station::Iterate()) {
 
		if (!IsSavegameVersionBefore(SLV_68)) {
 
			for (CargoID i = 0; i < num_cargo; i++) {
 
				GoodsEntry *ge = &st->goods[i];
 
@@ -514,9 +511,8 @@ static void RealSave_STNN(BaseStation *b
 

	
 
static void Save_STNN()
 
{
 
	BaseStation *st;
 
	/* Write the stations */
 
	FOR_ALL_BASE_STATIONS(st) {
 
	for (BaseStation *st : BaseStation::Iterate()) {
 
		SlSetArrayIndex(st->index);
 
		SlAutolength((AutolengthProc*)RealSave_STNN, st);
 
	}
 
@@ -588,8 +584,7 @@ static void Ptrs_STNN()
 
	if (IsSavegameVersionBefore(SLV_123)) return;
 

	
 
	uint num_cargo = IsSavegameVersionBefore(SLV_EXTEND_CARGOTYPES) ? 32 : NUM_CARGO;
 
	Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (Station *st : Station::Iterate()) {
 
		for (CargoID i = 0; i < num_cargo; i++) {
 
			GoodsEntry *ge = &st->goods[i];
 
			if (IsSavegameVersionBefore(SLV_183)) {
 
@@ -606,8 +601,7 @@ static void Ptrs_STNN()
 
		SlObject(st, _station_desc);
 
	}
 

	
 
	Waypoint *wp;
 
	FOR_ALL_WAYPOINTS(wp) {
 
	for (Waypoint *wp : Waypoint::Iterate()) {
 
		SlObject(wp, _waypoint_desc);
 
	}
 
}
src/saveload/vehicle_sl.cpp
Show inline comments
 
@@ -165,8 +165,7 @@ void ConvertOldMultiheadToNew()
 
void UpdateOldAircraft()
 
{
 
	/* set airport_flags to 0 for all airports just to be sure */
 
	Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (Station *st : Station::Iterate()) {
 
		st->airport.flags = 0; // reset airport
 
	}
 

	
src/script/api/script_depotlist.cpp
Show inline comments
 
@@ -26,8 +26,7 @@ ScriptDepotList::ScriptDepotList(ScriptT
 

	
 
		case ScriptTile::TRANSPORT_AIR: {
 
			/* Hangars are not seen as real depots by the depot code. */
 
			const Station *st;
 
			FOR_ALL_STATIONS(st) {
 
			for (const Station *st : Station::Iterate()) {
 
				if (st->owner == ScriptObject::GetCompany() || ScriptObject::GetCompany() == OWNER_DEITY) {
 
					for (uint i = 0; i < st->airport.GetNumHangars(); i++) {
 
						this->AddItem(st->airport.GetHangarTile(i));
src/script/api/script_stationlist.cpp
Show inline comments
 
@@ -18,8 +18,7 @@
 

	
 
ScriptStationList::ScriptStationList(ScriptStation::StationType station_type)
 
{
 
	Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (Station *st : Station::Iterate()) {
 
		if ((st->owner == ScriptObject::GetCompany() || ScriptObject::GetCompany() == OWNER_DEITY) && (st->facilities & station_type) != 0) this->AddItem(st->index);
 
	}
 
}
src/script/api/script_town.cpp
Show inline comments
 
@@ -346,8 +346,7 @@
 
	}
 

	
 
	int num = 0;
 
	const Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if (st->town == t && (st->facilities & FACIL_AIRPORT) && st->airport.type != AT_OILRIG) num++;
 
	}
 
	return max(0, 2 - num);
src/script/api/script_waypointlist.cpp
Show inline comments
 
@@ -17,8 +17,7 @@
 

	
 
ScriptWaypointList::ScriptWaypointList(ScriptWaypoint::WaypointType waypoint_type)
 
{
 
	const Waypoint *wp;
 
	FOR_ALL_WAYPOINTS(wp) {
 
	for (const Waypoint *wp : Waypoint::Iterate()) {
 
		if ((wp->facilities & waypoint_type) &&
 
				(wp->owner == ScriptObject::GetCompany() || ScriptObject::GetCompany() == OWNER_DEITY || wp->owner == OWNER_NONE)) this->AddItem(wp->index);
 
	}
src/settings.cpp
Show inline comments
 
@@ -1233,8 +1233,7 @@ static bool CheckFreeformEdges(int32 p1)
 
				return false;
 
			}
 
		}
 
		BaseStation *st;
 
		FOR_ALL_BASE_STATIONS(st) {
 
		for (const BaseStation *st : BaseStation::Iterate()) {
 
			/* Check if there is a non-deleted buoy on the northern border. */
 
			if (st->IsInUse() && (TileX(st->xy) == 0 || TileY(st->xy) == 0)) {
 
				ShowErrorMessage(STR_CONFIG_SETTING_EDGES_NOT_EMPTY, INVALID_STRING_ID, WL_ERROR);
src/station.cpp
Show inline comments
 
@@ -42,8 +42,7 @@ StationKdtree _station_kdtree(Kdtree_Sta
 
void RebuildStationKdtree()
 
{
 
	std::vector<StationID> stids;
 
	BaseStation *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		stids.push_back(st->index);
 
	}
 
	_station_kdtree.Build(stids.begin(), stids.end());
 
@@ -480,8 +479,7 @@ void Station::RecomputeCatchment()
 
 */
 
/* static */ void Station::RecomputeCatchmentForAll()
 
{
 
	Station *st;
 
	FOR_ALL_STATIONS(st) { st->RecomputeCatchment(); }
 
	for (Station *st : Station::Iterate()) { st->RecomputeCatchment(); }
 
}
 

	
 
/************************************************************************/
 
@@ -660,8 +658,7 @@ Money AirportMaintenanceCost(Owner owner
 
{
 
	Money total_cost = 0;
 

	
 
	const Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if (st->owner == owner && (st->facilities & FACIL_AIRPORT)) {
 
			total_cost += _price[PR_INFRASTRUCTURE_AIRPORT] * st->airport.GetSpec()->maintenance_cost;
 
		}
src/station_base.h
Show inline comments
 
@@ -525,8 +525,6 @@ public:
 
	void GetTileArea(TileArea *ta, StationType type) const override;
 
};
 

	
 
#define FOR_ALL_STATIONS(var) FOR_ALL_BASE_STATIONS_OF_TYPE(Station, var)
 

	
 
/** Iterator to iterate over all tiles belonging to an airport. */
 
class AirportTileIterator : public OrthogonalTileIterator {
 
private:
src/station_cmd.cpp
Show inline comments
 
@@ -251,8 +251,7 @@ static StringID GenerateStationName(Stat
 
	bool indtypes[NUM_INDUSTRYTYPES];
 
	memset(indtypes, 0, sizeof(indtypes));
 

	
 
	const Station *s;
 
	FOR_ALL_STATIONS(s) {
 
	for (const Station *s : Station::Iterate()) {
 
		if (s != st && s->town == t) {
 
			if (s->indtype != IT_INVALID) {
 
				indtypes[s->indtype] = true;
 
@@ -449,9 +448,7 @@ void Station::MoveSign(TileIndex new_xy)
 
/** Update the virtual coords needed to draw the station sign for all stations. */
 
void UpdateAllStationVirtCoords()
 
{
 
	BaseStation *st;
 

	
 
	FOR_ALL_BASE_STATIONS(st) {
 
	for (BaseStation *st : BaseStation::Iterate()) {
 
		st->UpdateVirtCoord();
 
	}
 
}
 
@@ -2212,11 +2209,10 @@ Town *AirportGetNearestTown(const Airpor
 
void UpdateAirportsNoise()
 
{
 
	Town *t;
 
	const Station *st;
 

	
 
	FOR_ALL_TOWNS(t) t->noise_reached = 0;
 

	
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if (st->airport.tile != INVALID_TILE && st->airport.type != AT_OILRIG) {
 
			const AirportSpec *as = st->airport.GetSpec();
 
			AirportTileIterator it(st);
 
@@ -2293,8 +2289,7 @@ CommandCost CmdBuildAirport(TileIndex ti
 
	} else {
 
		Town *t = ClosestTownFromTile(tile, UINT_MAX);
 
		uint num = 0;
 
		const Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (const Station *st : Station::Iterate()) {
 
			if (st->town == t && (st->facilities & FACIL_AIRPORT) && st->airport.type != AT_OILRIG) num++;
 
		}
 
		if (num >= 2) {
 
@@ -3824,8 +3819,7 @@ void OnTick_Station()
 
{
 
	if (_game_mode == GM_EDITOR) return;
 

	
 
	BaseStation *st;
 
	FOR_ALL_BASE_STATIONS(st) {
 
	for (BaseStation *st : BaseStation::Iterate()) {
 
		StationHandleSmallTick(st);
 

	
 
		/* Clean up the link graph about once a week. */
 
@@ -3848,9 +3842,7 @@ void OnTick_Station()
 
/** Monthly loop for stations. */
 
void StationMonthlyLoop()
 
{
 
	Station *st;
 

	
 
	FOR_ALL_STATIONS(st) {
 
	for (Station *st : Station::Iterate()) {
 
		for (CargoID i = 0; i < NUM_CARGO; i++) {
 
			GoodsEntry *ge = &st->goods[i];
 
			SB(ge->status, GoodsEntry::GES_LAST_MONTH, 1, GB(ge->status, GoodsEntry::GES_CURRENT_MONTH, 1));
 
@@ -3922,9 +3914,7 @@ static uint UpdateStationWaiting(Station
 

	
 
static bool IsUniqueStationName(const char *name)
 
{
 
	const Station *st;
 

	
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if (st->name != nullptr && strcmp(st->name, name) == 0) return false;
 
	}
 

	
src/station_gui.cpp
Show inline comments
 
@@ -229,8 +229,7 @@ protected:
 

	
 
		this->stations.clear();
 

	
 
		const Station *st;
 
		FOR_ALL_STATIONS(st) {
 
		for (const Station *st : Station::Iterate()) {
 
			if (st->owner == owner || (st->owner == OWNER_NONE && HasStationInUse(st->index, true, owner))) {
 
				if (this->facilities & st->facilities) { // only stations with selected facilities
 
					int num_waiting_cargo = 0;
 
@@ -2242,8 +2241,7 @@ static const T *FindStationsNearby(TileA
 
	}
 

	
 
	/* Look for deleted stations */
 
	const BaseStation *st;
 
	FOR_ALL_BASE_STATIONS(st) {
 
	for (const BaseStation *st : BaseStation::Iterate()) {
 
		if (T::IsExpected(st) && !st->IsInUse() && st->owner == _local_company) {
 
			/* Include only within station spread (yes, it is strictly less than) */
 
			if (max(DistanceMax(ta.tile, st->xy), DistanceMax(TILE_ADDXY(ta.tile, ta.w - 1, ta.h - 1), st->xy)) < _settings_game.station.station_spread) {
src/terraform_gui.cpp
Show inline comments
 
@@ -508,8 +508,7 @@ static void ResetLandscapeConfirmationCa
 
		_generating_world = false;
 

	
 
		/* Delete all station signs */
 
		BaseStation *st;
 
		FOR_ALL_BASE_STATIONS(st) {
 
		for (BaseStation *st : BaseStation::Iterate()) {
 
			/* There can be buoys, remove them */
 
			if (IsBuoyTile(st->xy)) DoCommand(st->xy, 0, 0, DC_EXEC | DC_BANKRUPT, CMD_LANDSCAPE_CLEAR);
 
			if (!st->IsInUse()) delete st;
src/town_cmd.cpp
Show inline comments
 
@@ -2872,8 +2872,7 @@ CommandCost CmdDeleteTown(TileIndex tile
 
	if (t == nullptr) return CMD_ERROR;
 

	
 
	/* Stations refer to towns. */
 
	const Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if (st->town == t) {
 
			/* Non-oil rig stations are always a problem. */
 
			if (!(st->facilities & FACIL_AIRPORT) || st->airport.type != AT_OILRIG) return CMD_ERROR;
 
@@ -3159,8 +3158,7 @@ static CommandCost TownActionBribe(Town 
 
			t->unwanted[_current_company] = 6;
 

	
 
			/* set all close by station ratings to 0 */
 
			Station *st;
 
			FOR_ALL_STATIONS(st) {
 
			for (Station *st : Station::Iterate()) {
 
				if (st->town == t && st->owner == _current_company) {
 
					for (CargoID i = 0; i < NUM_CARGO; i++) st->goods[i].rating = 0;
 
				}
src/vehicle.cpp
Show inline comments
 
@@ -947,8 +947,7 @@ void CallVehicleTicks()
 

	
 
	{
 
		PerformanceMeasurer framerate(PFE_GL_ECONOMY);
 
		Station *st;
 
		FOR_ALL_STATIONS(st) LoadUnloadStation(st);
 
		for (Station *st : Station::Iterate()) LoadUnloadStation(st);
 
	}
 
	PerformanceAccumulator::Reset(PFE_GL_TRAINS);
 
	PerformanceAccumulator::Reset(PFE_GL_ROADVEHS);
src/viewport.cpp
Show inline comments
 
@@ -2247,13 +2247,11 @@ void RebuildViewportKdtree()
 
	std::vector<ViewportSignKdtreeItem> items;
 
	items.reserve(BaseStation::GetNumItems() + Town::GetNumItems() + Sign::GetNumItems());
 

	
 
	const Station *st;
 
	FOR_ALL_STATIONS(st) {
 
	for (const Station *st : Station::Iterate()) {
 
		if (st->sign.kdtree_valid) items.push_back(ViewportSignKdtreeItem::MakeStation(st->index));
 
	}
 

	
 
	const Waypoint *wp;
 
	FOR_ALL_WAYPOINTS(wp) {
 
	for (const Waypoint *wp : Waypoint::Iterate()) {
 
		if (wp->sign.kdtree_valid) items.push_back(ViewportSignKdtreeItem::MakeWaypoint(wp->index));
 
	}
 

	
src/waypoint_base.h
Show inline comments
 
@@ -67,10 +67,4 @@ struct Waypoint FINAL : SpecializedStati
 
	}
 
};
 

	
 
/**
 
 * Iterate over all waypoints.
 
 * @param var The variable used for iteration.
 
 */
 
#define FOR_ALL_WAYPOINTS(var) FOR_ALL_BASE_STATIONS_OF_TYPE(Waypoint, var)
 

	
 
#endif /* WAYPOINT_BASE_H */
src/waypoint_cmd.cpp
Show inline comments
 
@@ -70,10 +70,10 @@ void Waypoint::MoveSign(TileIndex new_xy
 
 */
 
static Waypoint *FindDeletedWaypointCloseTo(TileIndex tile, StringID str, CompanyID cid)
 
{
 
	Waypoint *wp, *best = nullptr;
 
	Waypoint *best = nullptr;
 
	uint thres = 8;
 

	
 
	FOR_ALL_WAYPOINTS(wp) {
 
	for (Waypoint *wp : Waypoint::Iterate()) {
 
		if (!wp->IsInUse() && wp->string_id == str && wp->owner == cid) {
 
			uint cur_dist = DistanceManhattan(tile, wp->xy);
 

	
 
@@ -397,9 +397,7 @@ CommandCost RemoveBuoy(TileIndex tile, D
 
 */
 
static bool IsUniqueWaypointName(const char *name)
 
{
 
	const Waypoint *wp;
 

	
 
	FOR_ALL_WAYPOINTS(wp) {
 
	for (const Waypoint *wp : Waypoint::Iterate()) {
 
		if (wp->name != nullptr && strcmp(wp->name, name) == 0) return false;
 
	}
 

	
0 comments (0 inline, 0 general)