Mercurial > hg > openttd
changeset 4291:3ae068a24ee8 draft
(svn r5924) Revert accidently commited files
author | tron <tron@openttd.org> |
---|---|
date | Wed, 16 Aug 2006 06:06:48 +0000 |
parents | d85c4af61985 |
children | 68438568fe64 |
files | tunnel_map.c tunnelbridge_cmd.c |
diffstat | 2 files changed, 23 insertions(+), 26 deletions(-) [+] |
line wrap: on
line diff
--- a/tunnel_map.c +++ b/tunnel_map.c @@ -4,7 +4,6 @@ #include "openttd.h" #include "tile.h" #include "tunnel_map.h" -#include "vehicle.h" TileIndex GetOtherTunnelEnd(TileIndex tile) { @@ -25,31 +24,6 @@ } -/** Retrieve the exit-tile of the vehicle from inside a tunnel - * Very similar to GetOtherTunnelEnd(), but we use the vehicle's - * direction for determining which end of the tunnel to find - * @param v the vehicle which is inside the tunnel and needs an exit - * @return the exit-tile of the tunnel based on the vehicle's direction */ -TileIndex GetVehicleOutOfTunnelTile(const Vehicle *v) -{ - TileIndex tile = TileVirtXY(v->x_pos, v->y_pos); - DiagDirection dir = DirToDiagDir(v->direction); - TileIndexDiff delta = TileOffsByDir(dir); - uint z = v->z_pos; - - dir = ReverseDiagDir(dir); - while ( - !IsTunnelTile(tile) || - GetTunnelDirection(tile) != dir || - GetTileZ(tile) != z - ) { - tile += delta; - } - - return tile; -} - - static bool IsTunnelInWayDir(TileIndex tile, uint z, DiagDirection dir) { TileIndexDiff delta = TileOffsByDir(dir);
--- a/tunnelbridge_cmd.c +++ b/tunnelbridge_cmd.c @@ -1425,6 +1425,29 @@ return 0; } +/** Retrieve the exit-tile of the vehicle from inside a tunnel + * Very similar to GetOtherTunnelEnd(), but we use the vehicle's + * direction for determining which end of the tunnel to find + * @param v the vehicle which is inside the tunnel and needs an exit + * @return the exit-tile of the tunnel based on the vehicle's direction */ +TileIndex GetVehicleOutOfTunnelTile(const Vehicle *v) +{ + TileIndex tile = v->tile; + DiagDirection dir = DirToDiagDir(v->direction); + TileIndexDiff delta = TileOffsByDir(dir); + byte z = v->z_pos; + + dir = ReverseDiagDir(dir); + while ( + !IsTunnelTile(tile) || + GetTunnelDirection(tile) != dir || + GetTileZ(tile) != z + ) { + tile += delta; + } + + return tile; +} const TileTypeProcs _tile_type_tunnelbridge_procs = { DrawTile_TunnelBridge, /* draw_tile_proc */