summaryrefslogtreecommitdiff
path: root/src/pbs.cpp
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2009-07-22 08:59:57 +0000
committerrubidium <rubidium@openttd.org>2009-07-22 08:59:57 +0000
commit68ead6b84f56ad3c93d05ad3e09b7fbb8173cf26 (patch)
treeee33bd19b96a138530a84e86e7ffd60c0700f9d9 /src/pbs.cpp
parent2646a99d29535a44c5998f080131cbca2e85bdcf (diff)
downloadopenttd-68ead6b84f56ad3c93d05ad3e09b7fbb8173cf26.tar.xz
(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.
Diffstat (limited to 'src/pbs.cpp')
-rw-r--r--src/pbs.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/pbs.cpp b/src/pbs.cpp
index 1309d01ee..5045fc0f8 100644
--- a/src/pbs.cpp
+++ b/src/pbs.cpp
@@ -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);
}