From 60f9bbd17e0a2974d4e2d4da573ca6d75e06d3a2 Mon Sep 17 00:00:00 2001 From: smatz Date: Sat, 15 Dec 2007 23:11:18 +0000 Subject: (svn r11642) -Codechange: VehicleFromPos does check for v->tile == tile, so remove useless checks --- src/vehicle.cpp | 30 +++++++----------------------- 1 file changed, 7 insertions(+), 23 deletions(-) (limited to 'src/vehicle.cpp') diff --git a/src/vehicle.cpp b/src/vehicle.cpp index 8074a08b4..7b9c8bc9c 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -120,10 +120,10 @@ StringID VehicleInTheWayErrMsg(const Vehicle* v) static void *EnsureNoVehicleProcZ(Vehicle *v, void *data) { - const TileInfo *ti = (const TileInfo*)data; + byte z = *(byte*)data; - if (v->tile != ti->tile || v->type == VEH_DISASTER || (v->type == VEH_AIRCRAFT && v->subtype == AIR_SHADOW)) return NULL; - if (v->z_pos > ti->z) return NULL; + if (v->type == VEH_DISASTER || (v->type == VEH_AIRCRAFT && v->subtype == AIR_SHADOW)) return NULL; + if (v->z_pos > z) return NULL; _error_message = VehicleInTheWayErrMsg(v); return v; @@ -131,12 +131,7 @@ static void *EnsureNoVehicleProcZ(Vehicle *v, void *data) Vehicle *FindVehicleOnTileZ(TileIndex tile, byte z) { - TileInfo ti; - - ti.tile = tile; - ti.z = z; - - return (Vehicle*)VehicleFromPos(tile, &ti, EnsureNoVehicleProcZ); + return (Vehicle*)VehicleFromPos(tile, &z, &EnsureNoVehicleProcZ); } bool EnsureNoVehicleOnGround(TileIndex tile) @@ -170,17 +165,10 @@ Vehicle *FindVehicleBetween(TileIndex from, TileIndex to, byte z, bool without_c } -/** Struct used for GetVehicleTunnelBridge() */ -struct TunnelBridgeInfo { - TileIndex tile; ///< tile -}; - /** Procedure called for every vehicle found in tunnel/bridge in the hash map */ static void *GetVehicleTunnelBridgeProc(Vehicle *v, void *data) { - TunnelBridgeInfo *tbi = (TunnelBridgeInfo*)data; - - if (v->tile != tbi->tile || (v->type != VEH_TRAIN && v->type != VEH_ROAD)) return NULL; + if (v->type != VEH_TRAIN && v->type != VEH_ROAD) return NULL; _error_message = VehicleInTheWayErrMsg(v); return v; @@ -194,14 +182,10 @@ static void *GetVehicleTunnelBridgeProc(Vehicle *v, void *data) */ Vehicle *GetVehicleTunnelBridge(TileIndex tile, TileIndex endtile) { - TunnelBridgeInfo tbi = {tile}; - - Vehicle *v = (Vehicle*)VehicleFromPos(tile, &tbi, &GetVehicleTunnelBridgeProc); + Vehicle *v = (Vehicle*)VehicleFromPos(tile, NULL, &GetVehicleTunnelBridgeProc); if (v != NULL) return v; - tbi.tile = endtile; - - return (Vehicle*)VehicleFromPos(endtile, &tbi, &GetVehicleTunnelBridgeProc); + return (Vehicle*)VehicleFromPos(endtile, NULL, &GetVehicleTunnelBridgeProc); } -- cgit v1.2.3-54-g00ecf