mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-09 15:41:15 +00:00
Codechange: Replace FOR_ALL_ROADTRAMTYPES with range-based for loops
This commit is contained in:
parent
983c7ade60
commit
2feb801e56
@ -32,7 +32,7 @@ enum RoadTramTypes : uint8 {
|
|||||||
};
|
};
|
||||||
DECLARE_ENUM_AS_BIT_SET(RoadTramTypes)
|
DECLARE_ENUM_AS_BIT_SET(RoadTramTypes)
|
||||||
|
|
||||||
#define FOR_ALL_ROADTRAMTYPES(x) for (RoadTramType x : { RTT_ROAD, RTT_TRAM })
|
static const RoadTramType _roadtramtypes[] = { RTT_ROAD, RTT_TRAM };
|
||||||
|
|
||||||
/** Roadtype flags. Starts with RO instead of R because R is used for rails */
|
/** Roadtype flags. Starts with RO instead of R because R is used for rails */
|
||||||
enum RoadTypeFlags {
|
enum RoadTypeFlags {
|
||||||
|
@ -1238,7 +1238,7 @@ static CommandCost ClearTile_Road(TileIndex tile, DoCommandFlag flags)
|
|||||||
/* Clear the road if only one piece is on the tile OR we are not using the DC_AUTO flag */
|
/* Clear the road if only one piece is on the tile OR we are not using the DC_AUTO flag */
|
||||||
if ((HasExactlyOneBit(b) && GetRoadBits(tile, RTT_TRAM) == ROAD_NONE) || !(flags & DC_AUTO)) {
|
if ((HasExactlyOneBit(b) && GetRoadBits(tile, RTT_TRAM) == ROAD_NONE) || !(flags & DC_AUTO)) {
|
||||||
CommandCost ret(EXPENSES_CONSTRUCTION);
|
CommandCost ret(EXPENSES_CONSTRUCTION);
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
if (!MayHaveRoad(tile) || GetRoadType(tile, rtt) == INVALID_ROADTYPE) continue;
|
if (!MayHaveRoad(tile) || GetRoadType(tile, rtt) == INVALID_ROADTYPE) continue;
|
||||||
|
|
||||||
CommandCost tmp_ret = RemoveRoad(tile, flags, GetRoadBits(tile, rtt), rtt, true);
|
CommandCost tmp_ret = RemoveRoad(tile, flags, GetRoadBits(tile, rtt), rtt, true);
|
||||||
@ -2203,7 +2203,7 @@ static void ChangeTileOwner_Road(TileIndex tile, Owner old_owner, Owner new_owne
|
|||||||
Company::Get(new_owner)->infrastructure.road[rt] += 2;
|
Company::Get(new_owner)->infrastructure.road[rt] += 2;
|
||||||
|
|
||||||
SetTileOwner(tile, new_owner);
|
SetTileOwner(tile, new_owner);
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
if (GetRoadOwner(tile, rtt) == old_owner) {
|
if (GetRoadOwner(tile, rtt) == old_owner) {
|
||||||
SetRoadOwner(tile, rtt, new_owner);
|
SetRoadOwner(tile, rtt, new_owner);
|
||||||
}
|
}
|
||||||
@ -2213,7 +2213,7 @@ static void ChangeTileOwner_Road(TileIndex tile, Owner old_owner, Owner new_owne
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
/* Update all roadtypes, no matter if they are present */
|
/* Update all roadtypes, no matter if they are present */
|
||||||
if (GetRoadOwner(tile, rtt) == old_owner) {
|
if (GetRoadOwner(tile, rtt) == old_owner) {
|
||||||
RoadType rt = GetRoadType(tile, rtt);
|
RoadType rt = GetRoadType(tile, rtt);
|
||||||
|
@ -1855,7 +1855,7 @@ bool AfterLoadGame()
|
|||||||
}
|
}
|
||||||
} else if (IsTileType(t, MP_ROAD)) {
|
} else if (IsTileType(t, MP_ROAD)) {
|
||||||
/* works for all RoadTileType */
|
/* works for all RoadTileType */
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
/* update even non-existing road types to update tile owner too */
|
/* update even non-existing road types to update tile owner too */
|
||||||
Owner o = GetRoadOwner(t, rtt);
|
Owner o = GetRoadOwner(t, rtt);
|
||||||
if (o < MAX_COMPANIES && !Company::IsValidID(o)) SetRoadOwner(t, rtt, OWNER_NONE);
|
if (o < MAX_COMPANIES && !Company::IsValidID(o)) SetRoadOwner(t, rtt, OWNER_NONE);
|
||||||
|
@ -128,7 +128,7 @@ void AfterLoadCompanyStats()
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Iterate all present road types as each can have a different owner. */
|
/* Iterate all present road types as each can have a different owner. */
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
RoadType rt = GetRoadType(tile, rtt);
|
RoadType rt = GetRoadType(tile, rtt);
|
||||||
if (rt == INVALID_ROADTYPE) continue;
|
if (rt == INVALID_ROADTYPE) continue;
|
||||||
c = Company::GetIfValid(IsRoadDepot(tile) ? GetTileOwner(tile) : GetRoadOwner(tile, rtt));
|
c = Company::GetIfValid(IsRoadDepot(tile) ? GetTileOwner(tile) : GetRoadOwner(tile, rtt));
|
||||||
@ -151,7 +151,7 @@ void AfterLoadCompanyStats()
|
|||||||
case STATION_BUS:
|
case STATION_BUS:
|
||||||
case STATION_TRUCK: {
|
case STATION_TRUCK: {
|
||||||
/* Iterate all present road types as each can have a different owner. */
|
/* Iterate all present road types as each can have a different owner. */
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
RoadType rt = GetRoadType(tile, rtt);
|
RoadType rt = GetRoadType(tile, rtt);
|
||||||
if (rt == INVALID_ROADTYPE) continue;
|
if (rt == INVALID_ROADTYPE) continue;
|
||||||
c = Company::GetIfValid(GetRoadOwner(tile, rtt));
|
c = Company::GetIfValid(GetRoadOwner(tile, rtt));
|
||||||
@ -209,7 +209,7 @@ void AfterLoadCompanyStats()
|
|||||||
|
|
||||||
case TRANSPORT_ROAD: {
|
case TRANSPORT_ROAD: {
|
||||||
/* Iterate all present road types as each can have a different owner. */
|
/* Iterate all present road types as each can have a different owner. */
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
RoadType rt = GetRoadType(tile, rtt);
|
RoadType rt = GetRoadType(tile, rtt);
|
||||||
if (rt == INVALID_ROADTYPE) continue;
|
if (rt == INVALID_ROADTYPE) continue;
|
||||||
c = Company::GetIfValid(GetRoadOwner(tile, rtt));
|
c = Company::GetIfValid(GetRoadOwner(tile, rtt));
|
||||||
|
@ -2029,7 +2029,7 @@ static CommandCost RemoveRoadStop(TileIndex tile, DoCommandFlag flags)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Update company infrastructure counts. */
|
/* Update company infrastructure counts. */
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
RoadType rt = GetRoadType(tile, rtt);
|
RoadType rt = GetRoadType(tile, rtt);
|
||||||
UpdateCompanyRoadInfrastructure(rt, GetRoadOwner(tile, rtt), -static_cast<int>(ROAD_STOP_TRACKBIT_FACTOR));
|
UpdateCompanyRoadInfrastructure(rt, GetRoadOwner(tile, rtt), -static_cast<int>(ROAD_STOP_TRACKBIT_FACTOR));
|
||||||
}
|
}
|
||||||
@ -2110,7 +2110,7 @@ CommandCost CmdRemoveRoadStop(TileIndex tile, DoCommandFlag flags, uint32 p1, ui
|
|||||||
RoadType road_type[] = { INVALID_ROADTYPE, INVALID_ROADTYPE };
|
RoadType road_type[] = { INVALID_ROADTYPE, INVALID_ROADTYPE };
|
||||||
Owner road_owner[] = { OWNER_NONE, OWNER_NONE };
|
Owner road_owner[] = { OWNER_NONE, OWNER_NONE };
|
||||||
if (IsDriveThroughStopTile(cur_tile)) {
|
if (IsDriveThroughStopTile(cur_tile)) {
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
road_type[rtt] = GetRoadType(cur_tile, rtt);
|
road_type[rtt] = GetRoadType(cur_tile, rtt);
|
||||||
if (road_type[rtt] == INVALID_ROADTYPE) continue;
|
if (road_type[rtt] == INVALID_ROADTYPE) continue;
|
||||||
road_owner[rtt] = GetRoadOwner(cur_tile, rtt);
|
road_owner[rtt] = GetRoadOwner(cur_tile, rtt);
|
||||||
@ -4178,7 +4178,7 @@ void DeleteOilRig(TileIndex tile)
|
|||||||
static void ChangeTileOwner_Station(TileIndex tile, Owner old_owner, Owner new_owner)
|
static void ChangeTileOwner_Station(TileIndex tile, Owner old_owner, Owner new_owner)
|
||||||
{
|
{
|
||||||
if (IsRoadStopTile(tile)) {
|
if (IsRoadStopTile(tile)) {
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
/* Update all roadtypes, no matter if they are present */
|
/* Update all roadtypes, no matter if they are present */
|
||||||
if (GetRoadOwner(tile, rtt) == old_owner) {
|
if (GetRoadOwner(tile, rtt) == old_owner) {
|
||||||
RoadType rt = GetRoadType(tile, rtt);
|
RoadType rt = GetRoadType(tile, rtt);
|
||||||
|
@ -1811,7 +1811,7 @@ static void ChangeTileOwner_TunnelBridge(TileIndex tile, Owner old_owner, Owner
|
|||||||
* don't want to update the infrastructure counts twice. */
|
* don't want to update the infrastructure counts twice. */
|
||||||
uint num_pieces = tile < other_end ? (GetTunnelBridgeLength(tile, other_end) + 2) * TUNNELBRIDGE_TRACKBIT_FACTOR : 0;
|
uint num_pieces = tile < other_end ? (GetTunnelBridgeLength(tile, other_end) + 2) * TUNNELBRIDGE_TRACKBIT_FACTOR : 0;
|
||||||
|
|
||||||
FOR_ALL_ROADTRAMTYPES(rtt) {
|
for (RoadTramType rtt : _roadtramtypes) {
|
||||||
/* Update all roadtypes, no matter if they are present */
|
/* Update all roadtypes, no matter if they are present */
|
||||||
if (GetRoadOwner(tile, rtt) == old_owner) {
|
if (GetRoadOwner(tile, rtt) == old_owner) {
|
||||||
RoadType rt = GetRoadType(tile, rtt);
|
RoadType rt = GetRoadType(tile, rtt);
|
||||||
|
Loading…
Reference in New Issue
Block a user