Codechange: Use EnumBitSet for TileFlags.

This commit is contained in:
Peter Nelson
2025-01-29 17:47:48 +00:00
committed by Peter Nelson
parent 3c2706f859
commit 05ac1dd888
3 changed files with 15 additions and 16 deletions
+4 -4
View File
@@ -1310,7 +1310,7 @@ static CommandCost CalculateRailStationCost(TileArea tile_area, DoCommandFlag fl
static StationSpec::TileFlags GetStationTileFlags(StationGfx gfx, const StationSpec *statspec)
{
/* Default stations do not draw pylons under roofs (gfx >= 4) */
if (statspec == nullptr || gfx >= statspec->tileflags.size()) return gfx < 4 ? StationSpec::TileFlags::Pylons : StationSpec::TileFlags::None;
if (statspec == nullptr || gfx >= statspec->tileflags.size()) return gfx < 4 ? StationSpec::TileFlag::Pylons : StationSpec::TileFlags{};
return statspec->tileflags[gfx];
}
@@ -1322,9 +1322,9 @@ static StationSpec::TileFlags GetStationTileFlags(StationGfx gfx, const StationS
void SetRailStationTileFlags(TileIndex tile, const StationSpec *statspec)
{
const auto flags = GetStationTileFlags(GetStationGfx(tile), statspec);
SetStationTileBlocked(tile, HasFlag(flags, StationSpec::TileFlags::Blocked));
SetStationTileHavePylons(tile, HasFlag(flags, StationSpec::TileFlags::Pylons));
SetStationTileHaveWires(tile, !HasFlag(flags, StationSpec::TileFlags::NoWires));
SetStationTileBlocked(tile, flags.Test(StationSpec::TileFlag::Blocked));
SetStationTileHavePylons(tile, flags.Test(StationSpec::TileFlag::Pylons));
SetStationTileHaveWires(tile, !flags.Test(StationSpec::TileFlag::NoWires));
}
/**