Codechange: Use enum class for RoadTileType.
This commit is contained in:
@@ -398,7 +398,7 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlags flags, RoadBits pie
|
||||
}
|
||||
|
||||
switch (GetRoadTileType(tile)) {
|
||||
case ROAD_TILE_NORMAL: {
|
||||
case RoadTileType::Normal: {
|
||||
Slope tileh = GetTileSlope(tile);
|
||||
|
||||
/* Steep slopes behave the same as slopes with one corner raised. */
|
||||
@@ -479,7 +479,7 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlags flags, RoadBits pie
|
||||
return cost;
|
||||
}
|
||||
|
||||
case ROAD_TILE_CROSSING: {
|
||||
case RoadTileType::Crossing: {
|
||||
if (pieces & ComplementRoadBits(GetCrossingRoadBits(tile))) {
|
||||
return CMD_ERROR;
|
||||
}
|
||||
@@ -514,7 +514,7 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlags flags, RoadBits pie
|
||||
}
|
||||
|
||||
default:
|
||||
case ROAD_TILE_DEPOT:
|
||||
case RoadTileType::Depot:
|
||||
return CMD_ERROR;
|
||||
}
|
||||
}
|
||||
@@ -632,7 +632,7 @@ CommandCost CmdBuildRoad(DoCommandFlags flags, TileIndex tile, RoadBits pieces,
|
||||
switch (GetTileType(tile)) {
|
||||
case MP_ROAD:
|
||||
switch (GetRoadTileType(tile)) {
|
||||
case ROAD_TILE_NORMAL: {
|
||||
case RoadTileType::Normal: {
|
||||
if (HasRoadWorks(tile)) return CommandCost(STR_ERROR_ROAD_WORKS_IN_PROGRESS);
|
||||
|
||||
other_bits = GetRoadBits(tile, OtherRoadTramType(rtt));
|
||||
@@ -686,7 +686,7 @@ CommandCost CmdBuildRoad(DoCommandFlags flags, TileIndex tile, RoadBits pieces,
|
||||
break;
|
||||
}
|
||||
|
||||
case ROAD_TILE_CROSSING:
|
||||
case RoadTileType::Crossing:
|
||||
if (RoadNoLevelCrossing(rt)) {
|
||||
return CommandCost(STR_ERROR_CROSSING_DISALLOWED_ROAD);
|
||||
}
|
||||
@@ -698,7 +698,7 @@ CommandCost CmdBuildRoad(DoCommandFlags flags, TileIndex tile, RoadBits pieces,
|
||||
if (HasTileRoadType(tile, rtt)) return CommandCost(STR_ERROR_ALREADY_BUILT);
|
||||
break;
|
||||
|
||||
case ROAD_TILE_DEPOT:
|
||||
case RoadTileType::Depot:
|
||||
if ((GetAnyRoadBits(tile, rtt) & pieces) == pieces) return CommandCost(STR_ERROR_ALREADY_BUILT);
|
||||
goto do_clear;
|
||||
|
||||
@@ -873,12 +873,12 @@ do_clear:;
|
||||
switch (GetTileType(tile)) {
|
||||
case MP_ROAD: {
|
||||
RoadTileType rttype = GetRoadTileType(tile);
|
||||
if (existing == ROAD_NONE || rttype == ROAD_TILE_CROSSING) {
|
||||
if (existing == ROAD_NONE || rttype == RoadTileType::Crossing) {
|
||||
SetRoadType(tile, rtt, rt);
|
||||
SetRoadOwner(tile, rtt, company);
|
||||
if (rtt == RTT_ROAD) SetTownIndex(tile, town_id);
|
||||
}
|
||||
if (rttype != ROAD_TILE_CROSSING) SetRoadBits(tile, existing | pieces, rtt);
|
||||
if (rttype != RoadTileType::Crossing) SetRoadBits(tile, existing | pieces, rtt);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1221,7 +1221,7 @@ static CommandCost RemoveRoadDepot(TileIndex tile, DoCommandFlags flags)
|
||||
static CommandCost ClearTile_Road(TileIndex tile, DoCommandFlags flags)
|
||||
{
|
||||
switch (GetRoadTileType(tile)) {
|
||||
case ROAD_TILE_NORMAL: {
|
||||
case RoadTileType::Normal: {
|
||||
RoadBits b = GetAllRoadBits(tile);
|
||||
|
||||
/* Clear the road if only one piece is on the tile OR we are not using the DoCommandFlag::Auto flag */
|
||||
@@ -1239,7 +1239,7 @@ static CommandCost ClearTile_Road(TileIndex tile, DoCommandFlags flags)
|
||||
return CommandCost(STR_ERROR_MUST_REMOVE_ROAD_FIRST);
|
||||
}
|
||||
|
||||
case ROAD_TILE_CROSSING: {
|
||||
case RoadTileType::Crossing: {
|
||||
CommandCost ret(EXPENSES_CONSTRUCTION);
|
||||
|
||||
if (flags.Test(DoCommandFlag::Auto)) return CommandCost(STR_ERROR_MUST_REMOVE_ROAD_FIRST);
|
||||
@@ -1261,7 +1261,7 @@ static CommandCost ClearTile_Road(TileIndex tile, DoCommandFlags flags)
|
||||
}
|
||||
|
||||
default:
|
||||
case ROAD_TILE_DEPOT:
|
||||
case RoadTileType::Depot:
|
||||
if (flags.Test(DoCommandFlag::Auto)) {
|
||||
return CommandCost(STR_ERROR_BUILDING_MUST_BE_DEMOLISHED);
|
||||
}
|
||||
@@ -1695,7 +1695,7 @@ static void DrawTile_Road(TileInfo *ti)
|
||||
{
|
||||
BridgePillarFlags blocked_pillars{};
|
||||
switch (GetRoadTileType(ti->tile)) {
|
||||
case ROAD_TILE_NORMAL:
|
||||
case RoadTileType::Normal:
|
||||
DrawRoadBits(ti);
|
||||
|
||||
if (IsBridgeAbove(ti->tile)) {
|
||||
@@ -1707,7 +1707,7 @@ static void DrawTile_Road(TileInfo *ti)
|
||||
}
|
||||
break;
|
||||
|
||||
case ROAD_TILE_CROSSING: {
|
||||
case RoadTileType::Crossing: {
|
||||
if (ti->tileh != SLOPE_FLAT) DrawFoundation(ti, FOUNDATION_LEVELED);
|
||||
|
||||
Axis axis = GetCrossingRailAxis(ti->tile);
|
||||
@@ -1817,7 +1817,7 @@ static void DrawTile_Road(TileInfo *ti)
|
||||
}
|
||||
|
||||
default:
|
||||
case ROAD_TILE_DEPOT: {
|
||||
case RoadTileType::Depot: {
|
||||
if (ti->tileh != SLOPE_FLAT) DrawFoundation(ti, FOUNDATION_LEVELED);
|
||||
|
||||
PaletteID palette = GetCompanyPalette(GetTileOwner(ti->tile));
|
||||
@@ -2121,7 +2121,7 @@ static TrackStatus GetTileTrackStatus_Road(TileIndex tile, TransportType mode, u
|
||||
RoadTramType rtt = (RoadTramType)sub_mode;
|
||||
if (!HasTileRoadType(tile, rtt)) break;
|
||||
switch (GetRoadTileType(tile)) {
|
||||
case ROAD_TILE_NORMAL: {
|
||||
case RoadTileType::Normal: {
|
||||
const uint drd_to_multiplier[DRD_END] = { 0x101, 0x100, 0x1, 0x0 };
|
||||
RoadBits bits = GetRoadBits(tile, rtt);
|
||||
|
||||
@@ -2133,7 +2133,7 @@ static TrackStatus GetTileTrackStatus_Road(TileIndex tile, TransportType mode, u
|
||||
break;
|
||||
}
|
||||
|
||||
case ROAD_TILE_CROSSING: {
|
||||
case RoadTileType::Crossing: {
|
||||
Axis axis = GetCrossingRoadAxis(tile);
|
||||
|
||||
if (side != INVALID_DIAGDIR && axis != DiagDirToAxis(side)) break;
|
||||
@@ -2155,7 +2155,7 @@ static TrackStatus GetTileTrackStatus_Road(TileIndex tile, TransportType mode, u
|
||||
}
|
||||
|
||||
default:
|
||||
case ROAD_TILE_DEPOT: {
|
||||
case RoadTileType::Depot: {
|
||||
DiagDirection dir = GetRoadDepotDirection(tile);
|
||||
|
||||
if (side != INVALID_DIAGDIR && side != dir) break;
|
||||
@@ -2205,7 +2205,7 @@ static void GetTileDesc_Road(TileIndex tile, TileDesc &td)
|
||||
}
|
||||
|
||||
switch (GetRoadTileType(tile)) {
|
||||
case ROAD_TILE_CROSSING: {
|
||||
case RoadTileType::Crossing: {
|
||||
td.str = STR_LAI_ROAD_DESCRIPTION_ROAD_RAIL_LEVEL_CROSSING;
|
||||
rail_owner = GetTileOwner(tile);
|
||||
|
||||
@@ -2216,7 +2216,7 @@ static void GetTileDesc_Road(TileIndex tile, TileDesc &td)
|
||||
break;
|
||||
}
|
||||
|
||||
case ROAD_TILE_DEPOT:
|
||||
case RoadTileType::Depot:
|
||||
td.str = STR_LAI_ROAD_DESCRIPTION_ROAD_VEHICLE_DEPOT;
|
||||
td.build_date = Depot::GetByTile(tile)->build_date;
|
||||
break;
|
||||
@@ -2260,7 +2260,7 @@ static const uint8_t _roadveh_enter_depot_dir[4] = {
|
||||
static VehicleEnterTileStates VehicleEnter_Road(Vehicle *v, TileIndex tile, int, int)
|
||||
{
|
||||
switch (GetRoadTileType(tile)) {
|
||||
case ROAD_TILE_DEPOT: {
|
||||
case RoadTileType::Depot: {
|
||||
if (v->type != VEH_ROAD) break;
|
||||
|
||||
RoadVehicle *rv = RoadVehicle::From(v);
|
||||
@@ -2342,15 +2342,15 @@ static CommandCost TerraformTile_Road(TileIndex tile, DoCommandFlags flags, int
|
||||
{
|
||||
if (_settings_game.construction.build_on_slopes && AutoslopeEnabled()) {
|
||||
switch (GetRoadTileType(tile)) {
|
||||
case ROAD_TILE_CROSSING:
|
||||
case RoadTileType::Crossing:
|
||||
if (!IsSteepSlope(tileh_new) && (GetTileMaxZ(tile) == z_new + GetSlopeMaxZ(tileh_new)) && HasBit(VALID_LEVEL_CROSSING_SLOPES, tileh_new)) return CommandCost(EXPENSES_CONSTRUCTION, _price[PR_BUILD_FOUNDATION]);
|
||||
break;
|
||||
|
||||
case ROAD_TILE_DEPOT:
|
||||
case RoadTileType::Depot:
|
||||
if (AutoslopeCheckForEntranceEdge(tile, z_new, tileh_new, GetRoadDepotDirection(tile))) return CommandCost(EXPENSES_CONSTRUCTION, _price[PR_BUILD_FOUNDATION]);
|
||||
break;
|
||||
|
||||
case ROAD_TILE_NORMAL: {
|
||||
case RoadTileType::Normal: {
|
||||
RoadBits bits = GetAllRoadBits(tile);
|
||||
RoadBits bits_copy = bits;
|
||||
/* Check if the slope-road_bits combination is valid at all, i.e. it is safe to call GetRoadFoundation(). */
|
||||
|
||||
@@ -59,9 +59,9 @@ RoadBits GetAnyRoadBits(Tile tile, RoadTramType rtt, bool straight_tunnel_bridge
|
||||
case MP_ROAD:
|
||||
switch (GetRoadTileType(tile)) {
|
||||
default:
|
||||
case ROAD_TILE_NORMAL: return GetRoadBits(tile, rtt);
|
||||
case ROAD_TILE_CROSSING: return GetCrossingRoadBits(tile);
|
||||
case ROAD_TILE_DEPOT: return DiagDirToRoadBits(GetRoadDepotDirection(tile));
|
||||
case RoadTileType::Normal: return GetRoadBits(tile, rtt);
|
||||
case RoadTileType::Crossing: return GetCrossingRoadBits(tile);
|
||||
case RoadTileType::Depot: return DiagDirToRoadBits(GetRoadDepotDirection(tile));
|
||||
}
|
||||
|
||||
case MP_STATION:
|
||||
|
||||
@@ -19,10 +19,10 @@
|
||||
|
||||
|
||||
/** The different types of road tiles. */
|
||||
enum RoadTileType : uint8_t {
|
||||
ROAD_TILE_NORMAL, ///< Normal road
|
||||
ROAD_TILE_CROSSING, ///< Level crossing
|
||||
ROAD_TILE_DEPOT, ///< Depot (one entrance)
|
||||
enum class RoadTileType : uint8_t {
|
||||
Normal = 0, ///< Normal road
|
||||
Crossing = 1, ///< Level crossing
|
||||
Depot = 2, ///< Depot (one entrance)
|
||||
};
|
||||
|
||||
bool MayHaveRoad(Tile t);
|
||||
@@ -36,7 +36,7 @@ bool MayHaveRoad(Tile t);
|
||||
debug_inline static RoadTileType GetRoadTileType(Tile t)
|
||||
{
|
||||
assert(IsTileType(t, MP_ROAD));
|
||||
return (RoadTileType)GB(t.m5(), 6, 2);
|
||||
return static_cast<RoadTileType>(GB(t.m5(), 6, 2));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -47,7 +47,7 @@ debug_inline static RoadTileType GetRoadTileType(Tile t)
|
||||
*/
|
||||
debug_inline static bool IsNormalRoad(Tile t)
|
||||
{
|
||||
return GetRoadTileType(t) == ROAD_TILE_NORMAL;
|
||||
return GetRoadTileType(t) == RoadTileType::Normal;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -68,7 +68,7 @@ debug_inline static bool IsNormalRoadTile(Tile t)
|
||||
*/
|
||||
inline bool IsLevelCrossing(Tile t)
|
||||
{
|
||||
return GetRoadTileType(t) == ROAD_TILE_CROSSING;
|
||||
return GetRoadTileType(t) == RoadTileType::Crossing;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -89,7 +89,7 @@ inline bool IsLevelCrossingTile(Tile t)
|
||||
*/
|
||||
debug_inline static bool IsRoadDepot(Tile t)
|
||||
{
|
||||
return GetRoadTileType(t) == ROAD_TILE_DEPOT;
|
||||
return GetRoadTileType(t) == RoadTileType::Depot;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -618,7 +618,7 @@ inline void MakeRoadNormal(Tile t, RoadBits bits, RoadType road_rt, RoadType tra
|
||||
SetTileOwner(t, road);
|
||||
t.m2() = town.base();
|
||||
t.m3() = (tram_rt != INVALID_ROADTYPE ? bits : 0);
|
||||
t.m5() = (road_rt != INVALID_ROADTYPE ? bits : 0) | ROAD_TILE_NORMAL << 6;
|
||||
t.m5() = (road_rt != INVALID_ROADTYPE ? bits : 0) | to_underlying(RoadTileType::Normal) << 6;
|
||||
SB(t.m6(), 2, 6, 0);
|
||||
t.m7() = 0;
|
||||
t.m8() = 0;
|
||||
@@ -645,7 +645,7 @@ inline void MakeRoadCrossing(Tile t, Owner road, Owner tram, Owner rail, Axis ro
|
||||
t.m2() = town.base();
|
||||
t.m3() = 0;
|
||||
t.m4() = INVALID_ROADTYPE;
|
||||
t.m5() = ROAD_TILE_CROSSING << 6 | roaddir;
|
||||
t.m5() = to_underlying(RoadTileType::Crossing) << 6 | roaddir;
|
||||
SB(t.m6(), 2, 6, 0);
|
||||
t.m7() = road.base();
|
||||
t.m8() = INVALID_ROADTYPE << 6 | rat;
|
||||
@@ -679,7 +679,7 @@ inline void MakeRoadDepot(Tile tile, Owner owner, DepotID depot_id, DiagDirectio
|
||||
tile.m2() = depot_id.base();
|
||||
tile.m3() = 0;
|
||||
tile.m4() = INVALID_ROADTYPE;
|
||||
tile.m5() = ROAD_TILE_DEPOT << 6 | dir;
|
||||
tile.m5() = to_underlying(RoadTileType::Depot) << 6 | dir;
|
||||
SB(tile.m6(), 2, 6, 0);
|
||||
tile.m7() = owner.base();
|
||||
tile.m8() = INVALID_ROADTYPE << 6;
|
||||
|
||||
@@ -164,7 +164,7 @@ static void ConvertTownOwner()
|
||||
for (auto tile : Map::Iterate()) {
|
||||
switch (GetTileType(tile)) {
|
||||
case MP_ROAD:
|
||||
if (GB(tile.m5(), 4, 2) == ROAD_TILE_CROSSING && HasBit(tile.m3(), 7)) {
|
||||
if (GB(tile.m5(), 4, 2) == to_underlying(RoadTileType::Crossing) && HasBit(tile.m3(), 7)) {
|
||||
tile.m3() = OWNER_TOWN.base();
|
||||
}
|
||||
[[fallthrough]];
|
||||
@@ -457,7 +457,7 @@ static void FixOwnerOfRailTrack(Tile t)
|
||||
SetTileType(t, MP_ROAD);
|
||||
SetTileOwner(t, road);
|
||||
t.m3() = (hasroad ? bits : 0);
|
||||
t.m5() = (hastram ? bits : 0) | ROAD_TILE_NORMAL << 6;
|
||||
t.m5() = (hastram ? bits : 0) | to_underlying(RoadTileType::Normal) << 6;
|
||||
SB(t.m6(), 2, 4, 0);
|
||||
SetRoadOwner(t, RTT_TRAM, tram);
|
||||
return;
|
||||
@@ -1007,8 +1007,8 @@ bool AfterLoadGame()
|
||||
|
||||
case MP_ROAD:
|
||||
t.m4() |= (t.m2() << 4);
|
||||
if (GB(t.m5(), 4, 2) == ROAD_TILE_DEPOT) break;
|
||||
if ((GB(t.m5(), 4, 2) == ROAD_TILE_CROSSING ? (Owner)t.m3() : GetTileOwner(t)) == OWNER_TOWN) {
|
||||
if (GB(t.m5(), 4, 2) == to_underlying(RoadTileType::Depot)) break;
|
||||
if ((GB(t.m5(), 4, 2) == to_underlying(RoadTileType::Crossing) ? (Owner)t.m3() : GetTileOwner(t)) == OWNER_TOWN) {
|
||||
SetTownIndex(t, CalcClosestTownFromTile(t)->index);
|
||||
} else {
|
||||
SetTownIndex(t, TownID::Begin());
|
||||
@@ -1090,15 +1090,15 @@ bool AfterLoadGame()
|
||||
SB(t.m5(), 6, 2, GB(t.m5(), 4, 2));
|
||||
switch (GetRoadTileType(t)) {
|
||||
default: SlErrorCorrupt("Invalid road tile type");
|
||||
case ROAD_TILE_NORMAL:
|
||||
case RoadTileType::Normal:
|
||||
SB(t.m4(), 0, 4, GB(t.m5(), 0, 4));
|
||||
SB(t.m4(), 4, 4, 0);
|
||||
SB(t.m6(), 2, 4, 0);
|
||||
break;
|
||||
case ROAD_TILE_CROSSING:
|
||||
case RoadTileType::Crossing:
|
||||
SB(t.m4(), 5, 2, GB(t.m5(), 2, 2));
|
||||
break;
|
||||
case ROAD_TILE_DEPOT: break;
|
||||
case RoadTileType::Depot: break;
|
||||
}
|
||||
SB(t.m7(), 6, 2, 1); // Set pre-NRT road type bits for conversion later.
|
||||
break;
|
||||
@@ -1131,7 +1131,7 @@ bool AfterLoadGame()
|
||||
SB(t.m7(), 5, 1, GB(t.m3(), 7, 1)); // snow/desert
|
||||
switch (GetRoadTileType(t)) {
|
||||
default: SlErrorCorrupt("Invalid road tile type");
|
||||
case ROAD_TILE_NORMAL:
|
||||
case RoadTileType::Normal:
|
||||
SB(t.m7(), 0, 4, GB(t.m3(), 0, 4)); // road works
|
||||
SB(t.m6(), 3, 3, GB(t.m3(), 4, 3)); // ground
|
||||
SB(t.m3(), 0, 4, GB(t.m4(), 4, 4)); // tram bits
|
||||
@@ -1139,7 +1139,7 @@ bool AfterLoadGame()
|
||||
SB(t.m5(), 0, 4, GB(t.m4(), 0, 4)); // road bits
|
||||
break;
|
||||
|
||||
case ROAD_TILE_CROSSING:
|
||||
case RoadTileType::Crossing:
|
||||
SB(t.m7(), 0, 5, GB(t.m4(), 0, 5)); // road owner
|
||||
SB(t.m6(), 3, 3, GB(t.m3(), 4, 3)); // ground
|
||||
SB(t.m3(), 4, 4, GB(t.m5(), 0, 4)); // tram owner
|
||||
@@ -1147,7 +1147,7 @@ bool AfterLoadGame()
|
||||
SB(t.m5(), 5, 1, GB(t.m4(), 5, 1)); // crossing state
|
||||
break;
|
||||
|
||||
case ROAD_TILE_DEPOT:
|
||||
case RoadTileType::Depot:
|
||||
break;
|
||||
}
|
||||
if (!IsRoadDepot(t) && !HasTownOwnedRoad(t)) {
|
||||
@@ -1241,7 +1241,7 @@ bool AfterLoadGame()
|
||||
SetTileType(t, MP_ROAD);
|
||||
t.m2() = town.base();
|
||||
t.m3() = 0;
|
||||
t.m5() = (axis == AXIS_X ? ROAD_Y : ROAD_X) | ROAD_TILE_NORMAL << 6;
|
||||
t.m5() = (axis == AXIS_X ? ROAD_Y : ROAD_X) | to_underlying(RoadTileType::Normal) << 6;
|
||||
SB(t.m6(), 2, 4, 0);
|
||||
t.m7() = 1 << 6;
|
||||
SetRoadOwner(t, RTT_TRAM, OWNER_NONE);
|
||||
|
||||
@@ -245,13 +245,13 @@ static bool FixTTOMapArray()
|
||||
|
||||
case MP_ROAD: // road (depot) or level crossing
|
||||
switch (GB(tile.m5(), 4, 4)) {
|
||||
case 0: // ROAD_TILE_NORMAL
|
||||
case 0: // RoadTileType::Normal
|
||||
if (tile.m2() == 4) tile.m2() = 5; // 'small trees' -> ROADSIDE_TREES
|
||||
break;
|
||||
case 1: // ROAD_TILE_CROSSING (there aren't monorail crossings in TTO)
|
||||
case 1: // RoadTileType::Crossing (there aren't monorail crossings in TTO)
|
||||
tile.m3() = tile.m1(); // set owner of road = owner of rail
|
||||
break;
|
||||
case 2: // ROAD_TILE_DEPOT
|
||||
case 2: // RoadTileType::Depot
|
||||
break;
|
||||
default:
|
||||
return false;
|
||||
|
||||
@@ -40,7 +40,7 @@ static OrderType GetOrderTypeByTile(TileIndex t)
|
||||
return OT_GOTO_STATION;
|
||||
|
||||
case MP_WATER: if (::IsShipDepot(t)) return OT_GOTO_DEPOT; break;
|
||||
case MP_ROAD: if (::GetRoadTileType(t) == ROAD_TILE_DEPOT) return OT_GOTO_DEPOT; break;
|
||||
case MP_ROAD: if (::GetRoadTileType(t) == RoadTileType::Depot) return OT_GOTO_DEPOT; break;
|
||||
case MP_RAILWAY:
|
||||
if (IsRailDepot(t)) return OT_GOTO_DEPOT;
|
||||
break;
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
{
|
||||
if (!::IsValidTile(tile)) return false;
|
||||
|
||||
return (::IsTileType(tile, MP_ROAD) && ::GetRoadTileType(tile) != ROAD_TILE_DEPOT) ||
|
||||
return (::IsTileType(tile, MP_ROAD) && ::GetRoadTileType(tile) != RoadTileType::Depot) ||
|
||||
IsDriveThroughRoadStationTile(tile);
|
||||
}
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
if (!::IsValidTile(tile)) return false;
|
||||
if (!IsRoadTypeAvailable(GetCurrentRoadType())) return false;
|
||||
|
||||
return ::IsTileType(tile, MP_ROAD) && ::GetRoadTileType(tile) == ROAD_TILE_DEPOT &&
|
||||
return ::IsTileType(tile, MP_ROAD) && ::GetRoadTileType(tile) == RoadTileType::Depot &&
|
||||
::GetPresentRoadTypes(tile).Test(::RoadType(GetCurrentRoadType()));
|
||||
}
|
||||
|
||||
@@ -465,7 +465,7 @@ static bool NeighbourHasReachableRoad(::RoadType rt, TileIndex start_tile, DiagD
|
||||
|
||||
switch (::GetTileType(neighbour_tile)) {
|
||||
case MP_ROAD:
|
||||
return (::GetRoadTileType(neighbour_tile) != ROAD_TILE_DEPOT);
|
||||
return (::GetRoadTileType(neighbour_tile) != RoadTileType::Depot);
|
||||
|
||||
case MP_STATION:
|
||||
if (::IsDriveThroughStopTile(neighbour_tile)) {
|
||||
@@ -623,7 +623,7 @@ static bool NeighbourHasReachableRoad(::RoadType rt, TileIndex start_tile, DiagD
|
||||
EnforceCompanyModeValid(false);
|
||||
EnforcePrecondition(false, ::IsValidTile(tile));
|
||||
EnforcePrecondition(false, IsTileType(tile, MP_ROAD))
|
||||
EnforcePrecondition(false, GetRoadTileType(tile) == ROAD_TILE_DEPOT);
|
||||
EnforcePrecondition(false, GetRoadTileType(tile) == RoadTileType::Depot);
|
||||
|
||||
return ScriptObject::Command<CMD_LANDSCAPE_CLEAR>::Do(tile);
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
/* Tram bits aren't considered buildable */
|
||||
if (::GetRoadTypeTram(tile) != INVALID_ROADTYPE) return false;
|
||||
/* Depots and crossings aren't considered buildable */
|
||||
if (::GetRoadTileType(tile) != ROAD_TILE_NORMAL) return false;
|
||||
if (::GetRoadTileType(tile) != RoadTileType::Normal) return false;
|
||||
if (!HasExactlyOneBit(::GetRoadBits(tile, RTT_ROAD))) return false;
|
||||
if (::IsRoadOwner(tile, RTT_ROAD, OWNER_TOWN)) return true;
|
||||
if (::IsRoadOwner(tile, RTT_ROAD, ScriptObject::GetCompany())) return true;
|
||||
|
||||
Reference in New Issue
Block a user