mirror of https://github.com/OpenTTD/OpenTTD
(svn r780) Always report a bus/lorry station as unpassable.
The current behavior just causes bugs and the pathfinder does the necessary magic to handle stations as destinations and enter them anyway. This fixes [ 1058809 ]release/0.4.5
parent
a3cb5499bf
commit
c5b0ecac4f
|
@ -2036,19 +2036,6 @@ static uint32 GetTileTrackStatus_Station(uint tile, TransportType mode) {
|
||||||
if (i < 8)
|
if (i < 8)
|
||||||
j = _tile_track_status_rail[i];
|
j = _tile_track_status_rail[i];
|
||||||
j += (j << 8);
|
j += (j << 8);
|
||||||
} else if (mode == TRANSPORT_ROAD) {
|
|
||||||
Station *st = DEREF_STATION(_map2[tile]);
|
|
||||||
if ( (IS_BYTE_INSIDE(i, 0x43, 0x47) && (_patches.roadveh_queue || st->truck_stop_status&3)) ||
|
|
||||||
(IS_BYTE_INSIDE(i, 0x47, 0x4B) && (_patches.roadveh_queue || st->bus_stop_status&3)) ) {
|
|
||||||
/* This is a bus/truck stop, and there is free space
|
|
||||||
* (or we allow queueing) */
|
|
||||||
|
|
||||||
/* We reverse the dir because it points out of the
|
|
||||||
* exit, and we want to get in. Maybe we should return
|
|
||||||
* both dirs here? */
|
|
||||||
byte dir = _reverse_dir[(i-0x43)&3];
|
|
||||||
j = 1 << _dir_to_straight_trackdir[dir];
|
|
||||||
}
|
|
||||||
} else if (mode == TRANSPORT_WATER) {
|
} else if (mode == TRANSPORT_WATER) {
|
||||||
// buoy is coded as a station, it is always on open water
|
// buoy is coded as a station, it is always on open water
|
||||||
// (0x3F, all tracks available)
|
// (0x3F, all tracks available)
|
||||||
|
|
Loading…
Reference in New Issue