(svn r2109) -Fix: use FindVehicleOnTileZ(tile, 0) over FindVehicleBetween(tile, tile, 0)
--- a/vehicle.c Wed Mar 30 08:50:34 2005 +0000
+++ b/vehicle.c Wed Mar 30 09:25:20 2005 +0000
@@ -117,6 +117,16 @@
return VehicleFromPos(tile, &ti, EnsureNoVehicleProcZ) == NULL;
}
+Vehicle *FindVehicleOnTileZ(TileIndex tile, byte z)
+{
+ TileInfo ti;
+
+ ti.tile = tile;
+ ti.z = z;
+
+ return VehicleFromPos(tile, &ti, EnsureNoVehicleProcZ);
+}
+
Vehicle *FindVehicleBetween(TileIndex from, TileIndex to, byte z)
{
int x1 = TileX(from);
--- a/vehicle.h Wed Mar 30 08:50:34 2005 +0000
+++ b/vehicle.h Wed Mar 30 09:25:20 2005 +0000
@@ -258,6 +258,7 @@
void DeleteVehicleChain(Vehicle *v);
void *VehicleFromPos(TileIndex tile, void *data, VehicleFromPosProc *proc);
void CallVehicleTicks(void);
+Vehicle *FindVehicleOnTileZ(TileIndex tile, byte z);
void InitializeTrains(void);
--- a/water_cmd.c Wed Mar 30 08:50:34 2005 +0000
+++ b/water_cmd.c Wed Mar 30 09:25:20 2005 +0000
@@ -532,7 +532,7 @@
_current_player = OWNER_WATER;
{
- Vehicle *v = FindVehicleBetween(target, target, 0);
+ Vehicle *v = FindVehicleOnTileZ(target, 0);
if (v != NULL) FloodVehicle(v);
}