Change: Allow all tiles around docks to be docking tiles (#9578)
(cherry picked from commit 38a64eb2aa
)
This commit is contained in:

committed by
Jonathan G Rennison

parent
a84feb3444
commit
a4a7240511
@@ -2936,23 +2936,15 @@ void ClearDockingTilesCheckingNeighbours(TileIndex tile)
|
|||||||
/**
|
/**
|
||||||
* Check if a dock tile can be docked from the given direction.
|
* Check if a dock tile can be docked from the given direction.
|
||||||
* @param t Tile index of dock.
|
* @param t Tile index of dock.
|
||||||
* @param d DiagDirection adjacent to dock being tested.
|
* @param d DiagDirection adjacent to dock being tested. (unused)
|
||||||
* @return True iff the dock can be docked from the given direction.
|
* @return True iff the dock can be docked from the given direction.
|
||||||
*/
|
*/
|
||||||
bool IsValidDockingDirectionForDock(TileIndex t, DiagDirection d)
|
bool IsValidDockingDirectionForDock(TileIndex t, DiagDirection d)
|
||||||
{
|
{
|
||||||
assert(IsDockTile(t));
|
assert(IsDockTile(t));
|
||||||
|
|
||||||
/** Bitmap of valid directions for each dock tile part. */
|
|
||||||
static const uint8 _valid_docking_tile[] = {
|
|
||||||
0, 0, 0, 0, // No docking against the slope part.
|
|
||||||
1 << DIAGDIR_NE | 1 << DIAGDIR_SW, // Docking permitted at the end
|
|
||||||
1 << DIAGDIR_NW | 1 << DIAGDIR_SE, // of the flat piers.
|
|
||||||
};
|
|
||||||
|
|
||||||
StationGfx gfx = GetStationGfx(t);
|
StationGfx gfx = GetStationGfx(t);
|
||||||
assert(gfx < lengthof(_valid_docking_tile));
|
return gfx >= GFX_DOCK_BASE_WATER_PART;
|
||||||
return HasBit(_valid_docking_tile[gfx], d);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user