OpenTTD
Functions
opf_ship.h File Reference

Original pathfinder for ships; very simple. More...

#include "../../direction_type.h"
#include "../../tile_type.h"
#include "../../track_type.h"
#include "../../vehicle_type.h"

Go to the source code of this file.

Functions

Track OPFShipChooseTrack (const Ship *v, TileIndex tile, DiagDirection enterdir, TrackBits tracks, bool &path_found)
 Finds the best path for given ship using OPF.

Detailed Description

Original pathfinder for ships; very simple.

Definition in file opf_ship.h.

Function Documentation

Track OPFShipChooseTrack ( const Ship v,
TileIndex  tile,
DiagDirection  enterdir,
TrackBits  tracks,
bool &  path_found 
)

Finds the best path for given ship using OPF.

Parameters
vthe ship that needs to find a path
tilethe tile to find the path from (should be next tile the ship is about to enter)
enterdirdiagonal direction which the ship will enter this new tile from
tracksavailable tracks on the new tile (to choose from)
path_found[out] Whether a path has been found (true) or has been guessed (false)
Returns
the best trackdir for next turn or INVALID_TRACK if the path could not be found

Finds the best path for given ship using OPF.

The tile given is the tile we are about to enter, enterdir is the direction in which we are entering the tile

Definition at line 190 of file opf_ship.cpp.

References DiagdirReachesTracks(), GetTileTrackStatus(), Ship::GetVehicleTrackdir(), INVALID_TRACK, IsValidDiagDirection(), ReverseDiagDir(), TILE_ADD, TileOffsByDiagDir(), TrackdirBitsToTrackBits(), TrackdirToTrackdirBits(), TrackStatusToTrackBits(), and TRANSPORT_WATER.

Referenced by ChooseShipTrack().