diff options
author | smatz <smatz@openttd.org> | 2008-02-04 14:08:02 +0000 |
---|---|---|
committer | smatz <smatz@openttd.org> | 2008-02-04 14:08:02 +0000 |
commit | b206e50f80607e837bed79fbc46a6aa298a8bfd8 (patch) | |
tree | 594576bd7482acff464246b21001427eed43043f /src/pathfind.cpp | |
parent | a528dc89c7a93fd6ee17498129a6148cd97964ed (diff) | |
download | openttd-b206e50f80607e837bed79fbc46a6aa298a8bfd8.tar.xz |
(svn r12055) -Fix: another way to fix AI trying to build road through depots
Diffstat (limited to 'src/pathfind.cpp')
-rw-r--r-- | src/pathfind.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/pathfind.cpp b/src/pathfind.cpp index 06374666b..9714a2bb0 100644 --- a/src/pathfind.cpp +++ b/src/pathfind.cpp @@ -287,7 +287,8 @@ static void TPFMode1(TrackPathFinder* tpf, TileIndex tile, DiagDirection directi tpf->the_dir = (Trackdir)((_otherdir_mask[direction] & (byte)(1 << i)) ? (i + 8) : i); RememberData rd = tpf->rd; - if (TPFSetTileBit(tpf, tile, tpf->the_dir) && + /* make sure we are not leaving from invalid side */ + if (TPFSetTileBit(tpf, tile, tpf->the_dir) && CanAccessTileInDir(tile, TrackdirToExitdir(tpf->the_dir), tpf->tracktype) && !tpf->enum_proc(tile, tpf->userdata, tpf->the_dir, tpf->rd.cur_length, &tpf->rd.pft_var6) ) { TPFMode1(tpf, tile, _tpf_new_direction[tpf->the_dir]); } |