From ca6ccf035f056e7bab1c25f31cf5f76cf251dd64 Mon Sep 17 00:00:00 2001 From: Darkvater Date: Wed, 3 May 2006 20:25:10 +0000 Subject: [PATCH] (svn r4718) - Backport from trunk (r4715): Fix: Don't allow PF to enter train depot from the back (signal updates) --- pathfind.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pathfind.c b/pathfind.c index b6e7847e27..17cb9185d9 100644 --- a/pathfind.c +++ b/pathfind.c @@ -9,6 +9,7 @@ #include "rail.h" #include "debug.h" #include "variables.h" +#include "depot.h" // remember which tiles we have already visited so we don't visit them again. static bool TPFSetTileBit(TrackPathFinder *tpf, TileIndex tile, int dir) @@ -293,6 +294,9 @@ static void TPFMode1(TrackPathFinder *tpf, TileIndex tile, uint direction) /* Check in case of rail if the owner is the same */ if (tpf->tracktype == TRANSPORT_RAIL) { + // don't enter train depot from the back + if (IsTileDepotType(tile, TRANSPORT_RAIL) && GB(_m[tile].m5, 0, 2) == direction) return; + if (IsTileType(tile_org, MP_RAILWAY) || IsTileType(tile_org, MP_STATION) || IsTileType(tile_org, MP_TUNNELBRIDGE)) if (IsTileType(tile, MP_RAILWAY) || IsTileType(tile, MP_STATION) || IsTileType(tile, MP_TUNNELBRIDGE)) /* Check if we are on a bridge (middle parts don't have an owner */