Changeset - r6548:dac21788db97
[Not reviewed]
master
0 1 0
KUDr - 17 years ago 2007-04-29 09:55:32
kudr@openttd.org
(svn r9745) -Codechange [YAPF}: if destination is a waypoint then YAPF gets destination tile from that waypoint->xy instead of from v->dest_tile
1 file changed with 21 insertions and 8 deletions:
0 comments (0 inline, 0 general)
src/yapf/yapf_destrail.hpp
Show inline comments
 
@@ -86,14 +86,27 @@ protected:
 
public:
 
	void SetDestination(Vehicle* v)
 
	{
 
		if (v->current_order.type == OT_GOTO_STATION) {
 
			m_destTile = CalcStationCenterTile(v->current_order.dest);
 
			m_dest_station_id = v->current_order.dest;
 
			m_destTrackdirs = INVALID_TRACKDIR_BIT;
 
		} else {
 
			m_destTile = v->dest_tile;
 
			m_dest_station_id = INVALID_STATION;
 
			m_destTrackdirs = (TrackdirBits)(GetTileTrackStatus(v->dest_tile, TRANSPORT_RAIL) & TRACKDIR_BIT_MASK);
 
		switch (v->current_order.type) {
 
			case OT_GOTO_STATION:
 
				m_destTile = CalcStationCenterTile(v->current_order.dest);
 
				m_dest_station_id = v->current_order.dest;
 
				m_destTrackdirs = INVALID_TRACKDIR_BIT;
 
				break;
 

	
 
			case OT_GOTO_WAYPOINT: {
 
				Waypoint *wp = GetWaypoint(v->current_order.dest);
 
				if (wp == NULL) break;
 
				m_destTile = wp->xy;
 
				m_dest_station_id = INVALID_STATION;
 
				m_destTrackdirs = TrackToTrackdirBits(AxisToTrack(GetWaypointAxis(wp->xy)));
 
				break;
 
			}
 

	
 
			default:
 
				m_destTile = v->dest_tile;
 
				m_dest_station_id = INVALID_STATION;
 
				m_destTrackdirs = (TrackdirBits)(GetTileTrackStatus(v->dest_tile, TRANSPORT_RAIL) & TRACKDIR_BIT_MASK);
 
				break;
 
		}
 
		CYapfDestinationRailBase::SetDestination(v);
 
	}
0 comments (0 inline, 0 general)