summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortron <tron@openttd.org>2005-01-18 17:19:34 +0000
committertron <tron@openttd.org>2005-01-18 17:19:34 +0000
commit64b08311b9539e3a805365155c396cec854dd5f5 (patch)
tree66dc086c651c411715496af7a5a9ff3a41128ec1
parent389a4bf44dc6529f150586db01de7ed59809574e (diff)
downloadopenttd-64b08311b9539e3a805365155c396cec854dd5f5.tar.xz
(svn r1559) Use IsTileType() instead of bit shifting and comparisons
-rw-r--r--vehicle.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/vehicle.c b/vehicle.c
index dd4d0934c..b0a86e6a6 100644
--- a/vehicle.c
+++ b/vehicle.c
@@ -514,15 +514,16 @@ static bool CanFillVehicle_FullLoadAny(Vehicle *v)
bool CanFillVehicle(Vehicle *v)
{
- byte *t = &_map_type_and_height[v->tile];
-
- if (t[0] >> 4 == MP_STATION ||
- (v->type == VEH_Ship &&
- (t[TILE_XY(1,0)] >> 4 == MP_STATION ||
- t[TILE_XY(-1,0)] >> 4 == MP_STATION ||
- t[TILE_XY(0,1)] >> 4 == MP_STATION ||
- t[TILE_XY(0,-1)] >> 4 == MP_STATION ||
- t[TILE_XY(-2,0)] >> 4 == MP_STATION))) {
+ TileIndex tile = v->tile;
+
+ if (IsTileType(tile, MP_STATION) ||
+ (v->type == VEH_Ship && (
+ IsTileType(TILE_ADDXY(tile, 1, 0), MP_STATION) ||
+ IsTileType(TILE_ADDXY(tile, -1, 0), MP_STATION) ||
+ IsTileType(TILE_ADDXY(tile, 0, 1), MP_STATION) ||
+ IsTileType(TILE_ADDXY(tile, 0, -1), MP_STATION) ||
+ IsTileType(TILE_ADDXY(tile, -2, 0), MP_STATION)
+ ))) {
// If patch is active, use alternative CanFillVehicle-function
if (_patches.full_load_any)