mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-06 06:15:04 +00:00
(svn r6159) -Fix: FindClosestTrainDepot hardly ever found a depot with NPF off due to absence of distance-normalization (Rojer)
This commit is contained in:
parent
6540ae18fd
commit
45fa300208
@ -637,11 +637,6 @@ static const uint16 _is_upwards_slope[15] = {
|
||||
0, //14
|
||||
};
|
||||
|
||||
|
||||
#define DIAG_FACTOR 3
|
||||
#define STR_FACTOR 2
|
||||
|
||||
|
||||
static uint DistanceMoo(TileIndex t0, TileIndex t1)
|
||||
{
|
||||
const uint dx = abs(TileX(t0) - TileX(t1));
|
||||
|
@ -5,6 +5,11 @@
|
||||
|
||||
#include "direction.h"
|
||||
|
||||
enum {
|
||||
STR_FACTOR = 2,
|
||||
DIAG_FACTOR = 3
|
||||
};
|
||||
|
||||
//#define PF_BENCH // perform simple benchmarks on the train pathfinder (not
|
||||
//supported on all archs)
|
||||
|
||||
|
@ -1847,7 +1847,8 @@ static bool NtpCallbFindDepot(TileIndex tile, TrainFindDepotData *tfdd, int trac
|
||||
if (IsTileType(tile, MP_RAILWAY) &&
|
||||
IsTileOwner(tile, tfdd->owner) &&
|
||||
IsRailDepot(tile)) {
|
||||
tfdd->best_length = length;
|
||||
/* approximate number of tiles by dividing by DIAG_FACTOR */
|
||||
tfdd->best_length = length / DIAG_FACTOR;
|
||||
tfdd->tile = tile;
|
||||
return true;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user