OpenTTD Source
20241121-master-g67a0fccfad
|
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_, Tnode_list, Tdestination > |
struct | CYapfRoad1 |
struct | CYapfRoad2 |
struct | CYapfRoadAnyDepot1 |
struct | CYapfRoadAnyDepot2 |
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. More... | |
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. More... | |
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 529 of file yapf_road.cpp.
References _settings_game, YAPFSettings::disable_node_optimization, FindFirstBit(), INVALID_TRACKDIR, GameSettings::pf, and PathfinderSettings::yapf.
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 538 of file yapf_road.cpp.
References GetTrackdirBitsForRoad(), RoadVehicle::GetVehicleTrackdir(), HasTrackdir(), and Vehicle::tile.