mirror of https://github.com/OpenTTD/OpenTTD.git
Codechange: Rename ship docking tile related functions.
This commit is contained in:
parent
5733145c59
commit
baf7cc858b
|
@ -624,7 +624,7 @@ bool IsShipDestinationTile(TileIndex tile, StationID station)
|
|||
for (DiagDirection d = DIAGDIR_BEGIN; d != DIAGDIR_END; d++) {
|
||||
TileIndex t = tile + TileOffsByDiagDir(d);
|
||||
if (!IsValidTile(t)) continue;
|
||||
if (IsDockTile(t) && GetStationIndex(t) == station && IsValidDockingDirectionForDock(t, d)) return true;
|
||||
if (IsDockTile(t) && GetStationIndex(t) == station && IsDockWaterPart(t)) return true;
|
||||
if (IsTileType(t, MP_INDUSTRY)) {
|
||||
const Industry *i = Industry::GetByTile(t);
|
||||
if (i->neutral_station != nullptr && i->neutral_station->index == station) return true;
|
||||
|
|
|
@ -2740,20 +2740,6 @@ void ClearDockingTilesCheckingNeighbours(TileIndex tile)
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a dock tile can be docked from the given direction.
|
||||
* @param t Tile index of dock.
|
||||
* @param d DiagDirection adjacent to dock being tested. (unused)
|
||||
* @return True iff the dock can be docked from the given direction.
|
||||
*/
|
||||
bool IsValidDockingDirectionForDock(TileIndex t, DiagDirection d)
|
||||
{
|
||||
assert(IsDockTile(t));
|
||||
|
||||
StationGfx gfx = GetStationGfx(t);
|
||||
return gfx >= GFX_DOCK_BASE_WATER_PART;
|
||||
}
|
||||
|
||||
/**
|
||||
* Find the part of a dock that is land-based
|
||||
* @param t Dock tile to find land part of
|
||||
|
|
|
@ -40,7 +40,6 @@ void DeleteOilRig(TileIndex t);
|
|||
void UpdateStationDockingTiles(Station *st);
|
||||
void RemoveDockingTile(TileIndex t);
|
||||
void ClearDockingTilesCheckingNeighbours(TileIndex tile);
|
||||
bool IsValidDockingDirectionForDock(TileIndex t, DiagDirection d);
|
||||
|
||||
/* Check if a rail station tile is traversable. */
|
||||
bool IsStationTileBlocked(TileIndex tile);
|
||||
|
|
|
@ -435,30 +435,13 @@ static inline DiagDirection GetDockDirection(Tile t)
|
|||
}
|
||||
|
||||
/**
|
||||
* Get the tileoffset from this tile a ship should target to get to this dock.
|
||||
* @param t Tile to query
|
||||
* @pre IsTileType(t, MP_STATION)
|
||||
* @pre IsBuoy(t) || IsOilRig(t) || IsDock(t)
|
||||
* @return The offset from this tile that should be used as destination for ships.
|
||||
* Check whether a dock tile is the tile on water.
|
||||
*/
|
||||
static inline TileIndexDiffC GetDockOffset(Tile t)
|
||||
static inline bool IsDockWaterPart(Tile t)
|
||||
{
|
||||
static const TileIndexDiffC buoy_offset = {0, 0};
|
||||
static const TileIndexDiffC oilrig_offset = {2, 0};
|
||||
static const TileIndexDiffC dock_offset[DIAGDIR_END] = {
|
||||
{-2, 0},
|
||||
{ 0, 2},
|
||||
{ 2, 0},
|
||||
{ 0, -2},
|
||||
};
|
||||
assert(IsTileType(t, MP_STATION));
|
||||
|
||||
if (IsBuoy(t)) return buoy_offset;
|
||||
if (IsOilRig(t)) return oilrig_offset;
|
||||
|
||||
assert(IsDock(t));
|
||||
|
||||
return dock_offset[GetDockDirection(t)];
|
||||
assert(IsDockTile(t));
|
||||
StationGfx gfx = GetStationGfx(t);
|
||||
return gfx >= GFX_DOCK_BASE_WATER_PART;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -186,7 +186,7 @@ void CheckForDockingTile(TileIndex t)
|
|||
TileIndex tile = t + TileOffsByDiagDir(d);
|
||||
if (!IsValidTile(tile)) continue;
|
||||
|
||||
if (IsDockTile(tile) && IsValidDockingDirectionForDock(tile, d)) {
|
||||
if (IsDockTile(tile) && IsDockWaterPart(tile)) {
|
||||
Station::GetByTile(tile)->docking_station.Add(t);
|
||||
SetDockingTile(t, true);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue