Merge branch 'master' into jgrpp
# Conflicts: # src/core/bitmath_func.cpp # src/core/bitmath_func.hpp # src/core/geometry_type.hpp # src/game/game_text.hpp # src/graph_gui.cpp # src/pathfinder/npf/npf.cpp # src/script/api/script_text.cpp # src/spritecache.cpp # src/track_func.h
This commit is contained in:
@@ -1223,11 +1223,11 @@ bool NPFShipCheckReverse(const Ship *v, Trackdir *best_td)
|
||||
if (best_td != nullptr) {
|
||||
DiagDirection entry = ReverseDiagDir(VehicleExitDir(v->direction, v->state));
|
||||
TrackdirBits rtds = DiagdirReachesTrackdirs(entry) & GetTileTrackdirBits(v->tile, TRANSPORT_WATER, 0, entry);
|
||||
Trackdir best = (Trackdir)FindFirstBit2x64(rtds);
|
||||
Trackdir best = (Trackdir)FindFirstBit(rtds);
|
||||
rtds = KillFirstBit(rtds);
|
||||
if (rtds == TRACKDIR_BIT_NONE) return false; /* At most one choice. */
|
||||
for (; rtds != TRACKDIR_BIT_NONE; rtds = KillFirstBit(rtds)) {
|
||||
Trackdir td = (Trackdir)FindFirstBit2x64(rtds);
|
||||
Trackdir td = (Trackdir)FindFirstBit(rtds);
|
||||
ftd = NPFRouteToStationOrTileTwoWay(v->tile, best, false, v->tile, td, false, &fstd, &user);
|
||||
if (ftd.best_bird_dist == 0 && NPFGetFlag(&ftd.node, NPF_FLAG_REVERSE)) best = td;
|
||||
}
|
||||
|
@@ -193,7 +193,7 @@ public:
|
||||
{
|
||||
bool is_choice = (KillFirstBit(tf.m_new_td_bits) != TRACKDIR_BIT_NONE);
|
||||
for (TrackdirBits rtds = tf.m_new_td_bits; rtds != TRACKDIR_BIT_NONE; rtds = KillFirstBit(rtds)) {
|
||||
Trackdir td = (Trackdir)FindFirstBit2x64(rtds);
|
||||
Trackdir td = (Trackdir)FindFirstBit(rtds);
|
||||
Node &n = Yapf().CreateNewNode();
|
||||
n.Set(parent, tf.m_new_tile, td, is_choice);
|
||||
node_func(n);
|
||||
|
@@ -44,7 +44,7 @@ public:
|
||||
{
|
||||
bool is_choice = (KillFirstBit(m_orgTrackdirs) != TRACKDIR_BIT_NONE);
|
||||
for (TrackdirBits tdb = m_orgTrackdirs; tdb != TRACKDIR_BIT_NONE; tdb = KillFirstBit(tdb)) {
|
||||
Trackdir td = (Trackdir)FindFirstBit2x64(tdb);
|
||||
Trackdir td = (Trackdir)FindFirstBit(tdb);
|
||||
Node &n1 = Yapf().CreateNewNode();
|
||||
n1.Set(nullptr, m_orgTile, td, is_choice);
|
||||
Yapf().AddStartupNode(n1);
|
||||
|
@@ -754,7 +754,7 @@ no_entry_cost: // jump here at the beginning if the node has no parent (it is th
|
||||
}
|
||||
|
||||
/* Gather the next tile/trackdir/tile_type/rail_type. */
|
||||
TILE next(tf_local.m_new_tile, (Trackdir)FindFirstBit2x64(tf_local.m_new_td_bits));
|
||||
TILE next(tf_local.m_new_tile, (Trackdir)FindFirstBit(tf_local.m_new_td_bits));
|
||||
|
||||
if (TrackFollower::DoTrackMasking() && IsTileType(next.tile, MP_RAILWAY)) {
|
||||
if (HasSignalOnTrackdir(next.tile, next.td) && IsPbsSignal(GetSignalType(next.tile, TrackdirToTrack(next.td)))) {
|
||||
|
@@ -189,7 +189,7 @@ public:
|
||||
/* if there are more trackdirs available & reachable, we are at the end of segment */
|
||||
if (KillFirstBit(F.m_new_td_bits) != TRACKDIR_BIT_NONE) break;
|
||||
|
||||
Trackdir new_td = (Trackdir)FindFirstBit2x64(F.m_new_td_bits);
|
||||
Trackdir new_td = (Trackdir)FindFirstBit(F.m_new_td_bits);
|
||||
|
||||
/* stop if RV is on simple loop with no junctions */
|
||||
if (F.m_new_tile == n.m_key.m_tile && new_td == n.m_key.m_td) return false;
|
||||
@@ -638,7 +638,7 @@ Trackdir YapfRoadVehicleChooseTrack(const RoadVehicle *v, TileIndex tile, DiagDi
|
||||
}
|
||||
|
||||
Trackdir td_ret = pfnChooseRoadTrack(v, tile, enterdir, path_found, path_cache);
|
||||
return (td_ret != INVALID_TRACKDIR) ? td_ret : (Trackdir)FindFirstBit2x64(trackdirs);
|
||||
return (td_ret != INVALID_TRACKDIR) ? td_ret : (Trackdir)FindFirstBit(trackdirs);
|
||||
}
|
||||
|
||||
FindDepotData YapfRoadVehicleFindNearestDepot(const RoadVehicle *v, int max_distance)
|
||||
|
@@ -206,7 +206,7 @@ public:
|
||||
|
||||
/* use vehicle's current direction if that's possible, otherwise use first usable one. */
|
||||
Trackdir veh_dir = v->GetVehicleTrackdir();
|
||||
return (HasTrackdir(trackdirs, veh_dir)) ? veh_dir : (Trackdir)FindFirstBit2x64(trackdirs);
|
||||
return (HasTrackdir(trackdirs, veh_dir)) ? veh_dir : (Trackdir)FindFirstBit(trackdirs);
|
||||
}
|
||||
|
||||
/* Move back to the old tile/trackdir (where ship is coming from). */
|
||||
|
Reference in New Issue
Block a user