Changeset - r9954:e7ebdcbb29a2
[Not reviewed]
master
0 1 0
smatz - 16 years ago 2008-08-20 16:06:27
smatz@openttd.org
(svn r14109) -Fix (r14107): marking reserved tile dirty is needed for waypoints and stations even when patch option is disabled
1 file changed with 5 insertions and 1 deletions:
0 comments (0 inline, 0 general)
src/pbs.cpp
Show inline comments
 
@@ -83,6 +83,7 @@ bool TryReserveRailTrack(TileIndex tile,
 
	assert((GetTileTrackStatus(tile, TRANSPORT_RAIL, 0) & TrackToTrackBits(t)) != 0);
 

	
 
	if (_settings_client.gui.show_track_reservation) {
 
		/* show the reserved rail if needed */
 
		MarkTileDirtyByTile(tile);
 
	}
 

	
 
@@ -92,6 +93,7 @@ bool TryReserveRailTrack(TileIndex tile,
 
			if (IsRailWaypoint(tile) || IsRailDepot(tile)) {
 
				if (!GetDepotWaypointReservation(tile)) {
 
					SetDepotWaypointReservation(tile, true);
 
					MarkTileDirtyByTile(tile); // some GRFs change their appearance when tile is reserved
 
					return true;
 
				}
 
			}
 
@@ -101,7 +103,7 @@ bool TryReserveRailTrack(TileIndex tile,
 
			if (IsLevelCrossing(tile) && !GetCrossingReservation(tile)) {
 
				SetCrossingReservation(tile, true);
 
				BarCrossing(tile);
 
				MarkTileDirtyByTile(tile);
 
				MarkTileDirtyByTile(tile); // crossing barred, make tile dirty
 
				return true;
 
			}
 
			break;
 
@@ -109,6 +111,7 @@ bool TryReserveRailTrack(TileIndex tile,
 
		case MP_STATION:
 
			if (IsRailwayStation(tile) && !GetRailwayStationReservation(tile)) {
 
				SetRailwayStationReservation(tile, true);
 
				MarkTileDirtyByTile(tile); // some GRFs need redraw after reserving track
 
				return true;
 
			}
 
			break;
 
@@ -144,6 +147,7 @@ bool TryReserveRailTrack(TileIndex tile,
 
			if (IsRailWaypoint(tile) || IsRailDepot(tile)) {
 
				SetDepotWaypointReservation(tile, false);
 
				MarkTileDirtyByTile(tile);
 
				break;
 
			}
 
			if (IsPlainRailTile(tile)) UnreserveTrack(tile, t);
 
			break;
0 comments (0 inline, 0 general)