mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r2109) -Fix: use FindVehicleOnTileZ(tile, 0) over FindVehicleBetween(tile, tile, 0)
This commit is contained in:
parent
d97ff67129
commit
95541fa52d
10
vehicle.c
10
vehicle.c
|
@ -117,6 +117,16 @@ bool EnsureNoVehicleZ(TileIndex tile, byte z)
|
||||||
return VehicleFromPos(tile, &ti, EnsureNoVehicleProcZ) == NULL;
|
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)
|
Vehicle *FindVehicleBetween(TileIndex from, TileIndex to, byte z)
|
||||||
{
|
{
|
||||||
int x1 = TileX(from);
|
int x1 = TileX(from);
|
||||||
|
|
|
@ -258,6 +258,7 @@ void DeleteVehicle(Vehicle *v);
|
||||||
void DeleteVehicleChain(Vehicle *v);
|
void DeleteVehicleChain(Vehicle *v);
|
||||||
void *VehicleFromPos(TileIndex tile, void *data, VehicleFromPosProc *proc);
|
void *VehicleFromPos(TileIndex tile, void *data, VehicleFromPosProc *proc);
|
||||||
void CallVehicleTicks(void);
|
void CallVehicleTicks(void);
|
||||||
|
Vehicle *FindVehicleOnTileZ(TileIndex tile, byte z);
|
||||||
|
|
||||||
void InitializeTrains(void);
|
void InitializeTrains(void);
|
||||||
|
|
||||||
|
|
|
@ -532,7 +532,7 @@ static void TileLoopWaterHelper(TileIndex tile, const TileIndexDiffC *offs)
|
||||||
|
|
||||||
_current_player = OWNER_WATER;
|
_current_player = OWNER_WATER;
|
||||||
{
|
{
|
||||||
Vehicle *v = FindVehicleBetween(target, target, 0);
|
Vehicle *v = FindVehicleOnTileZ(target, 0);
|
||||||
if (v != NULL) FloodVehicle(v);
|
if (v != NULL) FloodVehicle(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue