From 62f55edbe74be0a43f946d45458ff179e2645220 Mon Sep 17 00:00:00 2001 From: KUDr Date: Fri, 29 Dec 2006 18:40:02 +0000 Subject: (svn r7623) - Fix: [YAPF] trains/roadvehs trying to enter the bridge ramp from under bridge rail/road (introduced by bridge merge r7573) --- yapf/follow_track.hpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/yapf/follow_track.hpp b/yapf/follow_track.hpp index 7c37b50bb..7864dc5e5 100644 --- a/yapf/follow_track.hpp +++ b/yapf/follow_track.hpp @@ -178,11 +178,19 @@ protected: } } - // tunnel tiles can be entered only from proper direction - if (!IsWaterTT() && !m_is_tunnel && IsTunnelTile(m_new_tile)) { - DiagDirection tunnel_enterdir = GetTunnelDirection(m_new_tile); - if (tunnel_enterdir != m_exitdir) - return false; + // tunnel holes and bridge ramps can be entered only from proper direction + if (!IsWaterTT() && IsTileType(m_new_tile, MP_TUNNELBRIDGE)) { + if (IsTunnel(m_new_tile)) { + if (!m_is_tunnel) { + DiagDirection tunnel_enterdir = GetTunnelDirection(m_new_tile); + if (tunnel_enterdir != m_exitdir) return false; + } + } else if (IsBridge(m_new_tile)) { + if (!m_is_bridge) { + DiagDirection ramp_enderdir = GetBridgeRampDirection(m_new_tile); + if (ramp_enderdir != m_exitdir) return false; + } + } } // special handling for rail stations - get to the end of platform -- cgit v1.2.3-70-g09d2