mirror of https://github.com/OpenTTD/OpenTTD
Codechange: Replace FOR_ALL_DEPOTS with range-based for loops
parent
5fce5fa300
commit
fa9769f81a
|
@ -44,7 +44,4 @@ struct Depot : DepotPool::PoolItem<&_depot_pool> {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#define FOR_ALL_DEPOTS_FROM(var, start) FOR_ALL_ITEMS_FROM(Depot, depot_index, var, start)
|
|
||||||
#define FOR_ALL_DEPOTS(var) FOR_ALL_DEPOTS_FROM(var, 0)
|
|
||||||
|
|
||||||
#endif /* DEPOT_BASE_H */
|
#endif /* DEPOT_BASE_H */
|
||||||
|
|
|
@ -28,9 +28,7 @@
|
||||||
*/
|
*/
|
||||||
static bool IsUniqueDepotName(const char *name)
|
static bool IsUniqueDepotName(const char *name)
|
||||||
{
|
{
|
||||||
const Depot *d;
|
for (const Depot *d : Depot::Iterate()) {
|
||||||
|
|
||||||
FOR_ALL_DEPOTS(d) {
|
|
||||||
if (d->name != nullptr && strcmp(d->name, name) == 0) return false;
|
if (d->name != nullptr && strcmp(d->name, name) == 0) return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2330,8 +2330,7 @@ bool AfterLoadGame()
|
||||||
}
|
}
|
||||||
|
|
||||||
if (IsSavegameVersionBefore(SLV_128)) {
|
if (IsSavegameVersionBefore(SLV_128)) {
|
||||||
const Depot *d;
|
for (const Depot *d : Depot::Iterate()) {
|
||||||
FOR_ALL_DEPOTS(d) {
|
|
||||||
/* At some point, invalid depots were saved into the game (possibly those removed in the past?)
|
/* At some point, invalid depots were saved into the game (possibly those removed in the past?)
|
||||||
* Remove them here, so they don't cause issues further down the line */
|
* Remove them here, so they don't cause issues further down the line */
|
||||||
if (!IsDepotTile(d->xy)) {
|
if (!IsDepotTile(d->xy)) {
|
||||||
|
@ -2445,15 +2444,13 @@ bool AfterLoadGame()
|
||||||
/* We need to properly number/name the depots.
|
/* We need to properly number/name the depots.
|
||||||
* The first step is making sure none of the depots uses the
|
* The first step is making sure none of the depots uses the
|
||||||
* 'default' names, after that we can assign the names. */
|
* 'default' names, after that we can assign the names. */
|
||||||
Depot *d;
|
for (Depot *d : Depot::Iterate()) d->town_cn = UINT16_MAX;
|
||||||
FOR_ALL_DEPOTS(d) d->town_cn = UINT16_MAX;
|
|
||||||
|
|
||||||
FOR_ALL_DEPOTS(d) MakeDefaultName(d);
|
for (Depot* d : Depot::Iterate()) MakeDefaultName(d);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (IsSavegameVersionBefore(SLV_142)) {
|
if (IsSavegameVersionBefore(SLV_142)) {
|
||||||
Depot *d;
|
for (Depot *d : Depot::Iterate()) d->build_date = _date;
|
||||||
FOR_ALL_DEPOTS(d) d->build_date = _date;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* In old versions it was possible to remove an airport while a plane was
|
/* In old versions it was possible to remove an airport while a plane was
|
||||||
|
|
|
@ -30,9 +30,7 @@ static const SaveLoad _depot_desc[] = {
|
||||||
|
|
||||||
static void Save_DEPT()
|
static void Save_DEPT()
|
||||||
{
|
{
|
||||||
Depot *depot;
|
for (Depot *depot : Depot::Iterate()) {
|
||||||
|
|
||||||
FOR_ALL_DEPOTS(depot) {
|
|
||||||
SlSetArrayIndex(depot->index);
|
SlSetArrayIndex(depot->index);
|
||||||
SlObject(depot, _depot_desc);
|
SlObject(depot, _depot_desc);
|
||||||
}
|
}
|
||||||
|
@ -53,9 +51,7 @@ static void Load_DEPT()
|
||||||
|
|
||||||
static void Ptrs_DEPT()
|
static void Ptrs_DEPT()
|
||||||
{
|
{
|
||||||
Depot *depot;
|
for (Depot *depot : Depot::Iterate()) {
|
||||||
|
|
||||||
FOR_ALL_DEPOTS(depot) {
|
|
||||||
SlObject(depot, _depot_desc);
|
SlObject(depot, _depot_desc);
|
||||||
if (IsSavegameVersionBefore(SLV_141)) depot->town = Town::Get((size_t)depot->town);
|
if (IsSavegameVersionBefore(SLV_141)) depot->town = Town::Get((size_t)depot->town);
|
||||||
}
|
}
|
||||||
|
|
|
@ -109,8 +109,7 @@ static void FixTTDMapArray()
|
||||||
|
|
||||||
static void FixTTDDepots()
|
static void FixTTDDepots()
|
||||||
{
|
{
|
||||||
const Depot *d;
|
for (const Depot *d : Depot::Iterate(252)) {
|
||||||
FOR_ALL_DEPOTS_FROM(d, 252) {
|
|
||||||
if (!IsDepotTile(d->xy) || GetDepotIndex(d->xy) != d->index) {
|
if (!IsDepotTile(d->xy) || GetDepotIndex(d->xy) != d->index) {
|
||||||
/** Workaround for SVXConverter bug, depots 252-255 could be invalid */
|
/** Workaround for SVXConverter bug, depots 252-255 could be invalid */
|
||||||
delete d;
|
delete d;
|
||||||
|
|
|
@ -38,8 +38,7 @@ ScriptDepotList::ScriptDepotList(ScriptTile::TransportType transport_type)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Handle 'standard' depots. */
|
/* Handle 'standard' depots. */
|
||||||
const Depot *depot;
|
for (const Depot *depot : Depot::Iterate()) {
|
||||||
FOR_ALL_DEPOTS(depot) {
|
|
||||||
if ((::GetTileOwner(depot->xy) == ScriptObject::GetCompany() || ScriptObject::GetCompany() == OWNER_DEITY) && ::IsTileType(depot->xy, tile_type)) this->AddItem(depot->xy);
|
if ((::GetTileOwner(depot->xy) == ScriptObject::GetCompany() || ScriptObject::GetCompany() == OWNER_DEITY) && ::IsTileType(depot->xy, tile_type)) this->AddItem(depot->xy);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -144,7 +144,6 @@ void Ship::GetImage(Direction direction, EngineImageType image_type, VehicleSpri
|
||||||
static const Depot *FindClosestShipDepot(const Vehicle *v, uint max_distance)
|
static const Depot *FindClosestShipDepot(const Vehicle *v, uint max_distance)
|
||||||
{
|
{
|
||||||
/* Find the closest depot */
|
/* Find the closest depot */
|
||||||
const Depot *depot;
|
|
||||||
const Depot *best_depot = nullptr;
|
const Depot *best_depot = nullptr;
|
||||||
/* If we don't have a maximum distance, i.e. distance = 0,
|
/* If we don't have a maximum distance, i.e. distance = 0,
|
||||||
* we want to find any depot so the best distance of no
|
* we want to find any depot so the best distance of no
|
||||||
|
@ -153,7 +152,7 @@ static const Depot *FindClosestShipDepot(const Vehicle *v, uint max_distance)
|
||||||
* further away than max_distance can safely be ignored. */
|
* further away than max_distance can safely be ignored. */
|
||||||
uint best_dist = max_distance == 0 ? UINT_MAX : max_distance + 1;
|
uint best_dist = max_distance == 0 ? UINT_MAX : max_distance + 1;
|
||||||
|
|
||||||
FOR_ALL_DEPOTS(depot) {
|
for (const Depot *depot : Depot::Iterate()) {
|
||||||
TileIndex tile = depot->xy;
|
TileIndex tile = depot->xy;
|
||||||
if (IsShipDepotTile(tile) && IsTileOwner(tile, v->owner)) {
|
if (IsShipDepotTile(tile) && IsTileOwner(tile, v->owner)) {
|
||||||
uint dist = DistanceManhattan(tile, v->tile);
|
uint dist = DistanceManhattan(tile, v->tile);
|
||||||
|
|
|
@ -2883,8 +2883,7 @@ CommandCost CmdDeleteTown(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Depots refer to towns. */
|
/* Depots refer to towns. */
|
||||||
const Depot *d;
|
for (const Depot *d : Depot::Iterate()) {
|
||||||
FOR_ALL_DEPOTS(d) {
|
|
||||||
if (d->town == t) return CMD_ERROR;
|
if (d->town == t) return CMD_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue