diff options
author | rubidium <rubidium@openttd.org> | 2010-12-13 21:56:40 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2010-12-13 21:56:40 +0000 |
commit | 4045429df6e39fbd020a5feda379177b2d2bc267 (patch) | |
tree | 05b6e3ca49be9fc6cdc7465458a7fd8101719304 /src/ship_cmd.cpp | |
parent | 6bc002ad7414fb7d27e9ace04865d501cc3b08b9 (diff) | |
download | openttd-4045429df6e39fbd020a5feda379177b2d2bc267.tar.xz |
(svn r21511) -Feature: vehicle lost message for ships
Diffstat (limited to 'src/ship_cmd.cpp')
-rw-r--r-- | src/ship_cmd.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/ship_cmd.cpp b/src/ship_cmd.cpp index 718a5a6e7..7fffc3ec9 100644 --- a/src/ship_cmd.cpp +++ b/src/ship_cmd.cpp @@ -353,16 +353,21 @@ static void ShipArrivesAt(const Vehicle *v, Station *st) * reverse. The tile given is the tile we are about to enter, enterdir is the * direction in which we are entering the tile */ -static Track ChooseShipTrack(const Ship *v, TileIndex tile, DiagDirection enterdir, TrackBits tracks) +static Track ChooseShipTrack(Ship *v, TileIndex tile, DiagDirection enterdir, TrackBits tracks) { assert(IsValidDiagDirection(enterdir)); + bool path_found = true; + Track track; switch (_settings_game.pf.pathfinder_for_ships) { - case VPF_OPF: return OPFShipChooseTrack(v, tile, enterdir, tracks); - case VPF_NPF: return NPFShipChooseTrack(v, tile, enterdir, tracks); - case VPF_YAPF: return YapfShipChooseTrack(v, tile, enterdir, tracks); + case VPF_OPF: track = OPFShipChooseTrack(v, tile, enterdir, tracks, path_found); break; + case VPF_NPF: track = NPFShipChooseTrack(v, tile, enterdir, tracks, path_found); break; + case VPF_YAPF: track = YapfShipChooseTrack(v, tile, enterdir, tracks, path_found); break; default: NOT_REACHED(); } + + v->HandlePathfindingResult(path_found); + return track; } static const Direction _new_vehicle_direction_table[] = { |