OpenTTD Source 20251005-master-ga617d009cc
|
The road pathfinding. More...
#include "../../stdafx.h"
#include "yapf.hpp"
#include "yapf_node_road.hpp"
#include "../../roadstop_base.h"
#include "../../safeguards.h"
Go to the source code of this file.
Data Structures | |
class | CYapfCostRoadT< Types > |
class | CYapfDestinationAnyDepotRoadT< Types > |
class | CYapfDestinationTileRoadT< Types > |
class | CYapfFollowRoadT< Types > |
struct | CYapfRoad_TypesT< Tpf_, Tdestination > |
struct | CYapfRoad |
struct | CYapfRoadAnyDepot |
Functions | |
Trackdir | YapfRoadVehicleChooseTrack (const RoadVehicle *v, TileIndex tile, DiagDirection enterdir, TrackdirBits trackdirs, bool &path_found, RoadVehPathCache &path_cache) |
Finds the best path for given road vehicle using YAPF. | |
FindDepotData | YapfRoadVehicleFindNearestDepot (const RoadVehicle *v, int max_distance) |
Used when user sends road vehicle to the nearest depot or if road vehicle needs servicing using YAPF. | |
The road pathfinding.
Definition in file yapf_road.cpp.
Trackdir YapfRoadVehicleChooseTrack | ( | const RoadVehicle * | v, |
TileIndex | tile, | ||
DiagDirection | enterdir, | ||
TrackdirBits | trackdirs, | ||
bool & | path_found, | ||
RoadVehPathCache & | path_cache | ||
) |
Finds the best path for given road vehicle using YAPF.
v | the RV that needs to find a path |
tile | the tile to find the path from (should be next tile the RV is about to enter) |
enterdir | diagonal direction which the RV will enter this new tile from |
trackdirs | available trackdirs on the new tile (to choose from) |
path_found | [out] Whether a path has been found (true) or has been guessed (false) |
Definition at line 508 of file yapf_road.cpp.
References FindFirstBit(), and INVALID_TRACKDIR.
Referenced by RoadFindPathToDest().
FindDepotData YapfRoadVehicleFindNearestDepot | ( | const RoadVehicle * | v, |
int | max_penalty | ||
) |
Used when user sends road vehicle to the nearest depot or if road vehicle needs servicing using YAPF.
v | vehicle that needs to go to some depot |
max_penalty | max distance (in pathfinder penalty) from the current vehicle position (used also as optimization - the pathfinder can stop path finding if max_penalty was reached and no depot was seen) |
Definition at line 515 of file yapf_road.cpp.
References GetTrackdirBitsForRoad(), RoadVehicle::GetVehicleTrackdir(), HasTrackdir(), RoadVehicle::roadtype, and Vehicle::tile.