(svn r16909) -Fix [FS#2996]: NewGRF stations would be triggering assertions all over the place when using the more advanced station types.

-Change: make (rail) waypoints sub classes of 'base stations', make buoys waypoints and unify code between them where possible.
This commit is contained in:
rubidium
2009-07-22 08:59:57 +00:00
parent 2646a99d29
commit 68ead6b84f
40 changed files with 689 additions and 693 deletions

View File

@@ -26,7 +26,7 @@ TrackBits GetReservedTrackbits(TileIndex t)
break;
case MP_STATION:
if (IsRailwayStation(t)) return GetStationReservationTrackBits(t);
if (IsRailwayStation(t) || IsRailWaypoint(t)) return GetStationReservationTrackBits(t);
break;
case MP_TUNNELBRIDGE:
@@ -99,7 +99,7 @@ bool TryReserveRailTrack(TileIndex tile, Track t)
break;
case MP_STATION:
if (IsRailwayStation(tile) && !HasStationReservation(tile)) {
if ((IsRailwayStation(tile) || IsRailWaypoint(tile)) && !HasStationReservation(tile)) {
SetRailwayStationReservation(tile, true);
MarkTileDirtyByTile(tile); // some GRFs need redraw after reserving track
return true;
@@ -150,7 +150,7 @@ bool TryReserveRailTrack(TileIndex tile, Track t)
break;
case MP_STATION:
if (IsRailwayStation(tile)) {
if (IsRailwayStation(tile) || IsRailWaypoint(tile)) {
SetRailwayStationReservation(tile, false);
MarkTileDirtyByTile(tile);
}