mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-08-19 12:39:11 +00:00
(svn r12179) -Codechange: use GetCrossingRailTrack() and GetCrossingRailAxis() to improve code readability
This commit is contained in:
@@ -2393,7 +2393,7 @@ bool AfterLoadGame()
|
||||
if (!GetPlayer(o)->is_active) {
|
||||
/* remove leftover rail piece from crossing (from very old savegames) */
|
||||
_current_player = o;
|
||||
DoCommand(t, 0, AxisToTrack(OtherAxis(GetCrossingRoadAxis(t))), DC_EXEC | DC_BANKRUPT, CMD_REMOVE_SINGLE_RAIL);
|
||||
DoCommand(t, 0, GetCrossingRailTrack(t), DC_EXEC | DC_BANKRUPT, CMD_REMOVE_SINGLE_RAIL);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -1313,7 +1313,7 @@ CommandCost CmdConvertRail(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
||||
|
||||
default: // MP_STATION, MP_ROAD
|
||||
if (flags & DC_EXEC) {
|
||||
Track track = (tt == MP_STATION) ? GetRailStationTrack(tile) : AxisToTrack(OtherAxis(GetCrossingRoadAxis(tile)));
|
||||
Track track = ((tt == MP_STATION) ? GetRailStationTrack(tile) : GetCrossingRailTrack(tile));
|
||||
YapfNotifyTrackLayoutChange(tile, track);
|
||||
}
|
||||
|
||||
|
@@ -1448,7 +1448,7 @@ static void ChangeTileOwner_Road(TileIndex tile, PlayerID old_player, PlayerID n
|
||||
if (IsLevelCrossing(tile)) {
|
||||
if (GetTileOwner(tile) == old_player) {
|
||||
if (new_player == PLAYER_SPECTATOR) {
|
||||
DoCommand(tile, 0, AxisToTrack(OtherAxis(GetCrossingRoadAxis(tile))), DC_EXEC | DC_BANKRUPT, CMD_REMOVE_SINGLE_RAIL);
|
||||
DoCommand(tile, 0, GetCrossingRailTrack(tile), DC_EXEC | DC_BANKRUPT, CMD_REMOVE_SINGLE_RAIL);
|
||||
} else {
|
||||
SetTileOwner(tile, new_player);
|
||||
}
|
||||
|
@@ -206,14 +206,25 @@ static inline Axis GetCrossingRoadAxis(TileIndex t)
|
||||
return (Axis)GB(_m[t].m4, 6, 1);
|
||||
}
|
||||
|
||||
static inline Axis GetCrossingRailAxis(TileIndex t)
|
||||
{
|
||||
assert(IsLevelCrossing(t));
|
||||
return OtherAxis((Axis)GetCrossingRoadAxis(t));
|
||||
}
|
||||
|
||||
static inline RoadBits GetCrossingRoadBits(TileIndex tile)
|
||||
{
|
||||
return GetCrossingRoadAxis(tile) == AXIS_X ? ROAD_X : ROAD_Y;
|
||||
}
|
||||
|
||||
static inline Track GetCrossingRailTrack(TileIndex tile)
|
||||
{
|
||||
return AxisToTrack(GetCrossingRailAxis(tile));
|
||||
}
|
||||
|
||||
static inline TrackBits GetCrossingRailBits(TileIndex tile)
|
||||
{
|
||||
return AxisToTrackBits(OtherAxis(GetCrossingRoadAxis(tile)));
|
||||
return AxisToTrackBits(GetCrossingRailAxis(tile));
|
||||
}
|
||||
|
||||
static inline bool IsCrossingBarred(TileIndex t)
|
||||
|
@@ -1667,7 +1667,7 @@ static Vehicle *TrainApproachingCrossing(TileIndex tile)
|
||||
{
|
||||
assert(IsLevelCrossingTile(tile));
|
||||
|
||||
DiagDirection dir = AxisToDiagDir(OtherAxis(GetCrossingRoadAxis(tile)));
|
||||
DiagDirection dir = AxisToDiagDir(GetCrossingRailAxis(tile));
|
||||
TileIndex tile_from = tile + TileOffsByDiagDir(dir);
|
||||
|
||||
Vehicle *v = (Vehicle *)VehicleFromPos(tile_from, &tile, &TrainApproachingCrossingEnum);
|
||||
|
Reference in New Issue
Block a user