From 4c52f88ed1900f49f739160f6626b4004221698a Mon Sep 17 00:00:00 2001 From: KUDr Date: Wed, 7 Jun 2006 21:16:43 +0000 Subject: (svn r5162) - CodeChange: [YAPF] added flag "choice seen" into YAPF node for trains --- yapf/yapf_common.hpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'yapf/yapf_common.hpp') diff --git a/yapf/yapf_common.hpp b/yapf/yapf_common.hpp index 127c73210..e9e827323 100644 --- a/yapf/yapf_common.hpp +++ b/yapf/yapf_common.hpp @@ -30,10 +30,11 @@ public: /// Called when YAPF needs to place origin nodes into open list void PfSetStartupNodes() { + bool is_choice = (KillFirstBit2x64(m_orgTrackdirs) != 0); for (TrackdirBits tdb = m_orgTrackdirs; tdb != TRACKDIR_BIT_NONE; tdb = (TrackdirBits)KillFirstBit2x64(tdb)) { Trackdir td = (Trackdir)FindFirstBit2x64(tdb); Node& n1 = Yapf().CreateNewNode(); - n1.Set(NULL, m_orgTile, td); + n1.Set(NULL, m_orgTile, td, is_choice); Yapf().AddStartupNode(n1); } } @@ -76,12 +77,12 @@ public: { if (m_orgTile != INVALID_TILE && m_orgTd != INVALID_TRACKDIR) { Node& n1 = Yapf().CreateNewNode(); - n1.Set(NULL, m_orgTile, m_orgTd); + n1.Set(NULL, m_orgTile, m_orgTd, false); Yapf().AddStartupNode(n1); } if (m_revTile != INVALID_TILE && m_revTd != INVALID_TRACKDIR) { Node& n2 = Yapf().CreateNewNode(); - n2.Set(NULL, m_revTile, m_revTd); + n2.Set(NULL, m_revTile, m_revTd, false); n2.m_cost = m_reverse_penalty; Yapf().AddStartupNode(n2); } -- cgit v1.2.3-70-g09d2